Database Full Index

3. Mesh Editor

[ top ] [ previous ] [ next ]

 


3.1. How do I remove negative volumes?

You might have to edit the mesh although smoother can take care of this if you have quad faces (prisms).

If you have tetras then it may not.

The Prism mesher should not allow an inverted element, if an inverted element is encountered, it will generate a message saying that you have an orientation error (basically multiple tetras occupy the same volume). If this happens, the best way to fix this is to merge nodes interactively to try to repair the grid when two nodes are merged, the tetras and tris that become collapsed are automatically deleted. In this way, you can merge out the inverted elements. If there are left handed elements instead of a right handed element, use Diagnostics > Check mesh > Volume orientations to diagnose these elements, you can then say fix to re-order the numbering scheme to right-handed.

Normally, smoothing is not the best method. In the first case, it is not the best option, because if you have a orientation error, it is probably due to too many constraints, and smoothing would rarely help. Merging nodes alleviates the overconstrained case and is a better option. In the second case smoothing really doesn't care about this.




[ top ]


 

3.2. What are different diagnostics for a tetra/prism/pyramid mesh?

It's normally useful to tear-off the diagnostics pop-up menu panel to reduce the amount of mouse clicks. Then check the Error, and Possible Problem checks.

If any elements are reported, an automatic Fix can be attempted, or use Select to add these cells to a subset. Using subset manipulation, and mesh editing techniques, diagnose the problem and resolve it through merging nodes, splitting edges, swapping edges, delete/create elements, etc. For more info see the on-line help (4.2 Mesh Editor -> Edit Mesh -> Edit Nodes/Elements/Edges).

For subset manipulation (mesh display), use the "Display subset - Modify" button in the lower portion of the right hand display column. This will be done automatically if "Select" is picked when prompted after the diagnostic is finished. Usually, one would "Add layer" in the pop up menu, then select "Display options - Solid/wireframe" in the right hand column to get a better visualization of the problem.

Keep in mind that after mesh editing, the diagnostics should be re-checked to verify that no mistakes were made.






[ top ]


 

3.3. How do I define periodicity?

Inside Mesh Editor, go to Geometry > Mesh params > Model

This will open up a "Model mesh params" window. Towards the bottom you would find a button to "Define periodicity". Click that button to define rotational or translational periodicity.

For Hexa models, you need to do this additionally inside Hexa.




[ top ]


 

3.4. How do I define an internal/thin wall?

Inside Mesh Editor, choose for your solver under Output. Then go for "Geometry > Mesh Params > Selected families", select your family and toggle on "Internal wall" in the Family mesh params window that pops-up. You can opt for the Internal or split wall depending on the situation/case you have/want.




[ top ]


 

3.5. How do I input "tolerance" to do copy/mirror/merge of meshes?

It's not very straight forward but could be used in the following way: In fact, above method is faster than the normal copy/mirror/merge as you reduce the number of nodes to be checked substantially.




[ top ]


 

3.6. There are so many options to do smoothing on structured meshes. Could you explain these?

There are plenty of options in this panel, most of them could be switched off by turning the Expert mode off. The explaination to each of the options is as follows:




[ top ]


 

3.7. Why can't ICEM CFD read my tetin files?

Check out if your tetin file has any blank lines in it. MED on it's own should not create any blank lines anywhere in the tetin file but if there are any, they should be removed manually. You can use following command to remove blank lines:

awk '{if($0 != "") print}' [input filename] > [output filename]




[ top ]


 

3.8. Why can't I import the Ansys mesh into Mesh Editor?

ICEM CFD/CAE MESH IMPORT: ANSYS   ANSYS import filter The import filter(ansys2df) for Ansys is primarily designed to read the Ansys "cdb" files and convert the data to IcemCFD unstructured mesh(domain), boundary condition(attribute) and solver parameter files. The filter is compatible with the ANSYS version 7.0.

The cdb files are generated from within Ansys with the CDWRITE command. The filter would need a cdb file generated with either "all", "comb" or "db" option. The format should be "BLOCKED". The detailed description of CDWRITE command is available in the Ansys documentation.

The import supports the conversion of the following Ansys data:
1. Nodes

2. Elements: (Ref: ANSYS 7.0 doc)
1-49,51-83,86-93,95-109,115-123,126-143,145-150,157-167, 169-178, 180-192, 195

