CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   CFX (http://www.cfd-online.com/Forums/cfx/)
-   -   symmetry boundary conditions in cfx (http://www.cfd-online.com/Forums/cfx/65276-symmetry-boundary-conditions-cfx.html)

lost.identity June 10, 2009 08:32

symmetry boundary conditions in cfx
 
1 Attachment(s)
Hi,

I'm trying to study the flow through a converging-diverging duct using CFX.

Since the problem is axisymmetric I'm only consider the top half of the duct and using 10 degree angle segment.

My problem is with setting periodic boundary conditions for the two 'sidewalls'.

I generated the mesh using ICEM (see attached image) and set the two 'sidewalls' to be periodic. I saved these sidewalls in a single part called 'sidewalls'.

So in CFX I applied symmetric boundary conditions on the sidewalls. But when I run the simulation I get the following error.

+--------------------------------------------------------------------+
| ERROR #002100013 has occurred in subroutine Chk_Splane. |
| Message: |
| The symmetry boundary condition requires that the boundary patch |
| mesh faces form a plane or axis. However, face set 3 in the |
| symmetry boundary patch |
| |
| sidewalls |
| |
| is not in a strict plane, which means that at least one of its |
| faces is not parallel to the others. To make the solver run |
| you can do one of the following: |
| |
| (1) Make sure that this symmetry boundary patch is in a plane or |
| axis by checking and regenerating the mesh. |
| (2) If the symmetry boundary patch is an axis rather than a |
| plane, change the tolerance of the degeneracy check by |
| increasing the value of the Solver Expert Parameter |
| 'degeneracy check tolerance' (the default value is 1.e-4). |
| (3) Increase the value of the Solver Expert Parameter |
| 'vector parallel tolerance' (the default value is 1 deg.). |
| Note that the accuracy of the symmetry condition may decrease |
| as the tolerance is increased. This is because the tolerance |
| is the number of degrees that a mesh face normal is allowed |
| to deviate from the average normal for the entire face set. |
+--------------------------------------------------------------------+



I would like to know what the correct method of setting the boundary condition will be for such a geometry. Perhaps it's not correct to save the two walls as a single part in ICEM.

Any help will be much appreciated.



http://img132.imageshack.us/i/mesh1.png/

lost.identity June 10, 2009 10:16

I guess I should have define the problem clearly.


My question is how will I set the boundary conditions for my mesh. I'm only considering the upper half of the geometry for a 10 degree angle segment.

I want to tell CFX that my geometry is actually axisymmetric, and the two sidewalls are periodic.


THanks.

ckleanth June 10, 2009 10:27

if you have revolved the geomerty and made a true axisymetric mesh you should be able to define an interface model and chose a rotational periodicity under the interface model option and define your axis

Timon June 10, 2009 10:54

The boundary condition shouldn't be symmetry, but rotationally periodic. Add a domain interface in which you can set this up. The mesh does not have to be truly rotationally symmetric, as you can use a GGI connection as well (or have this to be determined automatically).

lost.identity June 10, 2009 12:57

1 Attachment(s)
Thanks for the reply. I've tried to set periodic boundary conditions now.

Earlier the two sidewalls of the mesh were in a single part (created in ICEM). I assumed that for periodic boundary conditions these 2 sides needed to be in two separate parts.

However, when I put one of the walls in another part and then tried to import the mesh in CFX it gave me the following errors. Has anyone else tried to import such a mesh?

Quote:

ERROR
The importing process reported the following warning(s) while importing
the mesh from the requested file:

Zone 13 is an interior region which is ignored.

Failed to construct all elements.


There was a problem importing the mesh from the requested file.
The importing process reported the following problem:

Unable to import mesh: Unable to construct Prismatic element.
So what I did was rather than making the two faces meet on the axis I made a tiny surface as a 'bottomwall'. This would be equivalent to having a hole in the pipe. Then when I imported this mesh into CFX it still gave the following warning but the mesh was imported.


Quote:

The importing process reported the following warning(s) while importing
the mesh from the requested file:

Zone 13 is an interior region which is ignored.

Failed to construct all elements.
I'm not sure what I'm doing wrong here. I created a simple straight duct without the nozzle to see whether it was the nozzle that was the problem but it still gave me the above error.


I thought of ignoring this warning and created the rotational periodic boundaries. However when CFX drew the rotational arrows it looked strange because it not only had vertical rotation but also horizontal rotation at some points (please see the image below).


When I ran the simulation it then gave some errors and ended. It appears that CFX doesn't like the way I created the mesh.

ckleanth June 10, 2009 18:17

i think you have a problem with your geometry - perhaps the tolerance information was lost/is wrong and some nodes got distorted in one way or another. either way if your geometry does not have an axis of rotation you will not be able to setup periodicity. in your case/geometry the mesh on the sides could have the same mesh and its a common practice to make things as simple as possible (ggi connection is more demanding than 1:1)

anyway it doesn't matter if you have one or five bodies in a part that are meshed together. as long the mesh is connected between the bodies you can setup your domain to contain as many body meshes as you like.

lost.identity June 11, 2009 06:23

I guess the first thing to check will be to make sure that there's nothing wrong with the way the mesh is saved in ICEM.

So I created a very simple rectangular block without any rotational axis (I want to check whether I can at least import this into CFX without any errors).

The problem is in ICEM the only save options I can see for CFX are CFX-4 and CFX-TASCflow, both of which are not what I'm looking for. So I save it as a fluent (*.msh) file which can be read in CFX.

But when I import the mesh into CFX I still get the following error. I don't understand it. This is such a simple mesh. It works fine with the in-house code I use.

Quote:

WARNING
The importing process reported the following warning(s) while importing
the mesh from the requested file:

Zone 12 is an interior region which is ignored.

ghorrocks June 11, 2009 06:49

Hi,

1) You do not need to use rotationally periodic boundaries for an axisymmetric simulation. Normal symmetry boundaries are required for 2D axisymmetric simulations. If you use rotationally periodic boundaries you will include a swirl component (I have heard this called 2.5D). So if you don't have swirl then use symmetry planes, if you do then use rotationally periodic.

2) My guess as to the problem is that you have both faces in the same boundary part. In ICEM you will need to separate them into two surfaces and then set them as separate symmetry planes.

