← Back to team overview

dolfin team mailing list archive

Re: pydolfin

 

Evan Lezar skrev den 21/08-2008 følgende:
> Thanks for the speedy replies from all of you.
> 
> Firstly platform information
> 
> I am running ubuntu hardy, gcc version 4.2.3, swig 1.3.33, python 2.5 with
> release versions of numpy and scipy.  I am building dolfin directly from
> source with mpi, but have not enabled petsc or any of the other optional
> packages.
> 
> What other information do you require?
> 
> In terms of my specific problem, see the following code snippet:
> 
> from dolfin import *
> import numpy as N
> 
> mesh = UnitSquare(4,4)
> element = FiniteElement("Nedelec", "triangle", 0)
> 
> ### Code to assemble system matrices and solve an eigenvalue problem
> 
> # h_e is an array of coefficients associated with the degrees of freedom in
> the system obtained from the eigenvectors V
> h_e = V[:,sorted_index[first_index]]
> 
> # setup a function to evaluate - the solution of the magnetic field
> field = Function(element, self.mesh, h_e)
> 
> # arbitrary point to evaluate the field
> points = N.array((0.5,0.25))
> # array to store the field value at a point
> H = N.array((0.0,0.0))
> 
> print "pre_eval"
> 
> #evaluate the function
> field.eval(H, points)
> 
> # Ouput the field at the point
> print "H",
> print H
> 
> 
> When I run this code, I get the following output:
> 
> pre_eval
> [labby:25160] *** Process received signal ***
> [labby:25160] Signal: Segmentation fault (11)
> [labby:25160] Signal code: Address not mapped (1)
> [labby:25160] Failing at address: 0xde8f58ec
> [labby:25160] [ 0] [0xb7f81440]
> [labby:25160] [ 1] /usr/bin/python(PyEval_EvalCodeEx+0x6e7) [0x80cb0d7]
> [labby:25160] [ 2] /usr/bin/python(PyEval_EvalFrameEx+0x565e) [0x80c92de]
> [labby:25160] [ 3] /usr/bin/python(PyEval_EvalCodeEx+0x6e7) [0x80cb0d7]
> [labby:25160] [ 4] /usr/bin/python(PyEval_EvalFrameEx+0x565e) [0x80c92de]
> [labby:25160] [ 5] /usr/bin/python(PyEval_EvalCodeEx+0x6e7) [0x80cb0d7]
> [labby:25160] [ 6] /usr/bin/python(PyEval_EvalCode+0x57) [0x80cb227]
> [labby:25160] [ 7] /usr/bin/python(PyRun_FileExFlags+0xf8) [0x80ea6d8]
> [labby:25160] [ 8] /usr/bin/python(PyRun_SimpleFileExFlags+0x199)
> [0x80ea979]
> [labby:25160] [ 9] /usr/bin/python(Py_Main+0xa35) [0x8059335]
> [labby:25160] [10] /usr/bin/python(main+0x22) [0x80587f2]
> [labby:25160] [11] /lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xe0)
> [0xb7de8450]
> [labby:25160] [12] /usr/bin/python [0x8058761]
> [labby:25160] *** End of error message ***
> 
> With a previous build I have gotten different output and was able to
> actually display the contents of H, but it would shill crash once the method
> where the code was being run was terminated.  I logged a bug against it at
> http://www.fenics.org/cgi-bin/bugzilla/show_bug.cgi?id=55
> 
> As I said in my mail, I see myself using fenics in the long run and would
> like to get involved as much as possible, but some pointers as to where to
> start would be much apprciated.

Have you implemented the C++ version as well, such that you know that what you
do is correct?

Clearly, we are not catching what's going wrong here (missing check of some
sort).

My guess is that the error occurs in site-packages/dolfin/function.py, when
the Function is initialized. Can you boil down the example to a shorter script
and post it to this list? I'll have a look at it.

Ola
 
> Thanks in advance
> Evan

> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/mailman/listinfo/dolfin-dev



Follow ups

References