CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Meshing & Mesh Conversion (https://www.cfd-online.com/Forums/openfoam-meshing/)
-   -   [Commercial meshers] Handling cyclic BC from gambit to openfoam for a cascade airfoil problem - OF 1.6 (https://www.cfd-online.com/Forums/openfoam-meshing/74998-handling-cyclic-bc-gambit-openfoam-cascade-airfoil-problem-1-6-a.html)

maverick April 13, 2010 22:32

Handling cyclic BC from gambit to openfoam for a cascade airfoil problem - OF 1.6
 
Dear all,

after successfully installing openfoam and after doing some tutorials, i am doing a problem on cascade flow analysis of a transonic turbine . I am having problem in creating the cyclic patch. i have given below the procedure i have followed.There were 3-4 threads i have referred and i have implemented the ideas given in them.still i have problem when i use Paraview.

Problem description :

My problem consists of blade centered domain in which there is airfoil in center, inlet to left of airfoil,outlet to the right , one periodic surface on top and other periodic surface on bottom and airfoil itself is the wall

1. I have created the mesh in gambit, i have linked the upper periodic edge and lower periodic edge meshes(from thread).While creating BC i have given them as " wall " with names wall_pressure and wall_suction respectively.exported the 2d mesh.

2.imported the mesh in openfoam with fluentMeshToFoam and before importing i have set the writeprecision in controldict to 12 (from thread ).after importing i gave checkmesh and found ok.Then i viewed the mesh in paraview after making the changes in p and u files .

3.Then i made a createpatchdict in system folder with the following lines in it (from thread)
Code:


matchTolerance 0.2;
pointSync true;
patches
(
{
name wall_pressure;

type cyclic;

constructFrom patches;

patches (wall_pressure wall_suction);
}
);

here wall_pressure and wall_suction are the periodic edges

4.I ran createPatch in terminal with matchtolerance set at 0.2 (from thread).I got the following result
Code:

Create time

Reading createPatchDict.

Using relative tolerance 0.2 to match up faces and points

Create polyMesh for time = 0


Moving faces from patch wall_pressure to patch 1
Moving faces from patch wall_suction to patch 1

Doing topology modification to order faces.

Synchronising points.

Synchronising points.
Points changed by average:0 max:0

Removing patches with no faces in them.

Removing empty patch wall_suction at position 2
Removing patches.
Writing repatched mesh to 4e-08

End

5. i got a boundary file in the directory 4e-08/polymesh/boundary. i changed the type of wall_pressure from wall to cyclic.copied this boundary file and pasted this file in the constant/polymesh directory replacing the existing boundary file.

6.reran the createPatch with the following changes
Code:

matchTolerance 0.2;
pointSync true;
patches
(
{
name wall_pressure;

type cyclic;

constructFrom patches;

patches (wall_pressure);
}
);

7.Now i get the following error when i run createPatch
Code:

Create time

Reading createPatchDict.

Using relative tolerance 0.2 to match up faces and points

Create polyMesh for time = 4e-08

Dumping cycPatch.name() half0 faces to "initial_wall_pressure_half0.obj"
Dumping cycPatch.name() half1 faces to "initial_wall_pressure_half1.obj"
Dumping cyclic match as lines between face centres to "initial_wall_pressure_match.obj"

Moving faces from patch wall_pressure to patch 1

Doing topology modification to order faces.

cyclicPolyPatch::order : Writing half0 faces to OBJ file "wall_pressure_half0_faces.obj"
cyclicPolyPatch::order : Writing half1 faces to OBJ file "wall_pressure_half1_faces.obj"
cyclicPolyPatch::order : Dumping currently found cyclic match as lines between corresponding face centres to file "/home/kaka/openfoam_validation/tutorials/compressible/sonicFoam/ras/nacaAirfoil/wall_pressure_faceCentres.obj"
--> FOAM Serious Error :
    From function cyclicPolyPatch::order(const primitivePatch&, labelList&, labelList&) const
    in file meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C at line 1547
    Patch:wall_pressure : Cannot match vectors to faces on both sides of patch
    Perhaps your faces do not match? The obj files written contain the current match.
    Continuing with incorrect face ordering from now on!
Dumping cycPatch.name() half0 faces to "coupled_wall_pressure_half0.obj"
Dumping cycPatch.name() half1 faces to "coupled_wall_pressure_half1.obj"
Dumping cyclic match as lines between face centres to "coupled_wall_pressure_match.obj"
Synchronising points.

On coupled patch wall_pressure forcing uniform rotation of (1 -0 0 0 1 0 0 0 1)
On coupled patch wall_pressure forcing uniform rotation of 1((1 -0 0 0 1 0 0 0 1))
Synchronising points.
--> FOAM Warning :
    From function syncPoints(const polyMesh&, pointField&, const CombineOp&, const point&)
    in file createPatch.C at line 483
    There are decomposed cyclics in this mesh with transformations.
This is not supported. The result will be incorrect
Points changed by average:0.410037731332 max:105.851509145



face 2 area does not match neighbour 108 by 200% -- possible face ordering problem.
patch:wall_pressure my area:1.02186e-17 neighbour area:63.8042 matching tolerance:0.2
Mesh face:28987 vertices:4((52.6199 -49.349 1.05888) (52.6199 -49.349 -1.05888) (51.6153 -49.349 -1.05888) (52.6199 -49.349 -1.05888))
Neighbour face:29093 vertices:4((53.6245 -49.349 -1.05888) (-29.0738 14.1267 1.05888) (51.6153 -49.349 -1.05888) (52.6199 -49.349 -1.05888))
Rerun with cyclic debug flag set for more information.

    From function cyclicPolyPatch::calcTransforms()
    in file meshes/polyMesh/polyPatches/constraint/cyclic/cyclicPolyPatch.C at line 180.

FOAM exiting

i am not much familiar with linux and openFOAM,
any help will be greatly appreciated

irinsun July 7, 2010 07:42

I have the same problem:mad:

LijieNPIC June 18, 2011 04:36

Hi,maverick
Have you solved this problem? I have the same problem


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