3) I don't think the ICEM *.msh file is a fluent/gambit mesh, I think it is a different format again (but I am not sure). It has been ages since I used ICEM but I just remember you use the write mesh button at the end and it gave you an ICEM *.msh file which CFX-Pre reads in.

4) I don't know what your Zone 13 interior element error is but I suspect a meshing error in ICEM, probably the mesh turbing inside out. In the dim distant past when I used ICEM to make 2D meshes I did the following:
a) Mesh the solid as you have in your posting above (the image cfx-mesh1.jpg)
b) Delete all the solid elements and all the face elements except one surface which has your 2D profile.
c) Use the sweep mesh command to regenerate the solid elements, with 1 element thick. Make the sweep angle 5 degrees or so. Smaller angles will make it more accurately give the full rotated massflows but can cause convergence problems.
d) Here's the tedious bit - you then have to manually put the various faces into parts so you have things to make boundary conditions in CFX-Pre.
e) Save the *.msh file and take it into CFX-Pre.

Good luck!

Glenn Horrocks

Glenn Horrocks

lost.identity June 11, 2009 11:06

Hi Glenn,

Thanks for the post. That was actually really useful.

1) I understand the difference between the two now. I have to use symmetry BCs since it needs to be 2-D. What I am really confused about is, if I import a segment of 10 degrees (only a small segment of the upper half of the pipe) how does CFX know whether it is an axisymmetric geometry when I apply the symmetric BC? Surely the symmetric plane will only tell CFX about geometric symmetry and not rotational symmetry?

2) In my first post I had them in one part but now I actually have them in 2 separate parts.

3) In ICEM v11 when I output the file I can select which solver I use. So I select Fluent as the solver and when it outputs it creates a *.msh file.

4) I did exactly what you've said except step c)
c) I assummed that the earlier blocking (edges, faces, vertices) and geometry (surfaces, curves, points) I created were all useless now. So instead of putting different surfaces to parts I put the surface meshes into different parts (had to select element by element...took ages!)

And when I imported it into CFX-Pre it still gave me the Zone ?? is an interior region error.

The biggest problem is I get this error even when I import a simple rectangular block in ICEM. There are no distorted meshes or surfaces or rotational symmetry stuff. I simply don't know what's wrong.


Thanks

ghorrocks June 11, 2009 18:35

Quote:

Originally Posted by lost.identity (Post 218994)
1) I understand the difference between the two now. I have to use symmetry BCs since it needs to be 2-D. What I am really confused about is, if I import a segment of 10 degrees (only a small segment of the upper half of the pipe) how does CFX know whether it is an axisymmetric geometry when I apply the symmetric BC? Surely the symmetric plane will only tell CFX about geometric symmetry and not rotational symmetry?

The symmetry boundary simply makes the gradients normal to the surface zero. It does not "know" anything about the remainder of the mesh. The rotationally periodic boundary simply makes the values correspond to the equivalent node on the other face, with a modification to account for the wedge angle.

But if you think about the implications of this it means that a small angle wedge becomes representative of the full rotationally swept volume.

Glenn Horrocks

mvoss June 12, 2009 03:30

hi,
why donīt you set the output-solver on Ansys CFX?? Creates am cfx5-mesh file which is working within CFX after creating an unstrurctured mesh.

on your rotational-problem-
when you start blocking your geometry, set ALL verticies of the very first blocking on periodic and then start splitting. This will give you a full 1:1 Interface. Donīt forget to set the global mesh setup-->define periodicity etc.

neewbie

lost.identity June 12, 2009 04:34

To neewbie

