CFD Online Discussion Forums

CFD Online Discussion Forums (
-   ANSYS Meshing & Geometry (
-   -   [ICEM] complex 2D meshing on ICEM (

kassab June 29, 2010 14:29

complex 2D meshing on ICEM
Dear Simon,

Thank you very much for the wonderful tutorials that you have posted on youtube, it helped me enormously in jump-starting the process of learning ICEM specially that it came at a critical time when my job was brought to a halt because of an Ansys warranty change that did not include Gambit, which I was previously using to generate the meshes.

Although ICEM is indeed much better than Gambit, however it is much more complex, I managed to learn Gambit in 1 week, and finished my meshes in 4-5 hours, creating the geometry from scratch that is. But with ICEM I have been trying for 3 weeks now to familiarize myself with it so that I can recreate my geometry and mesh it, I realize that I only need to mesh one airfoil zone so that I can copy and mirror it to create the 3 turbine complex that I need for my analysis, two front counter-rotating turbines and a third one at the back, but it is still not working. I have tried to follow your instructions for the airfoil creation but with a different far-field zone, since this is a different complex, the block lines would not fit the curves, the o-grid will not always work for some reason and although I specify everywhere I find that I want an ?all tri? mesh, I keep getting a hexa mesh instead. I tried to find a way to open/import my gambit mesh so I can edit it, but of all the programs that ICEM accepts Gambit seems to be an odd exception. I have attached a picture of the mesh that I did with Gambit so you can have an idea of what I am trying to do, and I have seen the posts on the forum of other people trying to mesh a turbine, but the mesh is not that good, I would really appreciate any help that you can provide in this matter. Here at Concordia we are trying to get an ICEM tutor to give some of us a crash course about ICEM but I don?t know when that course will be taking place yet.

Thanks again for all the support and wonderful tutorials, by the way, in the tutorials you seem to work on choosing and applying quite quickly while based on the tutorials I?ve been reading we need to left click, middle click and then choose apply every time? is there a short cut key that you are using to work so fast?

kassab June 29, 2010 14:32

2D meshing on ICEM - reply from Simon
ICEM CFD has a lot of options, but If you want to generate a mesh like you had in Gambit, you should try a different method.

If you go into ICEM CFD and set sizes on he geometry and then try "Patch Dependent" meshing, you will get something much more like you have in those images. It can be done automatically, without blocking, after just a
few minutes of setup. You could also try the 2D Meshing in ANSYS meshing (where many other gambit users are migrating too because it has the Gambit sizing function, etc). One suggestion would be that you should add prisms to your blades... I guess it would be tough with such a tight space between the airfoil and the rotating boundary. Pehaps we could do something special and have mapped mesh between the airfoil and the boundary...

If you send me an ACIS file of your model, I may find time to try it out and
send you a replay script for the patch dependent method. I could also send you a blocking replay, if you wanted a quad mesh, but it wouldn't be worth blocking something like that just to change the block types to "All Tri" (you would need to do this under the Blocking Tab since it occurs at the block level.)

As for getting Gambit mesh into ICEM CFD... A gambit file isn't actually a mesh file. It is instructions for Gambit to generate a Mesh file. If you have access to Gambit, you could output it as a fluent.msh file and then read that into ICEM CFD.

And yes, in my demo, I had "Settings => Selection => Auto Pick Mode" made things go much faster. It auto pics when you enter a command and if there are no required adjustments to the DEZ, it will also auto apply.

kassab June 29, 2010 16:09

2D meshing without a block
1 Attachment(s)

I am trying to mesh the area around one airfoil using curve meshing parameters and then surface meshing, the way we used to do it in Gambit, without blocking, but I can't get a surface mesh... even when I created 3 surfaces surrounding the airfoil and I tried to mesh them, it didn't work too. What do you think the problem is?

I looked over the Ansys workbench, I prefer to stick with ICEM at least there are much more options for creating a geometry and manipulating them, I couldn't find any options on Ansys workbench to create geometry, only to import them, I didn't give it a thorough look though...

PSYMN June 30, 2010 15:39

Patch Dependent
4 Attachment(s)
Ok, so I took a quick look. There are two things necessary for patch dependent mesh.

1) you must have curves around (and attached) to the perimeter of every surface.

2) you must have mesh size set on those curves.

The algorithm works by first creating line elements along the curves around each surface (we call these loops). If you delete a curve between two surfaces (topologically attached), it becomes dormant and the loops are joined into one larger loop. Ignore size works the same way (absorbs small loops into larger neighbors). After meshing the perimeter, it does a recursive loop algorithm to mesh the surfaces. Because all the loops share curves, the final mesh comes out already connected between all the surfaces, etc.

In your case, you had problems with 1 and 2. You had curves, but they were not shared between surfaces. By turning on color by count (right click display option under "curves" in the model tree), I could see that your seams were "yellow" and therefore not connected. So I used "Geometry (tab) => Repair Geometry => Build Diagnostic Topology" to tie those surfaces and curves together. Next, I saw that some curves had sizes set others did not. For the ones that didn't it tries to use a single element along those curves and just can't generate a good mesh. So I just set all the curve sizes to 0.01. That worked and I got my first mesh.

Next I wanted to improve the mesh a bit. For the radial curves, I setup biasing from 0.01 to 0.02 with a growth ratio of 1.2. That gave me this...
Attachment 3953

But I wanted some inflation... You can use ICEM CFD Prism with the "BLAYER2D" option, but with your surface patches like this, that failed for me. Rather than figure out how to get it to work, I just set the width on the "BLADE" curves to 2 and then regenerated to get this mesh. (I will send the tetin file).
Attachment 3954

But then I figured I should show you the hexa way. It took about 5 minutes. I will send you the replay file.
Attachment 3955

Then I smoothed it. I used 10 iterations of orthogonality followed by 10 iterations of Sorenson/THomas&Middlecoff (new in 13.0)

Attachment 3956

kassab June 30, 2010 15:43

wow... thanks a million really... you saved me at least a week of poking around, thanks...

kassab July 2, 2010 10:12

Hi Simon,

Really appreciate all the help, but I have been trying to make the replay script work, it is giving an error message and stopping... as for the meshing process... I did follow your instructions fixed the lines... checked the geometry using "build diagnostic topology" and defined a size for all curves of 0.01, and then went to surface mesh.. chose the surfaces and clicked apply... nothing.. no mesh..., I will be working on the block concept again, and see where that will take me, at this point, hexa mesh is just great... so I will try to get that one, at least... :) thanks for everything...

