CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Running, Solving & CFD (
-   -   Why are pointVectorFields not mapped using mapFields? (

maxof May 16, 2012 07:22

Why are pointVectorFields not mapped using mapFields?
Hi all,
I am simulating boats which are free to heave and trim using interDyMFoam (OF-2.1.0). To make my simulations more efficient, I want to map a coarse mesh solution onto a fine mesh. I works perfectly as long as the object isnt moving. For some reason pointVectorFields (ie the pointDisplacement file) do not get mapped, even though they are required to run the simulation in the the target directory. I tried to grep the orientation (of the moving object) from the source directories pointDisplacement file and chucked it into the target directories file, but that is obviously not working. That draw a few questions regarding my understanding of mapFields and interDyMFoam:

Q1: Why are pointVectorFields not mapped?
Q2: How do I map the mesh deformation correctly?
Q3: Why is there a pointDisplacement AND cellDisplacement file, isnt that redundant information? Latter one is mapped OK.

Grateful for any advice!

Cheers, Max

maxof May 16, 2012 19:54

Well I just figured out how to solve Q2: You simply specify (deformed) orientation and centreOfMass AND initialOrientation and initialCentreOfMass. The actual points will be moved accordingly by the solver and the cellDisplacement too. Too easy!

Cheers, Max

Henning86 April 23, 2014 08:44


i have a similar problem with interDyMFoam (moving mesh) and mapFields. I just want to map from a coarse to a fine mesh but the solver crashes probably caused by the cell movement.

How did you solve the problem?

i use the command:

mapFields -sourceTime latestTime -consistent

Best regards


Henning86 April 23, 2014 11:35


i figured it out.

mapFields doesn't take moving meshes into account. The domains of both cases dont match since the displacement isn't considered resulting in a crash.

It can be solved by using a dynamicMesh instead of fvmesh in mapFields

1. replace all fvmesh with solidBodyMotionFvMesh

2. update Header

3 compile

If you map the fields from the sourcecase to the target case the time folders need to be identical and the target case folder needs to be empty.

best regards


wyldckat April 25, 2014 15:31

Greetings Henning,

It might make sense to report this issue on the bug tracker: - specially since you've already found the solution ;)

Although, there is a limitation to this: if you change all "fvMesh" references to "solidBodyMotionFvMesh" or similar, then mapFields will only work if the file "constant/dynamicMeshDict" exists.

Best regards,

All times are GMT -4. The time now is 16:48.