Sorry, I don't understand what you mean by setting the output solver on Ansys-CFX. I create the mesh in ICEM and when I select the output solvers I can't see Ansys-CFX. The only CFX related options I can see are CFX-4 and CFX-TASCflow. So instead I save it as a Fluent_V6 file.

About the rotational periodicity. I did exactly as you've said. And when I view on ICEM I can see that the two periodic faces. Also the node numbers on these faces are exactly the same. One thing I realised yesterday was that the problem might be because the geometry has a very large aspect ratio (it is 1.5 m long and the minimum diameter at the throat is only 7.5 mm). So maybe in CFX it has some issues in dealing with this?


The real reason why I'm trying to use CFX is because I could not get the correct results from the in-house CFD code we have. The original simulation was done by a different research group using CFX and we want to do the same thing using the code we have and obtain the similar results so we can validate the code. So I was thinking that if I run it using CFX and get correct results that at least I'll know that my mesh is correct and that our code can't deal with this problem. But so far I still have issues in importing the mesh into CFX (not just this mesh but even a simple rectangular block I created). I can import the mesh into the in-house code without it displaying any errors and it does detect the periodic BCs on its own.

mvoss June 12, 2009 04:48

okay... so no ANSYS CFX Mesh... sorry.
Iīve had the same problem with this kind of geometry (i am refering to your first post: no plane surface) and i found my mistake by checking the mesh-surface normals in CFX Post. The association at the small face in the center, forming the artificalltube later, was corrupt. Did you do a mesh check over dterminanentes an soone in ICEM?
neewbie

lost.identity June 12, 2009 05:04

Cheers for the reply neewbie.

I think the problem with the mesh in my first post was because I saved the two sidewalls in the same part in ICEM and tried to apply symmetric BCs on it. I was being daft because obviously they are not in the same plane.

Thanks to the contributors to this post I have actually figured out what the symmetry bcs are.

The other problem I had with that first mesh and any other meshes I created from ICEM is the error I get when I import the geometry into CFX, i.e. the following error.

Quote:

WARNING
The importing process reported the following warning(s) while importing
the mesh from the requested file:

Zone 12 is an interior region which is ignored.
I think this is a problem with the incompatibility of the files or something and nothing to do with the mesh. Because I get the same error when I try to import a simple rectangular block. Also, these meshes work fine on the in-house CFD code I use.

mvoss June 12, 2009 05:08

before you do the mesh output, you could setup the nameselection in the bc-file. maybe you find the surface which is named with Zone 12 and fix it. or al telast change the name and find out if the error is also "changed"...

neewbie

lost.identity June 12, 2009 05:38

Great! Thanks neewbie.

I found that Zone 12 (in the *.msh file) was actually referring to the 3D Blocking created in ICEM (which is indeed an internal region).

You'd think that CFX will realise this. When you did yours did you delete the blocking part before you output the mesh? Or manually deleted it from the *.msh file? That could get rid of the error I suppose. Or maybe if you actually selected Ansys-CFX when you output the file it already takes care of this. I unfortunately do not have that option in my version of ICEM (v11.0).

But I guess CFX should still run normally since it says that it is ignoring this region, shouldn't it?

lost.identity June 12, 2009 05:46

Manually deleting Zone 12 in the *.msh file doesn't work. Still gives the same error.

lost.identity June 12, 2009 06:12

Apologies to neewbie and all the other folks (I seem to be a bit slow last few days). I over looked the options and I do actually have Ansys CFX in the Output options and I can load it in now without any issues.

Cheers!

mvoss June 12, 2009 07:48

nop
;)
neewbie

lost.identity June 12, 2009 11:25

So I've imported the mesh into CFX without any errors and set the inlet, outlet and wall BCs. Then I applied symmetry boundary conditions to the two side faces (they are in individual parts this time). But when I run the simulation I still get this error, even though the face is infact in a plane.

Quote:

+--------------------------------------------------------------------+
| ERROR #002100013 has occurred in subroutine Chk_Splane. |
| Message: |
| The symmetry boundary condition requires that the boundary patch |
| mesh faces form a plane or axis. However, face set 3 in the |
| symmetry boundary patch |
| |
| sym1 |
| |
| is not in a strict plane, which means that at least one of its |
| faces is not parallel to the others. To make the solver run |
| you can do one of the following: |
| |
| (1) Make sure that this symmetry boundary patch is in a plane or |
| axis by checking and regenerating the mesh. |
| (2) If the symmetry boundary patch is an axis rather than a |
| plane, change the tolerance of the degeneracy check by |
| increasing the value of the Solver Expert Parameter |
| 'degeneracy check tolerance' (the default value is 1.e-4). |
| (3) Increase the value of the Solver Expert Parameter |
| 'vector parallel tolerance' (the default value is 1 deg.). |
| Note that the accuracy of the symmetry condition may decrease |
| as the tolerance is increased. This is because the tolerance |
| is the number of degrees that a mesh face normal is allowed |
| to deviate from the average normal for the entire face set. |
+--------------------------------------------------------------------+


All times are GMT -4. The time now is 03:27.