CFD Online Discussion Forums

CFD Online Discussion Forums (
-   ANSYS Meshing & Geometry (
-   -   [ICEM] Solar Water Heater Mesh Problem. (

OzMantle July 15, 2010 19:29

Solar Water Heater Mesh Problem.
4 Attachment(s)
Hi, I'm trying to mesh a Solar Water Heater (An arregement of cilynders) for my bachelor's thesis. Then I've been searching in google the best way to do that and i found that an O-Grid can simplify the mesh and improves the quality as well. So i try to make an hex mesh with some O-Grids in the cilinders to capture the thermosyphon effect in ICEM (my first time with this software). But when I check the quality it seems so poor, so i start to "smooth the hexaedral mesh orthogonal" but after a lot of iterations (20000 aprox.) the quality don't increases so much and takes several time. There are some elements that seems so big in comparation with the other ones specially near the edges of the colector tank (the bigger cilynder) as you can seen in the attachments, do you think that this elements can cause this quality? the geometry was created in design modeler and exported to ansys meshing and then imported to ICEM cfd but i guess this is not the problem. So I don't know how to increase the quality. One of my teachers propose me to export this mesh an then try to fix it in Tgrid but I guess ICEM cfd can fix this issue as well as TGrid can do. So what do you think? You're so much experienced with this kind of situations and I apreciate your help.


Some screen captures.
Attachment 4073

Attachment 4074

Attachment 4075

Attachment 4076

PSYMN July 18, 2010 16:30

Bad hexa...
Smoothing can't fix bad topology...

In this case you should have an O-Grid thru your tank (like you do for your pipes). This would avoid the bad elements in the "corners" of the tank...

To really find your bad quality elements, you can click on those columns in the histogram and the bad elements will be highlighted on the screen (you may need to turn off your mesh so you can see the elements hidden behind), then you can consider why the elements are bad...

usually there are two reasons, bad topology or bad distributions.

PSYMN July 18, 2010 16:31

Oh yea, TGrid wouldn't have much chance of fixing this hexa mesh, your best bet is to create a good topology first... Then you won't need to fix it.

OzMantle July 18, 2010 23:21

Hi Simon, i appreciate you reply to my questions. Whath did you mean with bad topology?. I click repair geometry after read the geometry in ICEM, because I supose that can solve any topology problem, but i don't if really works.

Sorry but I don't attached the picture that shows the worst elements distrubution, I'll do it as soon as possible.

PSYMN July 19, 2010 09:39

Blocking Topology
I am talking about blocking topology... You lay out your blocking in a certain way. In this case your topology leads to hexas being squished against the corners of the tank... This is where you will find your bad elements. The fix is to fix the topology and put an OGrid thru that big tank from end to end. You may also get some improvement by adjusting the associations at the end of the tank (don't project to those curves, or perhaps associate differently).

OzMantle July 19, 2010 10:19

4 Attachment(s)
Yeah Simon, you're totally right, the worst elements are in the corners of the blocks. This are the caps of the new O-grid (in the storage tank) and the distribution of the bad elements. Also I put a capture of the block topology, did you think is bad?, what can I do to get a better block topology?. I really apreciate the time that you spend reviewing my job.

PSYMN July 19, 2010 11:51

Topology fix
First, getting up to 0.1 or 0.2 should be enough for most solvers... Also check your angles to make sure the worst is mostly greater than 18 degrees with only a few in the 9 to 18 degrees column and none below 9 degrees... When you display the bad elements, only show one or two columns so it is easier to see where the worst ones are.

Now for you topology... You are close...

Two main issues.

1) your pipes have the O-grid end (and turn around) inside them. This gives bad angles (45 degrees at best) on the pipe side and even worse on the tank side because it still has to fit a mapped block to a circle (180 degrees). Instead, that pipe Ogrid should go at least one block into the tank so that both sides of the tank pipe interface circle have Ogrids...

2) You blocked the tank with faces at each end, which isn't bad for capturing the main topology, but the end of the tank is filleted, so the square corners of the Ogrid are being opened up to 180 degrees to fit...

There are two possible fixes...

Both start with removing the Ogrid you put in the pipes. To remove an Ogrid, use Merge Verts, with the Propagate option on. Pick the outer vertex of an ogrid edge and then the inner vertex. It will warn you that it will remove an index, hit ok.

So now you are back to having the main Ogrid in the big tank, the pipes are HGrid blocked out, but no other Ogrids.

Two paths...

First (more complex, but better quality);

Go into the Ogrid command, select all the blocks in the pipes, plus the extra block adjacent to each pipe just within the main tank. Face the open ends of these pipes. it will give you an Ogrid for each pipe that will turn around within the tank Ogrid.

Then, Ogrid again, select all the blocks within the main tank (everything except the pipes). Don't put any faces. This Ogrid will take care of the quality issues at the tank corners.

The simpler path is just to select everything (all the pipes and the tank) for one big Ogrid. Just face the outer ends of the pipes. This will give you a single Ogrid that will solve most of your problems, but the quality won't be quite as good at the pipe tank interface (still better than now). It also will tie the edge distributions along the pipes (which you may want to be pretty fine) with the edge distributions in the tank (which don't need to be as fine), and will therefore "waste" elements.

Perhaps try both ways and post pics of your success.

PSYMN July 19, 2010 11:56

Iso Parametric Curve
Oh yea, one more thing...

At the ends of the big pipe, you have two curves, one on either side of the fillet...

If you can create a curve down the middle of the fillet (Create an ISO Parametric curve in ICEM CFD or your CAD tool), and associate the ends of the initial blocking (before that final Ogrid) to those curves, It will help your quality a lot.

OzMantle July 19, 2010 22:15

4 Attachment(s)
Well Simon I follow your steps and obtain a new mesh with high value of quality in mesh metric, with only a few elements under 0.5. I try to move some vertex to increase the quality of this elements without success, I guess this is possible only moving something on the blocks or changing the value of nodes on the edges. What do you think? This is possible?. I put some captures of the mesh and the worst elements. Thank you again.

PSYMN July 20, 2010 09:31

Good enough...
Mesh is improved by adjusting blocking angles and distributions, but you are still fitting to a real model. You will find that if you improve some mesh by adjusting the angle of the block (my moving a vertex to improve the angle), you end up making the angle worse on the other side... it can be an impossible back and forth. You will always have a "worst" element. When you have an Ogrid in a roughly square shape, you introduce 45 degree angles. If you move a vertex to get closer to 90 on one side, you get further from 90 on the other. These 45 degree angles are better than what you had before (180 degree angles), but probably limit you to a best case of 0.5 quality). However, that is more than good enough and you can just continue to your solver.