The missing elements are not supported because of the following reasons:
MATRIX50 : A superelement, which in effect can be a set of any number of elements. No equivalent in IcemCFD mesh.
HYPER84 : Has dual order nature i.e. can be either linear or quadratic, depending on key options setting. The current interface does not read the keyopts as of now.
85 : Does not exist in ANSYS 7.0.
INFIN110,111 : Ditto as for 84.
112-114: Non-existent.
CIRCU94,124,125 : Geometry doesn't have IcemCFD mesh equivalents. (Used for circuit simulation.)
ROM144 : Ditto as for CIRCU above. (Used for coupled electrostatic-structural system analysis.)
SURF151-154 : Ditto as for 84.
155,156,168 : Non-existent.
PRTES179 : Ditto as for CIRCU above. (Used to define pre-tension sections.)
INTER193,194 : Ditto as for CIRCU above. (Used for modeling structural assemblies.)
MESH200 : Ditto as for 84.

Note: The interface adds missing midside nodes for quadratic elements, if any.

3. All material properties as defined by MPDATA/MPTEMP commands.

4. Real constant data as defined by RLBLOCK commands.

5. Node and element components as defined by CMBLOCK commands are written out as subsets in the unstructured domain file.

6. Nodal DOF constraints(D), Forces/Moments (F), Surface loads(SF) & Body loads(BF).

During translation to IcemCFD mesh, each unique combination of material id, element type id and real constant set id generates a new family of elements.

