neperfepx / neper

Polycrystal generation and meshing
http://neper.info
GNU General Public License v3.0
204 stars 53 forks source link

Error! Bug discovered when running multiscale tessellation #104

Closed Hx83866 closed 3 years ago

Hx83866 commented 3 years ago

Hello Everyone,

A bug was prompted, when a tessellation job was conducted on a HPC system via Singularity in my uni. (See below) Previously, I have successfully run a tessellation via Neper through this method, so it cannot be the problem of the HPC System.

Singularity> sh trial_08.sh

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.1.1
Info   : Built with: gsl|muparser|opengjk|openmp|nlopt
Info   : Running on 1 threads.
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2020, and GNU GPL'd, by Romain Quey.
Info   : Ignoring initialization file.
Info   : ---------------------------------------------------------------
Info   : MODULE  -T loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] -n 4::26::from_morpho -morpho
         centroidal::diameq:lognormal(2.527,0.602),1-sphericity:normal(0.689,0.128)::lamellar(w=1.0)
         -id 1::2::3 -reg 1 -o rve_trial_08 -domain cube(64,64,64)
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   : Creating domain...
Info   : Creating tessellations...
Info   :   [level] Running in multiscale mode (3 scales)...
Info   :   [    1]  1/1 Info   :   - Setting seeds... 100%
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :     > Initial solution: f   =0.319718156
Info   :     > Iteration     66: fmin=0.000095774 f=0.000095774
Info   :     > Reached unknown criterion.
Info   :   [    2]  1/4 Info   :   - Setting seeds... 100%
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :     > Initial solution: f   =29.308178759
Info   :     > Iteration 311296: fmin=0.147622913 f=0.147622913
Info   :     > Reached `eps' criterion.
Info   :   [    2]  2/4 Info   :   - Setting seeds... 100%
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :     > Initial solution: f   =33.824890733
Info   :     > Iteration  12468: fmin=0.378321392 f=0.378321392Error  : You have discovered a bug in Neper!  Please file an issue at
         https://github.com/rquey/neper/issues.  Thank you.

Aborted (core dumped)
[...]

Is there any command or method that can let the software ignore or skip the error and continue calculating?

Best Regards, Xiang Hu

rquey commented 3 years ago

The problem comes from the low sphericity - see below the (sub)tessellation soon before the code aborts. Is it really the morphology you want? image

Hx83866 commented 3 years ago

Dear Mr. Quey,

Thanks for your reply. I afraid yes, such a low sphericity was obtained by EBSD data via MTEX.

Does the software Neper have a recommended sphericity range?

Best Regards, Xiang Hu

rquey commented 3 years ago

I afraid yes, such a low sphericity was obtained by EBSD data via MTEX.

Could you show your EBSD map?

Does the software Neper have a recommended sphericity range?

Not really, but nasty things can happen for unusual values.

Hx83866 commented 3 years ago

Hi Mr. Quey,

As you can see below, the domains distinguished by four different colors refer to packets that belong to four kinds of habit plane in martensitic transformation. The packet boundaries were emphasized by bold black lines. subregion_packet_segmnt

What I want to generate through Neper is such multi-scale RVE.

Best Regards, Xiang Hu

rquey commented 3 years ago

Did you get the sphericity measurements from the regions inside the packets?

Anyways, I would not recommend to apply these measurements "blindly" to a 3D microstructure in Neper, at least for 2 reasons: (i) they come from a 2D section, and (ii) they are probably influenced by the non-convexities, which Neper is not really able to reproduce. I would recommend to start from standard values and modify them until you get a reasonable microstructure.

EDIT Please open a discussion if you'd like to discuss more about this.

Hx83866 commented 3 years ago

Sure Thanks a lot!