CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM (http://www.cfd-online.com/Forums/openfoam/)
-   -   Ggi (http://www.cfd-online.com/Forums/openfoam/81711-ggi.html)

FabOr November 4, 2010 08:55

Ggi
 
2 Attachment(s)
Hi Foamers,

ive got some strange results using ggi-patches => see attached picture and plot-over-line, y-axis.

I use ggi-patches for minX/maxX and minY/maxY similar to a simple construction. This construction looks like a cuboid.
So the values of p,U,... of the patch minX (= master) should be transferred to maxX (=slave), same for minY/maxY. Correct me if i am wrong.
But in the plot you can see that the ggi-patch doesnt work like i want: the values of U and p on both sides dont coincide.

For better understanding and looking for mistakes here is my boundary-file:

Code:


    minX
    {
        type            ggi;
        nFaces          6549;
        startFace      182291;
    shadowPatch    maxX;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        minX_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }
    maxX
    {
        type            ggi;
        nFaces          6460;
        startFace      188840;
    shadowPatch    minX;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        maxX_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }
    minY
    {
        type            ggi;
        nFaces          600;
        startFace      195300;
    shadowPatch    maxY;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        minY_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }
    maxY
    {
        type            ggi;
        nFaces          570;
        startFace      195900;
    shadowPatch    minY;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        maxY_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }

The patches in the U,p,..-files are described as type ggi.

Maybe this kind of mistake can be related to this error-warning running simpleFoam:

Code:

Reading/calculating face flux field phi

Initializing the GGI interpolator between master/shadow patches: minX/maxX
Evaluation of GGI weighting factors:

    From function void GGIInterpolation<MasterPatch, SlavePatch>::rescaleWeightingFactors() const
    in file /home/fabian/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude/GGIInterpolationWeights.C at line 534
    Uncovered faces found.  On master: 6549 on slave: 6460
  Largest slave weighting factor correction : 0 average: 0
  Largest master weighting factor correction: 0 average: 0

Initializing the GGI interpolator between master/shadow patches: minY/maxY
Evaluation of GGI weighting factors:

    From function void GGIInterpolation<MasterPatch, SlavePatch>::rescaleWeightingFactors() const
    in file /home/fabian/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude/GGIInterpolationWeights.C at line 534
    Uncovered faces found.  On master: 600 on slave: 570
  Largest slave weighting factor correction : 0 average: 0
  Largest master weighting factor correction: 0 average: 0

Selecting incompressible transport model Newtonian
Selecting RAS turbulence model kEpsilon

Any help and guidance is much appreciated! If you need more files/information to help me to solve my problem feel free to ask!

regards

cnsidero November 4, 2010 09:27

Ya, in the simpleFoam output, it's telling you their are uncovered faces (actually all of them), meaning the ggi wasn't able to match up the patches.

One question, did you create the face zones (minX_zone, maxX_zone, minY_zone, maxY_zone)?

FabOr November 4, 2010 09:38

Hi,

thx for your answer cnsidero!

ive created the zones by: 1) faceSet for each patch minX/maxX/...
2) setsToZones -noFlipMap

best regards

cnsidero November 4, 2010 09:49

Ok, I was just checking.

I too have had this happen to me before but I was using cyclicGgi and didn't have the rotation angles correct. How about removing the unnecessary stuff, e.g.:

minX
{
type
ggi;
shadowPatch maxX;
bridgeOverlap false;
zone minX_zone;
}

I'm not sure ... just grasping.

FabOr November 4, 2010 10:09

Hi,

ive deleted the ones i dont need => nothing changed
and when i set bridgeOverlap to off => case doesnt start because of uncovered faces.

regards

mbeaudoin November 6, 2010 12:46

Looks like you are using GGI patches separated by some translation offset.

You need to set the separationOffset to something else than (0 0 0).

That value would be the translation offset necessary for the 2 GGI patches to overlap each other.

Martin

Quote:

Originally Posted by FabOr (Post 282128)
Hi Foamers,

ive got some strange results using ggi-patches => see attached picture and plot-over-line, y-axis.

I use ggi-patches for minX/maxX and minY/maxY similar to a simple construction. This construction looks like a cuboid.
So the values of p,U,... of the patch minX (= master) should be transferred to maxX (=slave), same for minY/maxY. Correct me if i am wrong.
But in the plot you can see that the ggi-patch doesnt work like i want: the values of U and p on both sides dont coincide.

