CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM (
-   -   Parallelize multi mesh case with OFoam (

magjohan April 18, 2011 12:25

Parallelize multi mesh case with OFoam
Hi foamers!

Im stuck with a problem where i want to parallelize my solver. The problem for
me is that my problem consists of 30 different meshes, each of them placed in the time-step folders 0.00000, 1.00000 ... 30.00000.

It may sound confusing but due to rotation, symmetry and previous developers I cant do anything about that.

Is there a way to take advantage of OpenFOAMs MPI in my case, I would be glad to hear your ideas!:)


wyldckat April 19, 2011 20:54

Hi Johan,

OK, I've got a few questions:
  1. How exactly do the 30 meshes relate to each other?
  2. Are each a region of a bigger geometry?
  3. Or are they a dynamic evolution of the same original mesh? For example, an object moving inside a mesh, that makes the mesh morph and change cells.
  4. What type of parallelism are you looking for?
  5. Is it multi-region, multiphase, particles transport, transient or stationary?
  6. Is it an engine like thing? For example, see the "combustion/engineFoam/kivaTest" tutorial.
I ask these questions, because for each one there is a different way to solve the case.

Best regards,

magjohan April 19, 2011 22:14

Thanks for the reply!

1. Okey, the meshes are representing a time step (which also corresponds to one degree), of a symmetric rotational case. I.e after 30 degrees, or time steps, symmetry is reached and i continues from 0 again.

2. They regions are not regions of a bigger geometry. They are all the same geometry, the difference between them are that they are rotated 1 deg compared to the previous one.

3. Lets say its a circle that rotates around origo.

4. Im looking for a way to be able to use a multi-core system. Only one core is for the moment used. I thought i wanted something like "dividing" the mesh in different sections.

5. It is a transient case with a different perspective of moving in time. The time-steps are fixed.

6. Not an engine thing, no combustion or vice versa. The solver are totally in-house developed and due to restrictions I cant talk to much about it.

Anyway, thanks again and a lot for the reply, my answers may sound diffuse but I hope they can help you!

wyldckat April 20, 2011 07:02

Hi Johan,

I've also read the PM you sent me. As far as I can tell, the tutorials/solvers you can look at for ideas are:
  • The tutorial "combustion/engineFoam/kivaTest", because it uses the piston inside the engine in various positions, and I think "engineFoam" should be able to run in parallel, although I'm not 100% certain.
  • The tutorials for "incompressible/pimpleDyMFoam", including the respective solver "pimpleDyMFoam", since (if I'm not mistaken) its transient and uses dynamic meshes.
  • The tutorials for "multiphase/interDyMFoam", along with its solver "interDyMFoam", because some useful ideas may be collected from this solver, since it's transient and takes into account stuff that "pimpleDyMFoam" doesn't.
This is as far as I can help :( I'm not sufficiently familiar with these solvers to help you out.

Best regards and good luck!

All times are GMT -4. The time now is 05:35.