The mesh of imported STL has leaks and holes

In the models, there exists tubes with diameters of 1.2mm, when I set the uniform meshing method, as the sizes of X-Y-Z increase, error of “certain dimension above bounds” appear, as they decrease, the mesh would be imcomplete and have holes and leaks in its surface.

I want to know how to use point control for meshing to increase resolution in specific regions. And I want to know whether there exists an upper bounds for cell numbers, such as how many millions?

Please take a look at the simple vortex shedding template for an example on how to use control points.

The maximum number of cells in each direction is 5,000. This can be changed in param_mod.f (need to rebuild the solver) but it is typically not necessary nor recommended. Once you get above say 100,000 cells you will probably need to run the code in parallel using several cpus. I would say try to stay between 1 and 10 Million cells, but it depends on the computational resources you have.

Hi, Jeff, thank for your reply. I have tried the method to generate the mesh but the following error pops up.

I want to know what is the relation between background mesh setting and mesher that generates the boundary mesh.

I hereby attach the .stl file and .mfx files, hope that you can help me and indicate what is wrong in the project that inhibits its normal meshing and running. Thank you.

Best Regards,test6_holes.STL (38.5 KB)
simple_chamber_test1.mfx (19.1 KB)

ERROR deprecated.f:246

From: UNKNOWN_KEYWORD

Error 2000: Unable to process line 29 of the project file.

TOL_SNAP(0) = 0.0

Possible causes are

* Incorrect or illegal keyword format

* Unknown or mistyped name

* The dimensioned item is too small (array overflow).

Please see the user documentation for this keyword.

The indices for TOL_SNAP start at 1, so TOL_SNAP(0) is invalid. This looks like a possible bug in the GUI, I will investigate.

As a workaround, open your project file and edit the lines:

  tol_snap(0)     = 0.0
  tol_snap(1)     = 0.0
  tol_snap(2)     = 0.0

to read

  tol_snap(1)     = 0.0
  tol_snap(2)     = 0.0
  tol_snap(3)     = 0.0

Sorry for the inconvenience.

– Charles

Thank you Charles. I correct the .mfx file as you said. but then when I try to mesh it the following errors pop up. But the control points has been set already to avoid the following bugs. So I do not know how I can figure them out. Thank you.

ERROR cartesian_grid\check_data_cartesian.f:1506
ERROR: CONTROL POINTS ALONG X MUST BE SORTED IN ASCENDING ORDER.
CPX = -0.00050000 -0.00050000 0.01000000 0.02050000

ERROR cartesian_grid\check_data_cartesian.f:1665
ERROR: IMAX MUST BE EQUAL TO THE SUM OF NCX.
IMAX = 102
SUM OF NCX = 101

ERROR cartesian_grid\check_data_cartesian.f:1877
ERROR: JMAX MUST BE EQUAL TO THE SUM OF NCY.
JMAX = 101
SUM OF NCY = 51

ERROR cartesian_grid\check_data_cartesian.f:1913
ERROR: LAST CONTROL POINT MUST BE EQUAL TO Z_MAX.
Z_MAX = 0.07100000
LAST CONTROL POINT = 0.02000000

ERROR cartesian_grid\check_data_cartesian.f:1929
ERROR: CONTROL POINTS ALONG Z MUST BE SORTED IN ASCENDING ORDER.
CPZ = 0.00000000 0.00000000 0.00750000 0.00800000 0.02000000

Hi Ju. I don’t have the answer at my fingertips, I (or somebody) will post as soon as we have an answer for you. Thanks for your patience.

– Charles

Thank you Charles, I have solved the above problem, but the new one appeared as follows. I want to know what is the meaning of " Index ‘1042249280’ of dimension 1 of array ‘list_facet_at’ above upper bound of 1198817". Thank you.

INFO cartesian_grid\check_data_cartesian.f:1907
DEFINING GRID SPACING IN Z-DIRECTION…
NUMBER OF CONTROL POINTS IN Z-DIRECTION = 5

MFIX WITH CARTESIAN GRID IMPLEMENTATION.
RE-INDEXING IS TURNED OFF.
INITIALIZING VELOCITY NODES…
ESTIMATING POTENTIAL SCALAR CUT CELLS…
INTERSECTING GEOMETRY WITH SCALAR CELLS…
At line 735 of file C:\Users\Admin\miniconda3\conda-bld\mfix-solver_1627537308023\work\model\cartesian_grid\get_cut_cell_volume_area.f
Fortran runtime error: Index ‘1042249280’ of dimension 1 of array ‘list_facet_at’ above upper bound of 1198817

And if I use default method to generate the mesh instead of using the control points, the following error pops up. Could you please tell me what happened? Thank you.

ERROR check_data\check_initial_conditions.f:255

Error 1101: Initial condition region 4 is ill-defined.

IC_I_W > IC_I_E

Please correct the project settings.

Thank you Charles. I want to know whether there exists a more stable version of the MFiX suite. I am using MFiX-21.2 currently. Thank you.

21.2 is the most current version of MFiX. We release updates to MFiX 4 times per year. We plan to release the next version, 21.3, in the next week or two. It contains a fix for the TOL_SNAP(0) bug you reported, as well as other improvements and bugfixes.

We also occasionaly make special “bugfix” releases to deal with particular problems that cannot wait for the next scheduled release.

The IC_I_W > IC_I_E message is saying that the left (‘west’) edge of the region is to the right of the rightmost (“east”) edge. I’m not sure why this is happening. We will look into this.

We are looking at the implementation of control points and hope to make some improvements to that in a future version. I don’t expect we’ll be able to get that into 21.3 version, however.

Your bug reports are important to us, they help us improve MFiX. Thanks for your patience.

– Charles

This could be because your IC region is smaller than the grid spacing.

1 Like