For better understanding and looking for mistakes here is my boundary-file:

Code:


    minX
    {
        type            ggi;
        nFaces          6549;
        startFace      182291;
    shadowPatch    maxX;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        minX_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }
    maxX
    {
        type            ggi;
        nFaces          6460;
        startFace      188840;
    shadowPatch    minX;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        maxX_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }
    minY
    {
        type            ggi;
        nFaces          600;
        startFace      195300;
    shadowPatch    maxY;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        minY_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }
    maxY
    {
        type            ggi;
        nFaces          570;
        startFace      195900;
    shadowPatch    minY;
    rotationAxis    (0 0 1);
    rotationAngle    0;
    zone        maxY_Zone;
    bridgeOverlap    on;//on
    separationOffset    (0 0 0);
    }

The patches in the U,p,..-files are described as type ggi.

Maybe this kind of mistake can be related to this error-warning running simpleFoam:

Code:

Reading/calculating face flux field phi

Initializing the GGI interpolator between master/shadow patches: minX/maxX
Evaluation of GGI weighting factors:

    From function void GGIInterpolation<MasterPatch, SlavePatch>::rescaleWeightingFactors() const
    in file /home/fabian/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude/GGIInterpolationWeights.C at line 534
    Uncovered faces found.  On master: 6549 on slave: 6460
  Largest slave weighting factor correction : 0 average: 0
  Largest master weighting factor correction: 0 average: 0

Initializing the GGI interpolator between master/shadow patches: minY/maxY
Evaluation of GGI weighting factors:

    From function void GGIInterpolation<MasterPatch, SlavePatch>::rescaleWeightingFactors() const
    in file /home/fabian/OpenFOAM/OpenFOAM-1.5-dev/src/OpenFOAM/lnInclude/GGIInterpolationWeights.C at line 534
    Uncovered faces found.  On master: 600 on slave: 570
  Largest slave weighting factor correction : 0 average: 0
  Largest master weighting factor correction: 0 average: 0

Selecting incompressible transport model Newtonian
Selecting RAS turbulence model kEpsilon

Any help and guidance is much appreciated! If you need more files/information to help me to solve my problem feel free to ask!

regards


FabOr November 8, 2010 10:47

hi,

thanks for your answer, martin.

my boundary-file:

Code:

minX
    {
        type            ggi;
        nFaces          5511;
        startFace      279799;
        shadowPatch    maxX;
        zone        minX_Zone;
        bridgeOverlap    on;
        separationOffset    (60e-06 0 0);
    }

    maxX
    {
        type            ggi;
        nFaces          5514;
        startFace      285310;
        shadowPatch    minX;
        zone        maxX_Zone;
        bridgeOverlap    on;
        separationOffset    (60e-06 0 0);
    }

    minY
    {
        type            ggi;
        nFaces          372;
        startFace      290824;
        shadowPatch    maxY;
        zone        minY_Zone;
        bridgeOverlap    on;
        separationOffset    (600e-06 0 0);
    }

    maxY
    {
        type            ggi;
        nFaces          372;
        startFace      291196;
        shadowPatch    minY;
        zone        maxY_Zone;
        bridgeOverlap    on;
      separationOffset    (600e-06 0 0);

ive also tried to set the separationOffset to:

minX: (60e-06 0 0)
maxX: (-60e-06 0 0)
minY: (0 600e-06 0)
maxY: (0 -600e-06 0)

but the problem remains. i dont get the same values of p,U on opposite sites. the uncovered faces message when starting simpleFoam also remains.

best regards

FabOr November 9, 2010 10:43

Hi,

i solved the problem.

best regards

cnsidero November 9, 2010 15:10

Can you share with us what your solution was?

FabOr November 10, 2010 04:26

1 Attachment(s)
Of course:)

i switched the patch type from ggi to cyclicGgi. then ive done the same procedure like Thomas in his test-case. some uncovered faces still remain, but that refers to my .stl-file.
as you can see in the attached plot cyclicGgi works fine!

look here for further guidance:

http://www.cfd-online.com/Forums/ope...cyclicggi.html

best regards

aqua January 19, 2012 07:50

1 Attachment(s)
Quote:

Originally Posted by FabOr (Post 282852)
Of course:)

i switched the patch type from ggi to cyclicGgi. then ive done the same procedure like Thomas in his test-case. some uncovered faces still remain, but that refers to my .stl-file.
as you can see in the attached plot cyclicGgi works fine!