The filter can also read the Ansys batch files (but is not recommended) within the following limitations:

  • Can interpret only N, E, ET & TYPE commands. ( NBLOCK & EBLOCK commands are not supported. Also it can read only upto first 8 nodes specified in E command. Any additional nodes with EMORE generate warnings. This implies that it does not support any of the quadratic volume elements.)
  • Cannot handle degenerate elements.

  • These limitations also apply to those Ansys batch files as generated by the Ansys output interface of the IcemCFD/AI*Environment.

    The command line for ansys2df is invoked with the following arguments:
    -d
    not recommended) input file>

    Any input filename without the .cdb extension is parsed as a batch input file.




    [ top ]


     

    3.9. Why do I get error message for the IGES->tetin translation where IGES file is written from CATIA?

    For some reason Catia sometimes produces double . (dots) as decimal dividers. If these exist in the IGES file, IGES->Tetin translation fails.

    You can probably use the direct interface to Catia which can produce a tetin file without the need of an iges file.




    [ top ]


     

    3.10. When I try to convert linear to quadratic tets, why do I get the message like "Angle check failed for node XXXXX, Midpoint XXXXX linearized"?

    This is mostly related to the resolution of the mesh. Under Edit mesh, change type, linear to quadratic, there is a button for 'advanced options'. On the advanced options panel, there is an angular limit to control whether or not to project the midpoint node. If you have a coarse mesh in a region of the geometry where there is significant curvature, this angular limit may cause the midpoint nodes not to project. You could try increasing this angular limit, but we would recommend refining the mesh in the areas where this limit is causing the midpoint nodes not to project.




    [ top ]


     

    3.11. Why can't I import a PATRAN grid as a "geometry" into MED while the same can be imported as a "mesh" there?

    PATRAN meshes at times have only the volume informations, so when you read those grids into MED as a mesh, you see only the HEX_8 elements. Since, there are no boundary quads here, it cannot be imported as a geometry into MED.

    Workaround: You should first try to fix the uncovered faces here, write back the mesh file and then try to read in this mesh into MED as a domain file.

    Remember, unless a mesh has QUAD or TRI boundary elements, it cannot be read as a geometry.




    [ top ]


     

    3.12. What is "make Consistent"?

    If some operations (manually editing elements) accidentally make an inconsistent surface and volume mesh, this will fix any problems that it finds. It only applies to a tetra/tri mesh. It makes the volume mesh consistent with the surface mesh by subdividing tetras if necessary, and moving and merging nodes of the volume elements with the nodes of the surface elements until the mesh is conformal. If an enclosed surface mesh is inserted into the volume mesh, then any tetras inside of the enclosed surface mesh will be cut away, and the mesh will be made conformal.




    [ top ]


     

    3.13. Why does my element numbering in MED look different than in my solver.

    node_numbering_in_icem In ICEM CFD Mesh Editor, there can contain a variety of types of elements in an unstructured mesh. For instance, for a Hex mesh, there could be HEXA_8s, QUAD_4s, BAR_2s, and NODEs. For a Tetra mesh there could be TETRA_4s, TRI_3s, BAR_2s, and NODEs. ICEM CFD keeps track of all elements and nodes with a global numbering scheme. For instance: Look at Edit Mesh ->Diagnostics ->Info:
    This will report in the message window something like:
    Element types:
    BAR_2 : 240
    HEXA_8 : 648
    QUAD_4 : 486
    .
    .
    .
    Total elements: 1374
    Total nodes: 910

    It is important to note, that nodes are also taken into the numbering scheme
    Typically, the global numbering scheme works as follows:
    Nodes are numbered: x-n,
    elements are numbered x-n,
    where x is defined in File > Options > Edit Options > Display (Node/Elemindex base value -default is 0), and
    where n=#values-x-1 (#values is number of nodes, elements, etc.).
    For instance, in the above example,
    nodes would be labeled 0-909
    BAR_2s would be labeled 0-239
    HEXA_8s would be labeled 0-647
    QUAD_4s would be labeled 0-485

    To make everything unique, use Edit Mesh > Edit elements > Renumber
    This forces nodes, and elements to all have unique numbers.
    This would then influence a global numbering scheme that is different than the local numbering scheme. For instance:
    The local numbering scheme would still be similar to above, but the global numbering scheme for the example above would be as follows:
    Nodes labeled 0-909
    QUAD_4s would be labeled 910-1395
    HEXA_8s would be labeled 1396-2043
    BAR_2s would be labeled 2044-2283

    The best way to see the node/element numbering is with the following tools:
    Display Options > Element Numbers will show the global numbering of the elements
    Display Options > Node Numbers will show the node numbers (notice the global and local node numbers always stay the same).
    To see a local element, vs. a global element, use subsets:
    Display Subset > Modify > Clear
    Display Subset > Modify > Add:Specific in this form, you can put an element number in the entry to the right of Add by Number, and turn on local or global, if local, you have to define what kind of element you are looking for. Then hit Add by Number. This will display this (these) elements with this number on the screen (You may have to Orient > Home to see it).





    [ top ]


     

    3.14. Why I cannot switch off surfaces sometimes?

    Reason could be you might have changed the name of that family using "Edit" option from the Display panel. Right now you just save your work and restart ICEM CFD, then the problem is solved. But this is a bug and will be fixed for next version.




    [ top ]


     

    3.15. In my surface mesh, I found feather edge (bad surface (triangle) mesh, especially in the complicated geometry, the quality of surface mesh is not good. The cell equiangle skew is larger than required. The relative low quality might lead to unstable or divergency in calculation. What's the remedy then?

    Suggestion to you is to do laplace smoothing on the mesh. Laplace smoothing is done on the surface mesh in ICEM CFD. To do this, This should give you an excellent surface mesh and a good quality of tetra mesh.




    [ top ]


     

    3.16. Some of the CAD->Tetin translators in "Import Geo" require the CAD system installation. Which ones are those?

    The ones which require CAD system installation are:




    [ top ]


     

    3.17. How do I work through Y+ adjustment tool? Can you tell me step by step?

    Following are the steps to perform this operation:
    How algorithm works:

    Known problems:

    Common Questions:




    [ top ]


     

    3.18. How do I stretch or shrink geometry in specific directions?

    Go to "Geometry->copy/move" and select on the geometry. Click on "scale" and type in a scale factor in the X, Y, and Z directions separated by spaces. For example, 1 2 1 will scale a factor of 2 in the Y-direction. Be sure to choose the right point to scale about. About, "centroid" may be the best choice in many situations.




    [ top ]


     

    3.19. How to read INPUT file with named entity data in ICEM?

    After creating INPUT data file, select option input under DDN tools in Geometry menu. In ICEM input menu select the set modals option and change the format of reading the input file to "named entities"(By default this is in "free format" mode). set appropriate tolerances for surfaces and curves and read the INPUT file to generate the geometry.




    [ top ]


     

    3.20. Why do I get error message "med.exe has generated errors and will be closed by windows",while trying to smooth mesh to desired quality in mesh editor?How do I get rid of this?

    If the mesh size is very large of the order of millions, the memory resources may not be sufficient to smooth the mesh in mesh editor. To overcome this problem smooth the mesh at command prompt by the following procedure, If the mesh size is very large of the order of millions, the memory resources may not be sufficient to smooth the mesh in mesh editor. To overcome this problem smooth the mesh at command prompt by the following procedure,

    1)Go to the directory where the tetin and domain files are saved.

    2)Type the following commands at command prompt to smooth the mesh externally

    i)$ICEM_ACN/icemcfd/smooth domainfilename tetinfilename(for UNIX,SGI,Solaris,Linux platforms)

    ii)%ICEM_ACN%/icemcfd/smooth domain filename tetin_filename (for Windows)

    iii)smooth 0.3 5 no_collapse( here 0.3 represents determinant quality and 5 represents number of iterations for smoothing)

    iv)save domainfilename

    v)Exit




    [ top ]


     

    3.21. I have several geometry files in a directory. I wish that ICEM CFD should take them all one by one, run HEXA using a replay file, save mesh and write output for solver for all of them. Can I do that?

    This is not trivial to do and requires some knowledge of how things work in ICEM CFD.

    The directory structure which would be used to explain steps here would be:

    	med_script.tcl				: Main script file
    	input					: to hold all tetin files
    	input/tetin1.tin
    	input/tetin2.tin
    	.
    	.
    	input/replay.hxa			: Hexa replay file
    	icemcfd_projects			: to hold icemcfd projects
    	icemcfd_projects/project1/mesh
    	icemcfd_projects/project1/domains
    	icemcfd_projects/project1/transfer
    	icemcfd_projects/project2/mesh
    	icemcfd_projects/project2/domains
    	icemcfd_projects/project2/transfer
    	.
    	.
    

    The script file would be run with following command:

    icemcfd -batch -script med_script.tcl
    

    Following would be the major lines in your MED script file to do this:

    Hexa replay file: Make sure that it has following type of lines at the bottom:

    save_blocking blocking.blk
    save hex.uns LIVE proj 2  -family_boco family_boco.fbc
    

    Complete MED replay file would look like:

    global env
    
    if { [file exists "/etc/passwd"] } {
       set is_win 0
    } else {
       set is_win 1
    }
    
    if ![file exists "icemcfd_projects"] {
      eval exec mkdir "icemcfd_projects"
    }
    
    set geo_files [lsort -dictionary [glob -nocomplain input/*.tin]]
    
    foreach geo_file $geo_files {
      mess "Handling Geometry: $geo_file\n"
      set geo_dir [file dirname $geo_file]
    
      set geo_file [file tail $geo_file]
      set endind [string last . $geo_file]
      incr endind -1
      set geo_name [string range $geo_file 0 $endind]
    
      set geo_file "$geo_dir/$geo_file"
    
      set icemcfd_project "icemcfd_projects/$geo_name"
      set tetin_file "$icemcfd_project/mesh/geometry.tin"
      set fbc_file "$icemcfd_project/mesh/family_boco.fbc"
      set hexa_replay_file "$icemcfd_project/mesh/replay.hxa"
      set mesh_file "$icemcfd_project/domains/hex.uns"
    
      set output_file "$icemcfd_project/transfer/fluent.msh"
    
      if { [file exists $icemcfd_project] } {
            if { [file isdirectory $icemcfd_project] } {
              eval exec rm -rf $icemcfd_project
              eval exec mkdir $icemcfd_project
              eval exec mkdir $icemcfd_project/mesh
              eval exec mkdir $icemcfd_project/domains
              eval exec mkdir $icemcfd_project/transfer
            }
       } else {
              eval exec mkdir $icemcfd_project
              eval exec mkdir $icemcfd_project/mesh
              eval exec mkdir $icemcfd_project/domains
              eval exec mkdir $icemcfd_project/transfer
       }
    
       eval exec cp $geo_file $tetin_file
       eval exec cp $geo_dir/$geo_name.hxa $hexa_replay_file
    
       if {$is_win} {
           eval exec $env(ICEM_ACN)/icemcfd/hexa_batch $icemcfd_project -tetin $tetin_file -i $hexa_replay_file
       } else {
           eval exec $env(ICEM_ACN)/icemcfd/hexa $icemcfd_project -tetin $tetin_file -i $hexa_replay_file
       }
    
    
       set application_run "$env(ICEM_ACN)/icemcfd/output-interfaces/georampant -dom $mesh_file -b $fbc_file $output_file"
       if [catch {eval exec $application_run} trans] {
         puts "Fluent translation : $application_run : unsuccessful \n"
       } else {
         puts "Fluent translation : $application_run : successful \n"
       }
    }
    
    





    [ top ]


     

    3.22. How do I read a point data file in MED so that I get the points, curves, surfaces automatically?

    There is a command in MED called as "ic_geo_cre_geom_input". This command should be typed in the messages window. You can just say "ic_geo_cre_geom_input < input_point_file_name >".

    The simplest syntax of the input point data file could be:

    x1 y1 z1
    x2 y2 z2
    x3 y3 z3
    .
    .
    

    However, this would create only points and NO curves or surfaces. The reason being, to create these entities an array with row columns should be known. So, to create those entities, the point data file should look like:

    m n
    x1 y1 z1
    x2 y2 z2
    x3 y3 z3
    .
    .
    x(m*n) y(m*n) z(m*n)
    
    where m is the number of points in a curve and n is the number of curves.




    [ top ]


     

    3.23. While doing smoothing, MED crashes with "Assertion failed: triangle_sizes[i] >= 0.0, file ucurve.C, line 2196 Signal 6 caught!". What is wrong here?

    You are most likely using one of the UNIX platforms of ICEM CFD 4.2.2 version. Please do the diagnostics on your mesh. If the mesh has troubles (single, multiple, non-manifold etc), the software may crash while doing the smoothing. This does not happen on windows machine though.

    This is fixed in the next version of ICEM CFD. Please contact your nearest support person to get the later (unreleased though) version.




    [ top ]


     

    3.24. Does ICEM have the ability to create a Voronoi Mesh?








    [ top ]


     

    3.25. How is the expansion ratio for linear progression calculated? (given number of layers, total height and initial height)

    
    The formula to calculate the expansion ration is given below. 

    This will be useful in dealing with extrusion with a certain expansion. Height of the nth layer from the surface = h[1+(r-1)(n-1)] = [h(2-r)]+[h(r-1)n]...(after rearranging) where, "h" represents height of the first layer "r" represents the expansion ratio If number of required layers is N and total height is T. Then, T = [h(2-r)]N + [h(r-1)]{N(N+1)/2}...... Sum of first N natural numbers = [N(N+1)]/2 Solving for expansion ratio r, r = [2T + N(N-3)h] / [N(N-1)h]

    Above formula gives the expansion ratio based on initial(h),total height(T)

    and number of layers(N).






    [ top ]


     

    3.26. Why does my tetin file take too long to load?

    If you think your tetin file is relatively small let's say 5-10Mb and it takes several minutes or even hrs to load, first check for the comments in your tetin file. Till version 4.2.2, everytime you save the tetin file a comment starting with "//" comes towards the top of the tetin file. These comments can be quite a lot and could slow down reading of tetin files. This behaviour is gone in the next upcoming version of ICEMCFD.




    [ top ]


     

    3.28. How do I extrude mesh by using a function for spacing?

    The function must be typed in using tcl/tk syntax. The only recognized variable is "layer" which is the integer number of the layer and will have a sequential value of 1 -> n (number of layers) as the extrusion progresses. Typical expressions for spacing would be: Linear progression: H*(1+(layer-1)*r) where H is the first layer height and r is the expansion ratio (e.g. 0.2) Exponential progression: H*power(R,(layer-1)) where R is the expansion ratio multiplier (e.g. 1.2)




    [ top ]


     

    3.31. Why can't I merge nodes near a quad-ring

    Shell mesh can be locked to prevent the automatic functions like Smooth and Remesh from damaging critical mesh patterns. When Quad rings are generated, these elements are automatically locked. You can see which elements are locked by using the Locked Elements Display option under Mesh => Shells in the model tree. You can unlock them with Move Nodes => Lock/Unlock. After Unlocking the elements, you will be able to merge the nodes. The next patch should allow locked elements to be manually edited and only prevent automatic editing functions.




    [ top ]


     

    3.32. When I try to change the curve mesh size, why do I get the following error: "Warning: Using automatic sizing;...using xxxx for global mesh size"?

    The global max element size is set automatically in case it is undefined and there are no (or inadequate) element sizes given on curves and surfaces. The automatic size is based on various geometry dimensions and depends on the selected meshing option. It provides a good average choice for meshing.




    [ top ]


     

    [ top ] [ previous ] [ next ]

    created by faq-system 0.3.6 Thomas Linden