CFD Online Discussion Forums

CFD Online Discussion Forums (https://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (https://www.cfd-online.com/Forums/openfoam-solving/)
-   -   GGI in OpenFOAM (https://www.cfd-online.com/Forums/openfoam-solving/63254-ggi-openfoam.html)

hjasak April 2, 2009 07:08

GGI in OpenFOAM
 
Dear All,

I am happy to announce that I have now finished the implementation of the General Grid Interface (GGI) in OpenFOAM, including massive parallelisation and algebraic multigrid solver (this was a struggle). The SVN snapshot, including the updated tutorial will be uploaded later today.

Please note that as a part of parallelisation I have changed the domain decomposition tools AND the definition of the GGI - you will have to (slightly) update the existing cases.

Since GGI is pretty popular and quite tricky to set up, I would like to propose a skype teleconference with a demonstration, some background, tutorial and a series of slides on how to use the feature. Please drop me a line if you are interested and we at Wikki will do the organisation.

Many thanks to people who contributed to the code - you know who you are. I also expect to present the details of numerics, implementation and parallelisation on the Workshop in Montreal

Enjoy,

Hrv

bastil April 2, 2009 12:18

Hrv,

that sounds great to me. Thank you very much. I will give it a try soon.

Regards BastiL

yuhai April 7, 2009 14:58

Quote:

Originally Posted by hjasak (Post 211703)
Dear All,


Since GGI is pretty popular and quite tricky to set up, I would like to propose a skype teleconference with a demonstration, some background, tutorial and a series of slides on how to use the feature. Please drop me a line if you are interested and we at Wikki will do the organisation.

Hrv

Thanks for all the efforts, and what is your skype account?
I am insterested in.
Anyone else?

helmut April 8, 2009 15:18

Hi Hrv,

This sounds good to me. Please put me on the list for the proposed teleconf.

Thanks,
Helmut

syed April 9, 2009 08:27

Hello Hrv,

Thanks for this great work. I like to know more about Ggi, and how to work with that. Would you add my name to the list for teleconf?

Thank you
Mojab

bastil April 9, 2009 17:20

Hrv,

I have run first tests now and everything works fine so far. Thank you very much.

braennstroem April 14, 2009 06:27

I would like to join you skype session, but have no webcam and never used it before. Is it possible to just listen and watch? Would be nice :-)

Fabian

lakeat April 14, 2009 21:03

I'd like to be in too

NickG April 17, 2009 06:27

Hi Hrv

Thanks for the huge amount of effort that this all must have taken. Would it be possible to record and post the video conference as a tutorial file in OpenFOAM? Also I am unable to find ggi on the subversion repository - What is it called and which package is it in?

Thanks again

Nick

mbeaudoin April 17, 2009 15:30

Hello,

The GGI is now part of the main OpenFOAM-1.5-dev libraries, and is not provided as a separate package.

Martin

Quote:

Originally Posted by NickG (Post 213245)
Hi Hrv

Thanks for the huge amount of effort that this all must have taken. Would it be possible to record and post the video conference as a tutorial file in OpenFOAM? Also I am unable to find ggi on the subversion repository - What is it called and which package is it in?

Thanks again

Nick


hjasak April 19, 2009 13:54

OpenFOAM GGI webcast
 
Dear All,

Thank you for your responses, both through the Forum and directly. We have picked Thursday 14/May/2009 14.00 GMT for the webcast, which will be done as a teleconference + pdf slides.

To register, please E-mail enquiries@wikki.co.uk with your name, affiliation and contact details.

Hrv

hani April 20, 2009 03:12

Thanks for your great work!
 
Hi,

I would like to thank you for this very useful development.

I'm sure that Martin Beaudoin 'knows who he is', but I would like to acknowledge him in name, as one of the guys who did much of the work.

Håkan.

danielespezianiphitecingegneriait April 20, 2009 03:36

missed OpenFOAM GGI webcast
 
Hi Hrv

Is there any available documentation about the GGI implementation, as video recordings or slides? Unfortunately I missed the webcast!

Thanks again

Daniele

marico April 20, 2009 04:36

Thats really crazy, Daniele... Tell me how to live in future... ;)

danielespezianiphitecingegneriait April 20, 2009 04:46

Marico,

You are right, and fortunately I am living in the present with some look to the future :). I just have not read the month correctly.
In any case Hrv please add me into your list

Daniele

Quote:

Originally Posted by marico (Post 213489)
Thats really crazy, Daniele... Tell me how to live in future... ;)


auvinen April 29, 2009 11:25

GGI user report
 
3 Attachment(s)
First, I'd like to applaud Martin Beaudoin and Hrvoje Jasak for their amazing efforts with the GGI. Truly inspiring work!

It's now time to expose the GGI to the real world and begin to accumulate the experiences. Here is my brief report which includes both success stories and problems. (The story will continue in Montreal, but hopefully without the problems section.)

Case:
A single-blade pump in a volute. Incompressible, turbulent flow.

Mesh:
Two separately generated GridPro meshes, one for the impeller (rotor) and the other for the volute (casing). Total number of cells appr. 1.15M and on the impeller avg. y+~=42 (wall functions). The GGI patches were completely non-matching: insideGGI/outsideGGI = 10080/9744 faces.

MRFSimpleFoam:
I had no difficulty setting up the problem and computing a quasi-steady (frozen-rotor) solution with both kEpsilon and kOmegaSST turbulence models. The error in the mass flux across the GGI was:
GGI pair (insideGGI, outsideGGI) : 0.0588090734 0.0588615586 Diff = -8.7289918e-05 or 0.148429338 %.

turbDyMFoam:
I managed to start a single-processor time-accurate run using the quasi-steady solution as an initial guess, but I had great difficulties keeping the pressure under control (now I know why). Once the pressure did settle - I had to use a very small time step - I managed to compute about 1.2 revolutions with the deltaT corresponding to 0.5deg per time step. So, the GGI seems to work! The pressure behavior continued to be 'noisy', but remained sensible as you can see in the picture (head.jpg).

I stopped to update my dev installation to this latest version and followed the mixerGgi-tutorial's example in changing the setup. (Btw, the zone treatment is now much better than before.) I think I got everything right, but when I restarted the time-accurate computation, the pressure problems came back two fold. Now that I had to dig a bit deeper I noticed the following:

1. Mass flux (phi) across the impeller wall is, clearly, not zero.
2. Uz on the impeller wall is not zero. (The rotation axis is the z-axis.) See the picture (Uz_impeller.jpg). In fact, they had not been zero since I started the turbDyMFoam run.

I've checked my case setup many times, but I cannot find anything wrong with it. The wall velocities worked beautifully with the MRFSimpleFoam computations. So, I guess there is a bug in the mixerGgiFvMesh, but I'm unable to identify it. Perhaps this is a enough for Hrv and Martin to get to the bottom of this. The tutorial is 2D so it doesn't yield any help on this. Has anyone else seen something like this?

This story will continue in Montreal, where I hope to present something good. I hope this problem has an easy fix -- perhaps at my end.

Best regards,
- mikko

olivier April 29, 2009 13:50

Hi Mikko

We are doing similar simulations except that I stayed in 2D for now. I did use MRFSimpleFoam and turbDyMFoam as well, using the ggi, and I had the same problem than you, having trouble with the pressure. I came to the same conclusion than you, having a small time step solves the problem, and that is quite logical, as the mesh is physically moving, the time step should be so that you rotate the mesh not more than one or two cells each step.

However, as I am in 2D I didn't see the problem with the walls, but I have seen a case quite recently where the wall boundaries were not correctly set, but it still worked in MRFSimpleFoam, as nothing really turned.
Did you put a zeroGradient for the pressure on your walls, and a fixedValue (0 0 0) for the velocity at the wall?

Good luck!

Olivier

auvinen April 30, 2009 03:19

Hi Olivier,

The tangential velocities on the rotating wall computed by MRFZone (for MRFSimpleFoam) and mixerGgiFvMesh (for turbDyMFoam) agree nicely. It's the z-direction that is faulty. It can be easily seen how the wall velocities are computed by the MRFZone, but I cannot say the same about mixerGgiFvMesh. Hopefully someone with greater code fluency can bring further light onto this issue.

I added a new picture with a tighter scale to show how the Uz follows the z-component of the face normals, with maximum/minimum values around 45deg. If you're working with 2D geometries, you won't see this at all. You wouldn't have any 3D geometries lying around?

Perhaps the cylindrical coordinate system is at the root of this problem.

Yours,
- mikko

olivier April 30, 2009 09:03

Hi Mikko

I see what you mean. As you said with my 2D geometry, I don't have this problem. I do however have a 3D geometry of the ercoftac pump, meshed already, maybe I could share it with you if you want. I need to clean it a bit though and to work on it a bit first.

Olivier

hjasak April 30, 2009 13:38

Hi Mikko,

What you need is is called a movingWallVelocity boundary condition: this will make sure the velocity on the surface of the impeller (which MUST be in global Cartesian coordinates) is automatically updated to make sure the mass flux is exactly zero.

Looking forward to some updates + pretty pictures to show everybody what an open source effort can lead to.

Best,

Hrv


All times are GMT -4. The time now is 18:17.