Skip to content

Issues with regularization of a polyhedral mesh #1014

@Rumi381

Description

@Rumi381

Now available in version 4.10.0.

Typical commands are

neper -T -loadtess "file(Block3D_poly.ovm)" -reg 1 -o Block3D_poly
neper -M Block3D_poly.tess -interface cohesive -format inp

Hi @rquey, since the latest version of Neper can now parse polyhedral meshes given by OVM or OBJ files, it generates a tess file based on the tessellation command. I tested a simple OVM file with a cuboid composed of 100 polyhedra, and I am encountering some issues with the resulting mesh after regularization. For some input OVM file, it shows matrix is singular while regularizing:

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.10.1
Info   : Built with: gsl|muparser|opengjk|nlopt|libscotch
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2024, and GNU GPL'd, by Romain Quey.
Info   : Loading initialization file `/home/rumi/.neperrc'...
Info   : ---------------------------------------------------------------
Info   : MODULE  -T loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] -loadtess file(Cuboid_poly.ovm) -reg 1 -fmax 20
         -mloop 5 -o Cuboid_poly -format obj
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   : Importing tessellation...
Info   :     [i] Parsing file `Cuboid_poly.ovm'...
100%
Info   :     [i] Parsed file `Cuboid_poly.ovm'.
Info   : Regularizing tessellation...
Info   :   - loop 1/5:   2% del=16gsl: lu.c:311: ERROR: matrix is singular
Default GSL error handler invoked.
Aborted (core dumped)

Sometimes it also gives the following:

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.10.1
Info   : Built with: gsl|muparser|opengjk|nlopt|libscotch
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2024, and GNU GPL'd, by Romain Quey.
Info   : Loading initialization file `/home/rumi/.neperrc'...
Info   : ---------------------------------------------------------------
Info   : MODULE  -T loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] -loadtess file(CalciumBoundaryMeshed_poly.ovm) -reg 1
         -mloop 5 -o CalciumBoundaryMeshed_poly -format obj
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   : Importing tessellation...
Info   :     [i] Parsing file `CalciumBoundaryMeshed_poly.ovm'...
100%
Info   :     [i] Parsed file `CalciumBoundaryMeshed_poly.ovm'.
Info   : Regularizing tessellation...
Info   :   - loop 1/5:   5% del=175Error  : You have discovered a bug in Neper!  Please file an issue at
         https://github.com/rquey/neper/issues.  Thank you.

Aborted (core dumped)

However, a critical observation I have made is that the resulting regularized mesh still has some issues, despite the regularization being successful. For example, the following shows the target face of the polyhedral mesh of the original input OVM file:

Image

Now, I run

neper -T -loadtess "file(Cuboid_poly100.ovm)" -reg 1 -o Cuboid_poly100

After this regularization, I get the mesh as:

Image

It appears that some cells have disappeared. I tried to mesh it with:

neper -M Cuboid_poly100.tess

But it failed giving the following:

========================    N   e   p   e   r    =======================
Info   : A software package for polycrystal generation and meshing.
Info   : Version 4.10.1
Info   : Built with: gsl|muparser|opengjk|nlopt|libscotch
Info   : <https://neper.info>
Info   : Copyright (C) 2003-2024, and GNU GPL'd, by Romain Quey.
Info   : Loading initialization file `/home/rumi/.neperrc'...
Info   : ---------------------------------------------------------------
Info   : MODULE  -M loaded with arguments:
Info   : [ini file] (none)
Info   : [com line] Cuboid_poly100.tess
Info   : ---------------------------------------------------------------
Info   : Reading input data...
Info   :   - Reading arguments...
Warning:     > Using a development Gmsh version (4.14.0-git)...
Info   : Loading input data...
Info   :   - Loading tessellation...
Info   :     [i] Parsing file `Cuboid_poly100.tess'...
Info   :     [i] Parsed file `Cuboid_poly100.tess'.
Info   : Meshing...
Info   :   - Preparing... (cl = 1.105) 100%
Error  :   - Failed to project 6 faces: 23 25 27 30 38 77.
Info   :     [o] Writing file `failed_faces'...
Info   :     [o] Wrote file `failed_faces'.
Info   :     [o] Writing file `failed_polys'...
Info   :     [o] Wrote file `failed_polys'.
Aborted (core dumped)

I don't know what is happening with the regularization. Can you please look into the issue?
Originally posted by @rquey in #905 (reply in thread)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions