CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM (https://www.cfd-online.com/Forums/openfoam/)
-   -   Cyclic GGi (https://www.cfd-online.com/Forums/openfoam/87178-cyclic-ggi.html)

kurne April 13, 2011 05:57

Cyclic GGi
 
Dear All

My case is of Turbo machinery and i am using OpenFOAM 1.5-Dev.I have successfully transfer the mesh from the Ansys ICEM to Open Foam and now i want to use cyclicggi to two patches.Can any one tell me what necessary changes to make and where.I am in great need of it.

Please Help.

Thanks In Advance.

kurne April 15, 2011 06:06

Dear All

Please tell me. I am in need of it.

amgode April 15, 2011 07:15

Check here for a test case with regards to GGI (Thanks to Olivier Petit, Maryse Page, Håkan Nilsson and Martin Beaudoin)

for cyclicGGI the procedure for faceSet and faceZone creation is same as GGI
The definition in constant/boundary file is something like:


cylic_left
{
type cyclicGgi;
nFaces 100;
startFace 1211;
shadowPatch cyclic_right;
zone cyclic_left_zone;
bridgeOverlap off;
rotationAxis (0 1 0);
rotationAngle 90;
separationOffset (0 0 0);
}

cylic_right
{
type cyclicGgi;
nFaces 100;
startFace 1311;
shadowPatch cyclic_left;
zone cyclic_right_zone;
bridgeOverlap off;
rotationAxis (0 1 0);
rotationAngle 90;
separationOffset (0 0 0);
}

Where the entries are self explanatory..........

Also,

The boundary type in the 0/ directory for all fields is cyclicGGI.


Hope that helps !!


Cheers !

Amol

kurne April 18, 2011 06:19

Dear Amol Gode

Thanks a lot for guiding me.I have done all the necessary changes in constant/polymesh/boundary file.My case is of turbo machinery and i am using simpleSRFFoam solver.

I have applied the correct boundary conditions also but still i am getting the error which is as follows.

CCreate time

Create mesh for time = 0

Reading field p

Reading field Urel

Reading/calculating face flux field phi

Face zone name PERI1_zone not found. Please check your GGI interface definition.

From function label ggiPolyPatch::zoneIndex() const
in file meshes/polyMesh/polyPatches/constraint/ggi/ggiPolyPatch.C at line 404.

FOAM aborting

Aborted


The error is showing that PERI1 zone not found but the PERI1 patch is there.

Will anybody help me.
Thanks In Advance.

amgode April 18, 2011 09:12

Quote:

Originally Posted by kurne (Post 304017)
Face zone name PERI1_zone not found. Please check your GGI interface definition.

There does not seem to be a face zone with name 'PERI1_zone".
Can be checked in constant/polyMesh/faceZones

Also the face zone name 'PERI1_zone' seems to present in the definition of GGI / cyclicGGI interfaces, though actually not available as a face zone.



Amol

kurne April 19, 2011 00:52

Dear Amol

I have check the constant/polyMesh/faceZones directory and in this directory only numbers are present means there is no names of zones as i have transfer the mesh from the ICEM to OpenFOAM.In boundary file i have edited the patches to be made cyclicGgi and which is given below

PERI1
{
type cyclicGgi;
nFaces 2517;
startFace 758483;
shadowPatch periodic_sh;
zone PERI1;
bridgeOverlap off;
rotationAxis (0 0 1);
rotationAngle -72;
separationOffset (0 0 0);
}
periodic_sh
{
type cyclicGgi;
nFaces 2517;
startFace 761000;
shadowPatch PERI1;
zone periodic_sh;
bridgeOverlap off;
rotationAxis (0 0 1);
rotationAngle 72;
separationOffset (0 0 0);
}

I have correctly edited the cyclicGgi interfaces and you can check once again.What is the problem i am unable to recognize.Please help to sort out this problem.Can anybody help me.

Thanks in Advance.

amgode April 19, 2011 06:11

Quote:

Originally Posted by kurne (Post 304156)

PERI1
{
type cyclicGgi;
nFaces 2517;
startFace 758483;
shadowPatch periodic_sh;
zone PERI1_ZONE;
bridgeOverlap off;
rotationAxis (0 0 1);
rotationAngle -72;
separationOffset (0 0 0);
}
periodic_sh
{
type cyclicGgi;
nFaces 2517;
startFace 761000;
shadowPatch PERI1;
zone periodic_sh_ZONE;
bridgeOverlap off;
rotationAxis (0 0 1);
rotationAngle 72;
separationOffset (0 0 0);
}


The faceZones file should look something like:



FoamFile
{
version 2.0;
format ascii;
class regIOobject;
location "constant/polyMesh";
object faceZones;
}
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

2
(
periodic_sh_ZONE
{
type faceZone;
faceLabels List<label>
36
(
...
//faces in periodic_sh_ZONE
....
)
;
flipMap List<bool> 36{0};
}
PERI1_ZONE
{
type faceZone;
faceLabels List<label>
36
(
....
//faces in PERI1_ZONE
.....
)
;
flipMap List<bool> 36{0};
}
)




If not then please check the steps taken for creation of faceSets and faceZones.

Check the tutorial on OpenFoamWiki referred to above.


Amol

kurne April 19, 2011 07:32

Dear Amol

Thank you very much brother.I created the faceZone from the tutorial file.But i am facing the same problem as you face and mention here http://www.cfd-online.com/Forums/ope...implefoam.html

When i run the solver i get the error

Create time
Create mesh for time = 0
Reading field p
Reading field Urel
Reading/calculating face flux field phi

Problem with patch-to zone addressing: some patch faces not found in interpolation zone
From function void ggiPolyPatch::calcZoneAddressing() const
in file meshes/polyMesh/polyPatches/constraint/ggi/ggiPolyPatch.C at line 77.

FOAM aborting
Aborted

Hope this would be the final error and as you know the solution of it also please help brother.
Thank You very Much Once Again.

amgode April 20, 2011 03:18

You could find the reply in the same thread you quoted

kurne April 20, 2011 03:24

Dear Amol

I have check all the things mention in that thread but still getting the error.Hope you help me now.
I get the faceZones file as given below

)
;
flipMap List<bool> 731419{0};
}
periodic_sh_zone
{
type faceZone;
faceLabels 0();
flipMap 0();
}
PERI1_zone
{
type faceZone;
faceLabels 0();
flipMap 0();
}
)

