← Back to team overview

dolfin team mailing list archive

Re: pydolfin, seg. fault

 

On Fri, Sep 15, 2006 at 09:10:43AM +0200, Ola Skavhaug wrote:
> Wrong err.log file. Sorry :)
> 
> Ola
> 
> Ola Skavhaug skrev den 15/09-2006 f?lgende:
> > Hi,
> > 
> > I'm trying the elasticitysolver.py example in Dolfin-0.6.2-1, and the script
> > seg. faults on me. I have attached a modified version of the script that shows
> > where things go wrong.
> > 
> > Some software specs:
> > 
> > Python: 2.4.3
> > Dolfin: 0.6.2-1
> > FFC:    0.3.3
> > FIAT:   0.2.5
> > SWIG:   1.3.29
> > 
> > What is wrong?
> > 
> > Ola
> 

...

> /home/skavhaug/extsoft/include/dolfin/Function.h:39: Warning(401): Nothing
> known about base class 'Variable'. Ignored.
> /home/skavhaug/extsoft/include/dolfin/Function.h:39: Warning(401): Nothing
> known about base class 'TimeDependent'. Ignored.
> Done importing Elasticity form
> Done constructing ElasticityBilinearForm
> Segmentation fault
> 

Hm, I can't really see what goes wrong. Does the PyDOLFIN poisson demo
work (poissonsolver.py)?

The elasticity demo doesn't run at all with DOLFIN 0.6.2-1 and uBlas
for me (some vector operators were still missing for uBlas). But
changeset 67e5b2ed3811 works correctly.

I suspect it's just some synchronization issue between the DOLFIN
library and the PyDOLFIN module. The build dependency is only partial,
so sometimes you need to force a rebuild of PyDOLFIN to make it up to
date. You can do "touch src/pydolfin/dolfin.i" or "cd src/pydolfin;
make maintainer-clean-generic" to force a rebuild. We should make the
dependency complete, but I haven't found a good way to achieve this
yet.

To debug the C++ part of PyDOLFIN you can just run python through the
debugger:

gdb python
run elasticitysolver.py

then "bt" for a back trace for example.

  Johan




Follow ups

References