neperfepx / neper

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

Statistics output of -statedge scale and -statver scale does not work #689

Closed bseligmann closed 1 year ago

bseligmann commented 1 year ago

Describe the bug

It is stated under https://neper.info/doc/exprskeys.html#tessellation-keys that a valid tesselation key for -statedge, -statver and -statface is scale in multiscale tesselations. This tesselation key seems only to work with -statface.

To Reproduce

I use Neper Version 4.5.1-4 which is running on a Windows 10 PC within a docker container emulating a Linux environment. In the following I show the three variants -statver scale, -statedge scale, -statface scale with a simple multiscale simulation of three cells divided further into two subcells.

-statver scale

$ neper -T -n 3::2 -statver scale -o test_ver

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.5.1-4
Info   : Built with: gsl|muparser|opengjk|openmp|nlopt|libscotch (full)
Info   : Running on 16 threads.
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2022, and GNU GPL'd, by Romain Quey.
Info   : No initialization file found (`/root/.neperrc').
Info   : ---------------------------------------------------------------
Info   : MODULE  -T loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] -n 3::2 -statver scale -o test_ver
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   : Creating domain...
Info   : Creating tessellations...
Info   :   [level] Running in multiscale mode (2 scales)...
Info   :   [    1]  1/1 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  1/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  2/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  3/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   : Flattening 2-scale tessellation...
Info   :   [level] Flattening 2-scale tessellation...
Info   :   [    1]  1/1: id=1
Info   : Writing results...
Info   :     [o] Writing file `test_ver.tess'...
Info   :     [o] Wrote file `test_ver.tess'.
Info   : Writing statistics...
Info   :     [o] Writing file `test_ver.stver'...
Error  : Expression `scale' could not be processed.
Aborted

-statedge scale

$ neper -T -n 3::2 -statedge scale -o test_edge

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.5.1-4
Info   : Built with: gsl|muparser|opengjk|openmp|nlopt|libscotch (full)
Info   : Running on 16 threads.
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2022, and GNU GPL'd, by Romain Quey.
Info   : No initialization file found (`/root/.neperrc').
Info   : ---------------------------------------------------------------
Info   : MODULE  -T loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] -n 3::2 -statedge scale -o test_edge
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   : Creating domain...
Info   : Creating tessellations...
Info   :   [level] Running in multiscale mode (2 scales)...
Info   :   [    1]  1/1 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  1/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  2/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  3/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   : Flattening 2-scale tessellation...
Info   :   [level] Flattening 2-scale tessellation...
Info   :   [    1]  1/1: id=1
Info   : Writing results...
Info   :     [o] Writing file `test_edge.tess'...
Info   :     [o] Wrote file `test_edge.tess'.
Info   : Writing statistics...
Info   :     [o] Writing file `test_edge.stedge'...
Error  : Expression `scale' could not be processed.
Aborted

-statface scale

$ neper -T -n 3::2 -statface scale -o test_face

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.5.1-4
Info   : Built with: gsl|muparser|opengjk|openmp|nlopt|libscotch (full)
Info   : Running on 16 threads.
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2022, and GNU GPL'd, by Romain Quey.
Info   : No initialization file found (`/root/.neperrc').
Info   : ---------------------------------------------------------------
Info   : MODULE  -T loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] -n 3::2 -statface scale -o test_face
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   : Creating domain...
Info   : Creating tessellations...
Info   :   [level] Running in multiscale mode (2 scales)...
Info   :   [    1]  1/1 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  1/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  2/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   :   [    2]  3/3 Info   :   - Setting seeds...
Info   :   - Generating crystal orientations...
Info   :   - Running tessellation...
Info   : Flattening 2-scale tessellation...
Info   :   [level] Flattening 2-scale tessellation...
Info   :   [    1]  1/1: id=1
Info   : Writing results...
Info   :     [o] Writing file `test_face.tess'...
Info   :     [o] Wrote file `test_face.tess'.
Info   : Writing statistics...
Info   :     [o] Writing file `test_face.stface'...
Info   :     [o] Wrote file `test_face.stface'.
Info   : Elapsed time: 0.019 secs.
========================================================================

The output of -statface scale is as expected (0 for domain, 1 for superior scale and 2 for subcells). This information would be most useful in my case for vertices.

rquey commented 1 year ago

It works in the latest version (4.6.0).