chetraj November 1, 2010 18:31

hi simon,
i saw your youtube video and that was just awesome..hoping u add some more...i folllowed ur steps ...i would really appreciate if u would advice me on having hybrid mesh around the airfoil...something like quad meshing on the boundary layer and the remaining area with tri meshing././.

pouyan November 2, 2010 09:05

Can you send me the youtube link?

pouyan November 2, 2010 09:07

Hi Simon

I use ICEM CFD in University through an Academic license.
I have tried to use ICEM CFD on a Dell Studio with Intel Core i3 3.2GHz with 6.00 GB RAM and 1.00 GB Graphic Card but anytime I try to load my the mesh ( 1 million elements) to edit it, the ICEM CFD is showing " is not responding" sign.
I used the same software and mesh on a Dell Workstation Intel Xeon CPU 2.33GHz (2 Processors) and 8.00 GB RAM and gives me same message.

Any recommendation? How can I fix this problem?

PSYMN November 2, 2010 14:04

Lots of options...

No problem... there are lots of ways to do it.

You can do it in 2D using patch conforming... Set the mesh type to all tri, but set a "width", "height" and "number of layers" on the airfoil... That will create quad layers...

Or you can do it with 2D patch conforming and run regular prism with it (but you need to turn on the advanced option for "BLAYER2D".

Or you could actually use the automatic hexa blocking (it will create an unstructured block), then insert an Ogrid for the boundary layer.

And I am sure there are a bunch of other ways too.

chetraj November 3, 2010 18:30

thank you simon,
i am just a beginner and the first lessons were your tutorial. that has given confidence....i tried following the steps u mentioned..but unfortunately, i couldnt find Blayer2D option, nor the patch conforming,nor the automatic hexa blocking..i am sorry if it is because i use a non-commercial package available in my university or was it my ignorance in ICEM? please suggest me..
as far as trying is concerned , i tried creating parts by selecting the blocks near the airfoil, amd tried meshing by parts, i was unsuccessful..i thought i would quad mesh the part(block which is near to the airfoil), and the remaining with tri..
if you could provide me with few simpler, detailed steps, i would follow easily and be really grateful in this learning process...

once again thank you

PSYMN December 5, 2010 20:50

Better late than never?
Blayer2D is under Global Params => Prism Meshing Params => Advanced Options. When you turn it on, it lets prism run on a 2D triangle Mesh (it usually just works with 3D).

To do 2D patch conforming, you setup the method under Global Params => Shell Meshing Params. Set your mesh type to what ever and set your mesh method to patch dependent. THis mesher primarily relies on curve parameters, so it is essential that you run build topology on the geometry (to connect the surfaces and curves), and make sure you set the sizes on the curves. To actually compute your mesh, you go to Mesh (tab) => Compute Mesh => Surface mesh only and it will use what ever global shell settings you setup...

To use the automatic surface blocking, setup as above with build topology (establishes connectivity), then go to the blocking tab => Create Block => set the Type to "2D Surface Blocking". You can figure out the rest (or check the help).

Have you tried the tutorials?

galap December 8, 2010 11:41


Originally Posted by pouyan (Post 281816)
Can you send me the youtube link?

I also would like to know the link. But I assume the videos are these puplished by ansysinc? Anyway great job Simon. I do learn a lot!

siw December 8, 2010 12:17

Is this the link you want for the videos?

undersea December 13, 2010 10:22

this is the link of Simons work

I have a question for simon,
if I use the unstructure grids,can I set the periodic settings?
Or the periodic condition can only be set in blocking structured grid as tutorial?
many thanks

PSYMN January 8, 2011 17:10

Global periodicity
Yes, for unstructured tetra/prism, you start the same way. Just set the global periodicity type and offset. Then just generate your mesh. The mesher always checks these settings and runs accordingly.

For the hexa blocking (which can be used to generate a structured or unstructured hexa mesh), you must then go an extra step to tell it which verts are periodic.

fek66 February 16, 2011 08:03

help on 2D Geometry
dear Simon ;
I want to make a 2D geometry with ICEM in my project but I have problem because I am new user of ICEM. I started with tutoriel but steel have problem.
to make this geometry and use it in Cfx. Some posts say that we need to transform a 2D geom to 3D to work with CfX ? . I want your email adress to send you a geom file

PSYMN February 16, 2011 09:57

2D.msh is easiest.
Yes, many CFX users are in the habit of using "Edit Mesh (tab) => Extrude" to extrude their mesh by one cell (2.5D) before outputting to CFX.

But I think an easier way is to output the 2D model in Fluent_V6 (or later) format (*.msh) file. When CFX reads in a 2D Fluent.msh file, it automatically extrudes.

ad281 February 16, 2011 18:06


Originally Posted by PSYMN (Post 295524)
Yes, many CFX users are in the habit of using "Edit Mesh (tab) => Extrude" to extrude their mesh by one cell (2.5D) before outputting to CFX.

But I think an easier way is to output the 2D model in Fluent_V6 (or later) format (*.msh) file. When CFX reads in a 2D Fluent.msh file, it automatically extrudes.

I've tried this, but Pre won't read it for me.
Do you make the output solver ANSYS too?

PSYMN February 17, 2011 22:10

Nope, it is the Fluent.msh file that matters. The second output is only if you were doing some sort of FSI and wanted to output the FEA portion also.

My guess is that your version of CFX Pre is too old? I am not sure how long ago this 2D Fluent import feature was added.

Maybe someone else who has been successful with this could comment?

All times are GMT -4. The time now is 04:11.