errors happened when practice with ESyS-Particle tutorial

Asked by qiangz2019? on 2019-01-21

when I input the command from the tutorial, there is a error, the command is sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1]).
who can help me?
I just start Esys-particle.

Thanks,

Question information

Language:
English Edit question
Status:
Solved
For:
ESyS-Particle Edit question
Assignee:
No assignee Edit question
Solved by:
qiangz2019?
Solved:
2019-02-02
Last query:
2019-02-02
Last reply:
2019-01-29
Dion Weatherley (d-weatherley) said : #1

Hi Jason,

For me to be able to help you, you will need to supply more information. Could you please describe specifically the commands you entered and how? Also please copy-paste any error messages you obtain when executing these commands.

Cheers,

Dion

qiangz2019? (jasonzhou) said : #2

Hi Dion,

Thanks for your help.
Please find the following error information.

Local abort before MPI_INIT completed completed successfully, but am not able to aggregate error messages, and not able to guarantee that all other processes were killed!

Actually, I input the following code in python 2.7, and no error happened.
from esys.lsm import *
from esys.lsm.util import Vec3, BoundingBox

Then, I input the following code, then error happened.

sim = LsmMpi(numWorkerProcesses=1, mpiDimList=[1,1,1])

Best,
Qiang

Dion Weatherley (d-weatherley) said : #3

Hi Qiang,

OK, the problem is that ESyS-Particle cannot be executed from directly within Python. Whilst you can import the esys modules, Python will crash once the simulation object (LsmMpi) is constructed. This is because ESyS-Particle is an MPI parallel program and must be executed in a specific manner. To be precise, ESyS-Particle must be executed from the mpirun wrapper that is provided with the MPI libraries.

Copy your three lines of code into a text file and save it as 'mysim.py'. To execute the simulation, type the following in a terminal window:

mpirun -np 2 esysparticle mysim.py

This should generate some output but not any error messages.

I suggest you read a bit further into the Tutorial as this is explained in one of the early sections.

Cheers,

Dion

qiangz2019? (jasonzhou) said : #4

Hi Dion,

Thanks for your help!
no errors happened, but it stop at
slave started at local/global rank 0 / 1

I will read further for the tutorial.

Thanks,
Qiang

qiangz2019? (jasonzhou) said : #5

Hi Dion,

Can I know whether Esys-particle can simulate the deformable body instead of rigid body?
Thanks,

Qiang

qiangz2019? (jasonzhou) said : #6

Hi Dion,

I read the tutorial and run the code, it works now.
I think I have solved this question, thanks for your patience.
By the way, whether Esys-particle can simulate the deformable body instead of rigid body?

Best,
Qiang

Dion Weatherley (d-weatherley) said : #7

Hi Qiang,

ESyS-Particle implements the basic sphere-based discrete element method. Individual spheres are indivisible but typically interact with one another via so-called "soft contacts" such as Hertzian contact forces. Consequently, the spheres themselves are mathematically deformable but unbreakable.

If you wish to simulate an extended deformable body, this can be constructed from non-overlapping spheres bound together with brittle-elastic beam interactions. GenGeo can be used to construct quite complicated shapes comprised of bonded spheres. The advantage of this approach is that the deformation of the body is captured quite naturally and breakage/fracture can also be simulated if desired.

Cheers,

Dion

qiangz2019? (jasonzhou) said : #8

Hi Dion,

Thanks for your great help!
I will go through the tutorials to learn more about Esys-particle.
Perhaps I will use GenGeo tools to build later.
Have a nice weekend!

Best,

Qiang