dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #05972
Re: src/demo/fem/python/demo.py ffc jit error
Quoting Anders Logg <logg@xxxxxxxxx>:
> On Tue, Jan 15, 2008 at 06:36:07PM +0100, Ola Skavhaug wrote:
> > Anders Logg skrev den 15/01-2008 følgende:
> > > On Tue, Jan 15, 2008 at 05:47:11PM +0100, Kent-Andre Mardal wrote:
> > > >
> > > > tir, 15.01.2008 kl. 15.16 +0100, skrev Ola Skavhaug:
> > > > > I have all the most recent versions of the FEniCS modules. However
> (or perhaps
> > > > > therefore), I get the following error when running the python demo
> under
> > > > > demo/fem:
> > > > >
> > > > > skavhaug@blakken:~/devel/dolfin/src/demo/fem/python$ python demo.py
> > > > > Found form in cache, reusing previously built module (checksum
> > > > > 5a01ea61f6a36a6c4cf3d35fe9d4f1e9)
> > > > > Traceback (most recent call last):
> > > > > File "demo.py", line 36, in <module>
> > > > > A, dofmapset_a = assemble(stiff, mesh)
> > > > > File
> > > > >
> "/home/skavhaug/extsoft/lib/python2.5/site-packages/dolfin/assemble.py",
> line
> > > > > 24, in assemble
> > > > > (compiled_form, module, form_data) = jit(form)
> > > > > File "/usr/lib/python2.5/site-packages/ffc/jit/jit.py", line 80, in
> jit
> > > > > exec("import %s as compiled_module" % (md5sum + "_module"))
> > > > > File "<string>", line 1, in <module>
> > > > > ImportError: No module named
> form_5a01ea61f6a36a6c4cf3d35fe9d4f1e9_module
> > > > >
> > > > >
> > > > > By some reason ffc thinks I have this form cached, but can't import
> it. Is
> > > > > there a directory I should add to PYTHONPATH? The most elegant
> solution would
> > > > > perhaps be that ffc adds the correct path to sys.path in Python?
> > > > >
> > > > > Ola
> > > >
> > > > Try to remove the cache,
> > > > rm -r /tmp/instant $HOME/.instant
> > > >
> > > > I am not sure where ffc has its cache.
> > > >
> > > > Kent
> > >
> > > Just run
> > >
> > > ffc-clean
> > >
> > > If you press ctrl-c when running the JIT compiler, it will break the
> > > next time since it will think it has generated the code before (which
> > > it didn't since you pressed ctrl-c). This needs to be fixed but I
> > > haven't gotten to it yet.
> >
> > Thanks, it fixed the problem.
> >
> > However, the src/demo/fem/python/demo.py script looks to be out of sync
> with
> > PyDOLFIN:
> >
> > Line 37:
> > A, dofmapset_a = assemble(stiff, mesh)
> > should be
> > A = assemble(stiff, mesh)
> >
> > Similar on line 38.
> >
> > Line 55 / 56:
> > Traceback (most recent call last):
> > File "demo.py", line 55, in <module>
> > A0.set(A0_array, 4, position, 4, position)
> > File
> "/home/skavhaug/extsoft/lib/python2.5/site-packages/dolfin/dolfin.py",
> > line 2418, in set
> > return _dolfin.Matrix_set(*args)
> > TypeError: Matrix_set() takes exactly 4 arguments (6 given)
> >
> > Should be:
> > A0.set(A0_array, position, position)
> > M0.set(M0_array, position, position)
> >
> > At last, line 51 should read (for cross platform reasons):
> > position = numpy.array([0, 1, 2, 3], 'uint32')
> >
> >
> > Ola
>
> Thanks, works fine now (but with 'I' instead of 'uint32').
Most of the code in src/demo/fem/cpp/main.cpp
has been commented out.
The C++ and Python demos are also not showing the same thing, C++ show the use
of StiffnessMatrix and MassMatrix from MatrixFactory whereas the Python demo is
just a simple assembly. (I got some errors when trying to generate the SWIG
interface for MatrixFactory)
Kristian
> Kristian made a good job before Christmas porting quite a few of the
> C++ demos to Python. There are still a few demos left to be fixed:
>
> find src/demo -name '*.py' | xargs grep WORKING
>
> --
> Anders
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev
>
Follow ups
References