Very few solvers would complain about a mesh with quality below 0.2, many will run with quality below 0.05, some below 0.01... You are done.

OzMantle July 20, 2010 11:11

Yeah, i notice that. I guess about 4000 elements below 0.6 quality for a 1100000 elemnts mesh does not represent a serious problem. Thanks for all the support, and I hope this information can help somebody else.

OzMantle July 21, 2010 17:28

2 Attachment(s)
Well have another problem, but now is when I export this mesh to Fluent mesh type (.msh) because ICEM does not export 2 boundary layers located at the storage tank, even if I create a new boundary layer in the export window ICEM doesn't export that. Did you suppose this is a Geometry issue??? I try to fix the lying surface of the boundary layers by merging the surface (bonded by curve also) but without succeed. This are two caps of the problem the firs one is the surface with the boundary layers and the second one shows the mesh without the boundary layers (as ICEM export to .msh file). What's the trouble now??? :confused: Thanks in advance.

PSYMN July 22, 2010 14:40

Two ways... Fix at the blocking level or uns mesh level.
How do you want it to behave?

Do you want a nice round circle of mesh representing each boco? If so, you just need to block it out. First, split to capture the rough square around the circle and then put an ogrid in the block just inside the tank and face the surface of the block. This will produce an Ogrid that should start outside the circle and have its center square within the circle... Split that ogrid and associate the new edges on the tank face with the circle (if the center square is not inside the circle, you will need to move its corner verts in). Then re-compute your premesh and you will find the central portion of the Ogrid is in the correct boco part...

If you just want to adjust the part name of the Hgrid elements whose centroids pass over that circle (somewhat stairstep patch), just take your existing mesh and go to "Edit Mesh (tab) => Repair Mesh => Associate Mesh with Geometry”. It will ask you to select mesh… Select the shells on your tank (or at least the ones near your two circles) and it will look at the normal vector from the centroid of each shell and assign it to the part of the nearest geometry entity. Those over the tank will stay in the tank part, those over the round holes will move to those parts. Then you can apply bocos, etc…

OzMantle July 22, 2010 14:55

Hye Simon, thanks for you reply. Yesterday I've notice that I need to create a block for the holes and propagate it in to the tank as you tell me for the cilinders. Right now im working on it because it takes me some time to move the vertex to the right position. When I'm finish I'll post some caps of the final mesh. (Well I hope so :D)

PSYMN July 27, 2010 08:29

Me either

Originally Posted by lambert22 (Post 268983)
Actually i don't have any idea about this situation ...

Hey Lambert22, sorry, but I have no idea what situation you don't have any idea about and the link didn't show me much more... If you have a question, please rephrase. :confused:

OzMantle July 27, 2010 18:38

3 Attachment(s)
Well, I'm really sorry because I forgot to share the results of modifying the existing mesh. Here you are some caps of the geometry repair to capture those two hole who are already the most important boundary condition (inlet and outlet). This is not the most beautiful mesh that you ever seen, but it works. :D

PSYMN July 27, 2010 19:07

The only thing I would have done differently would be to create those Ogrids a little bit bigger than the holes, then split the Ogrid and associate the new split with the hole... This way you have aligned quads outside the circle and the transition from Ogrid to HGrid can happen further away from the critical area. Also, since the transition will not be associated with a circle, it can happen with much higher quality elements...

But other than that, this is a pretty good mesh.

OzMantle July 27, 2010 19:14

Ummm, I don´t understand what you mean with split the O-grid (becuase an O-grid is an split of a block (or am I wrong? :confused:)), or did you say to make a second O-grid using the little block generated after make the first O-grid. Maybe this are rookie doubts but I really don't understand this procedure.


All times are GMT -4. The time now is 02:33.