|
[Sponsors] |
April 20, 2005, 23:37 |
You can make sure by setting s
|
#21 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
You can make sure by setting startTime=latestTime in the controlDict and running couplePatches. It will tell you that the ordering is correct or not (and attempt to correct the ordering and write a mesh). It will only work correctly if the two halves of the cyclic are not connected.
OpenFoam does not really make a difference between the rotational and translational; it works out a transformation tensor from the normals on the two patches. |
|
April 21, 2005, 05:13 |
Hi Mattjis,
I tried the too
|
#22 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
Hi Mattjis,
I tried the tool couplePatch with lots of error messages, like: Please use topological matching or adapt the featureCos() setting Continuing with incorrect face ordering from now on! cyclicPolyPatch::order : Found 0 on patch cyc_ring where the cos of the angle between two connected faces was less than 0.9 cyclicPolyPatch::order : Writing zone 0 face centres to OBJ file "cyc_ring_zone_0.obj" cyclicPolyPatch::order : Writing zone 1 face centres to OBJ file "cyc_ring_zone_1.obj" cyclicPolyPatch::order : Number of faces per zone:2{30} I think OpenFoam does not know whether the angle between the patches is 0 deg or 180 deg. Can I somehow define this angle (with featureCos() setting?)? You also said :"It will only work correctly if the two halves of the cyclic are not connected." What do you mean by It? couplePatches? Are in a rotational case the two halves of cyclic not always connected ? Thank you! |
|
April 21, 2005, 05:40 |
Correct. It tries to divide yo
|
#23 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
Correct. It tries to divide your single patch into two halves base either on
- connectivity: a translational patch will have two disconnected regions or on - angle between connected faces. In your case a) does not work since I assume it is one single region and b) does not work since the angle is 0 everywhere. Either make your case less than 180 degrees or split the patch into two regions (by introducing a tiny (or even 0) gap between the two regions) |
|
April 21, 2005, 06:03 |
The problem is I can't make my
|
#24 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
The problem is I can't make my angle less than 180 deg. If I do so my "symmetry" is broken.
But If I split the pach into two regions with a tiny gap, the pach won't be connected and be treaded as translational pacht (as I understand it). This also not correct in my case! Any suggestions? Can't I predefine an angle? Thanks! |
|
April 21, 2005, 06:11 |
The patch will not be treated
|
#25 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
The patch will not be treated as a translational patch. All cyclics are treated the same, all scalars are exchanged as is and all vectors are rotated by the rotation vector (derived from the normals).
|
|
April 21, 2005, 06:11 |
How could I use a cyclic bound
|
#26 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
How could I use a cyclic boundary for an annular gap? Here are the two regions also disconnected, but a translational patch would produce the wrong results!
|
|
April 21, 2005, 06:32 |
In my case there are more than
|
#27 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
In my case there are more than 1 one cyclic patch. For some the regions are connected (->causes the problem that OpenFoam doesn't know if the angle is 0 deg or 180 deg) and some are disconnected. In my case all scallars AND all vectors are exchanged as is (there is no rotation at all).
So I think OpenFoam calculates the wrong rotation vector. My qyestion is: Can this vector be influence by user input? Thanks Mattijs! |
|
April 21, 2005, 06:41 |
No.
But you have full sour
|
#28 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
No.
But you have full source code ;-) Look for calcTransformTensors in coupledPolyPatch.C and put some Info statements in there to figure out what it is doing. |
|
April 21, 2005, 07:31 |
Ok I will have a look, allthou
|
#29 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
Ok I will have a look, allthough I am a C++ beginner.
Thanks anyway! |
|
April 21, 2005, 08:37 |
It is realy hard for a beginne
|
#30 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
It is realy hard for a beginner to understand the code;-(.
1) Am I right that the default matching method is geometric? 2) Could I use topological matching for my problem? 3) What means featureCos()setting? And how to adapt it? |
|
April 21, 2005, 13:49 |
1) yes
2) no. since the start
|
#31 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
1) yes
2) no. since the starting ordering is invalid 3) this is the (cosine of the) angle between two neighbouring faces. If you have e.g. a 45 degree wedge like geometry with a cyclic it uses this angle to split the cyclic patch into two regions. To change: add to couplePatches.C after coupledPolyPatch::setGeometricMatch(true); the line cyclicPolyPatch::setFeatureCos(ddd) and add a #include "cyclicPolyPatch.H" to the top of the file. (ddd is the cosine of the angle where you want to split the region. Note that this does not work for a 180 degree cyclic where the faces are perfectly aligned) (And yes it is hard stuff. There are still problems with it) |
|
April 26, 2005, 09:07 |
I have to pass. This is to com
|
#32 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
I have to pass. This is to complex for me. Is there somebodey in the OpenFoam communiy, who solved the problem with the 180 degree cyclic boundary - Andrew maybe or Mattijs. Or maybe someone is planning to implement it?
Best regards! |
|
April 26, 2005, 09:07 |
I have to pass. This is to com
|
#33 |
Member
Duderino
Join Date: Mar 2009
Posts: 40
Rep Power: 17 |
I have to pass. This is to complex for me. Is there somebody in the OpenFoam communiy, who solved the problem with the 180 degree cyclic boundary - Andrew maybe or Mattijs. Or maybe someone is planning to implement it?
Best regards! |
|
April 26, 2005, 14:14 |
Hi Duderino,
I never had th
|
#34 |
Senior Member
Mattijs Janssens
Join Date: Mar 2009
Posts: 1,419
Rep Power: 26 |
Hi Duderino,
I never had the need for 180 degree cyclics. As said part of the problem is that there is no gap between the two halves. |
|
November 14, 2008, 05:00 |
Hello
could someone tell me
|
#35 |
Guest
Posts: n/a
|
Hello
could someone tell me what is doing cyclic? best regards Emo |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Star CCM Overset Mesh Error (Rotating Turbine) | thezack | Siemens | 7 | October 12, 2016 11:14 |
[snappyHexMesh] No layers in a small gap | bobburnquist | OpenFOAM Meshing & Mesh Conversion | 6 | August 26, 2015 09:38 |
Moving mesh | Niklas Wikstrom (Wikstrom) | OpenFOAM Running, Solving & CFD | 122 | June 15, 2014 06:20 |
[Gmsh] 2D Mesh Generation Tutorial for GMSH | aeroslacker | OpenFOAM Meshing & Mesh Conversion | 12 | January 19, 2012 03:52 |
fluent add additional zones for the mesh file | SSL | FLUENT | 2 | January 26, 2008 11:55 |