look here for further guidance:

http://www.cfd-online.com/Forums/ope...cyclicggi.html

best regards

Hello, I have similar problem with you, so could you please help me on this? my error is:
Uncovered faces found. On master: 4800 on slave: 4800


--> FOAM FATAL ERROR:
Found uncovered faces for GGI interface interfacei/interfaceo
This is an unrecoverable error. Aborting.

From function void overlapGgiPolyPatch::calcPatchToPatch() const
in file meshes/polyMesh/polyPatches/constraint/overlapGgi/overlapGgiPolyPatchGeometry.C at line 186.

FOAM aborting


my geometry is as seen in the attachment, the two cubes in side stand for two cars, moving towards each other. so i only set the interface between the two parts as overlapGgi, others as patch, the icube.stl and ocube.stl as wall.

I am not sure I should change the interface type to cyclicGgi, or remain it as overlapGgi..

Thank you so much!

Aqua

timo_IHS January 19, 2012 10:04

Hallo,

I'd take "only" ggi.
Did you create faceZones of your patches?

Best

aqua January 19, 2012 12:16

Quote:

Originally Posted by timo_IHS (Post 340103)
Hallo,

I'd take "only" ggi.
Did you create faceZones of your patches?

Best

Hey,
Thank you so much for your suggestion! I changed it to ggi, when perform "decomposePar", it worked for a while then there is the error:
"Attempt to cast type genericPatch to type lduInterface
From function refCast<To>(From&) in file /bb/civ/liuyu/OpenFOAM/OpenFOAM-1.6-ext/src/OpenFOAM/lnInclude/typeInfo.H at line 115.

FOAM aborting"

yes, I had faceZones of the interfaces which are ggi type.

Could you please give more advice about the new error?
Thank you so much!
Aqua

timo_IHS January 19, 2012 12:41

Do you have
globalFaceZones (ggiPatchA_zone ggiPatchB_zone)
in your decomposeParDict?

and do you use GAMG? at a first starting point I wouldn't, cause there might be other problems.

aqua January 19, 2012 13:53

Quote:

Originally Posted by timo_IHS (Post 340148)
Do you have
globalFaceZones (ggiPatchA_zone ggiPatchB_zone)
in your decomposeParDict?

and do you use GAMG? at a first starting point I wouldn't, cause there might be other problems.

I changed something, now when run "decomposePar", there was no "foam aborting", but really "End".

Then I perform "icoDyMFoam", it's now simulating.... but i can see there is still some information like "uncovered faces found"... but it's still simulating without aborting..

Do you think it's right?

Thank you!

Aqua

timo_IHS January 20, 2012 04:53

Could you precise that?

aqua January 20, 2012 06:24

1 Attachment(s)
Quote:

Originally Posted by timo_IHS (Post 340256)
Could you precise that?

Good morning!
I want to tell that I use the tutorial case turbopassageRotating.
after some modification for my own case, I run setSet -batch setBatch; regionCellSets; setsToZones -noFliiMap.... Then I run decomposePar, OF didn't abort, but give some information like "unconvered faces found"(althought there was information like this, please notice that OF didn't abort). So after that,


I run icoDyMFoam, OF didn't abort, and now I got two files: 0.01 0.02, as in attachment.
Then I run paraFoam,Error accured like this:

Cannot find 'value' entry on patch interfacei of field p in file "/bb/civ/li
which is required to set the values of the generic patch field.

could you please help on this?

dogan May 9, 2013 10:19

Hi Fabor,

I am also getting error messages with my case, and it is somehow similar with yours. i have 2 cyclicGgi patches which contain uncovered faces, and there supposed to be a relative movement between those patches. my simulation starts, but crashes with a floating point exception error message after a while. (i can see the mesh is rotating like 1 degree). i am not sure what exactly seperationOffset is, but how should i calculate this value?

and who do you mean when you say you have done the same precedure like Thomas? can you please describe the steps one more time?
thanks and regards
Dogan

Quote:

Originally Posted by FabOr (Post 282852)
Of course:)

i switched the patch type from ggi to cyclicGgi. then ive done the same procedure like Thomas in his test-case. some uncovered faces still remain, but that refers to my .stl-file.
as you can see in the attached plot cyclicGgi works fine!

look here for further guidance:

http://www.cfd-online.com/Forums/ope...cyclicggi.html

best regards



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