- changed status to resolved
Extrude2D not working with mpirun
from mshr import *
circle = Circle(Point(0, 0, 0), 1)
# cylinder = Cylinder(Point(0, 0, 0), Point(0, 0, 1), 1, 1)
cylinder = Extrude2D(circle, 1)
mesh = generate_mesh(cylinder, 20)
The preceding code runs fine when called normally, but causes the following error when called using mpirun (for example as "mpirun python -np 2 test.py"):
PETSC ERROR: ------------------------------------------------------------------------
[0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation, probably memory access out
of range
[0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
[0]PETSC ERROR: or see http://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind
[0]PETSC ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X to find memory corrup
tion errors
[0]PETSC ERROR: configure using --with-debugging=yes, recompile, link, and run
[0]PETSC ERROR: to get more information on the crash.
application called MPI_Abort(MPI_COMM_WORLD, 59) - process 0
=================================================================================== = BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES = EXIT CODE: 59 = CLEANING UP REMAINING PROCESSES = YOU CAN IGNORE THE BELOW CLEANUP MESSAGES ===================================================================================
If the line cylinder = Extrude2D(circle, 1) is swapped for the above commented line, things work both with python and mpirun.
Comments (1)
-
- Log in to comment
When generating 2d mesh in order to extrude it to 3D, don't partition and distribute it. Fixes issue
#41.→ <<cset f8d5c90bd842>>