And my boundary file is as follows

PERI1
{
type cyclicGgi;
nFaces 2517;
startFace 758483;
shadowPatch periodic_sh;
zone PERI1_zone;
bridgeOverlap off;
rotationAxis (0 0 1);
rotationAngle -72;
separationOffset (0 0 0);
}
periodic_sh
{
type cyclicGgi;
nFaces 2517;
startFace 761000;
shadowPatch PERI1;
zone periodic_sh_zone;
bridgeOverlap off;
rotationAxis (0 0 1);
rotationAngle 72;
separationOffset (0 0 0);
}


Thanks In Advance.

zhaowei April 20, 2011 05:12

c this,

http://www.tfd.chalmers.se/~hani/kur..._kurs_2010.tgz

i think u can get what u want

kurne April 20, 2011 05:35

Dear Wei Zhao

Thanks a lot for it and it is new case file but the problem solution is not in it.Anyway thanks a lot for new case files.

kurne April 21, 2011 05:19

Dear Amol

Thank you very much brother my case got work.

Thanks A Lot Once Again.

mingbn October 23, 2013 02:07

turboPassageRotating2d
 
1 Attachment(s)
Hi. Everybody.
I'm a new openFoam user. so i can not launch this case. I don't know how to fix the error. Can you help please.?
This is case (case of an master thesis which downloaded from web http://www.tfd.chalmers.se/~hani/kurser/OS_CFD/)
thanks a lot!
======
This is error:
--> FOAM FATAL IO ERROR:

Cannot find 'value' entry on patch rotor_cyclic_upper of field p in file "/home/minh/Desktop/turboPassageRotating2D/0/p"
which is required to set the values of the generic patch field.
(Actual type cyclicGgi)

Please add the 'value' entry to the write function of the user-defined boundary-condition


file: /home/minh/Desktop/turboPassageRotating2D/0/p.boundaryField.rotor_cyclic_upper from line 43 to line 43.

From function genericFvPatchField<Type>::genericFvPatchField(con st fvPatch&, const Field<Type>&, const dictionary&)
in file genericFvPatchField/genericFvPatchField.C at line 71.

FOAM exiting

+++
Please show to me, thankS!

Metikurke February 25, 2018 17:09

Quote:

Originally Posted by kurne (Post 304529)
Dear Amol

Thank you very much brother my case got work.

Thanks A Lot Once Again.

Dear Kurne,

It would be very nice if you can share how did you overcome the above mentioned error.

Thank you in advance.

Hgholami November 10, 2019 00:04

Dear foamer
I try to model a rectangular domain with discontinue top and bottom patch. I want to use cyclicGgi for top and bottom. the mesh generated by ANSYS Meshing and cyclicGgi defined to top and bottom. The problem is when running simulation the FatalErrorIn Reconstructed cell centres already calculated occurs.
http://uupload.ir/files/bvdw_untitled.jpg
this error is in ggiPolyPatch.C file and due to
Quote:

// Create neighbouring face centres using interpolation
if (master())
{
const label shadowID = shadowIndex();

// Get the transformed and interpolated shadow face cell centers
reconFaceCellCentresPtr_ =
new vectorField
(
interpolate
(
boundaryMesh()[shadowID].faceCellCentres()
- boundaryMesh()[shadowID].faceCentres()
)
+ faceCentres()
);
}
else
{
FatalErrorIn("void ggiPolyPatch::calcReconFaceCellCentres() const")
<< "Attempting to create reconFaceCellCentres on a shadow"
<< abort(FatalError);
}
the Domain is (-0.15 -0.025 0) (0.5 0.025 0.0002) and I use it for changing boundary.
Quote:

Top
{
type cyclicGgi;
nFaces 64;
startFace 32016;
shadowPatch bottom;
bridgeOverlap false;
zone topZone;
rotationAxis (0 0 1);
rotationAngle 0;
separationOffset (0 -0.05 0);
}
bottom
{
type cyclicGgi;
nFaces 64;
startFace 32323;
shadowPatch top;
bridgeOverlap false;
zone bottomZone;
rotationAxis (0 0 1);
rotationAngle 0;
separationOffset (0 0.05 0);
}
then using setSet -batch batch.setSet and setsToZones -noFlipMap, the Zone creates.
batch.setSet is
Quote:

faceSet elasticZone new patchToFace elastic
faceSet topZone new patchToFace top
faceSet bottomZone new patchToFace bottom
Do you know, why this error appears?

Hgholami November 11, 2019 14:25

Any foamers deal with this problem?

deepsterblue November 12, 2019 09:52

Looks like a bug where demandDrivenData (in this case, reconFaceCellCentresPtr_) isn't being cleared correctly when a topology change occurred.

Hgholami November 14, 2019 02:43

1- I thought the error may introduce from mesh, because the imported mesh with fluent3DMeshToFoam give non-aligned cells. I replaced 3D mesh with 2D mesh and use fluentMeshToFoam (checkMesh is OK) but still the problem exist.
2- I separate the top and bottom to check, may problem is due to meshing, but for structured and unstructured mesh, still the problem exist.
3- I use non-conformal top/bottom mesh, but problem still exist.
4- I change position of rectangular from symmetry of x axis to positive region (Y), but still problem exist.
The test was done with other geometry TurekHronFsi tutorial with blockMesh and generated mesh with ANSYS Meshing and then changing top and bottom wall to cyclicGgi. the simulation works correctly with cyclicGgi.
http://uupload.ir/files/2kw_untitled.jpg
But for this geometry, it can't. Why?
http://uupload.ir/files/5w1i_untitled.jpg
I check each part (1,2,3) aside but the error exist.
Despite, this geometry with cyclic condition work properly in serial running.

Hgholami November 15, 2019 01:11

Another try: The simulation for my geometry work with fluidFoam correctly. But with fsiFoam give error.
In fluidFoam the cellMotion doesn't consider. But in fsiFoam it considers. As the pointMotionU can't define cyclicGgi, I use fixedValue with Value (0 0 0) or calculated, that give error "Attempting to create reconFaceCellCentres on a shadow" after calculating pointMotionUx, pointMotionUy. That is before calculating U and p.


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