CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Pre-Processing (
-   -   Basic usage of pimpleDyMFoam (

jferrari February 28, 2012 18:17

Basic usage of pimpleDyMFoam
I have been able to run the 2D tutorial case supplied with the pimpleDyMFoam solver; however, I would like to begin running my own cases. My only experience so far is with the icoFoam solver - the manual breaks down the basic usage (you need at least the constant folder with the polyMesh folder with transportProperties, blockMesh... system/controlDict, etc), but what exactly do I need for the pimpleDyMFoam solver?

As a more general question, how can I dissect these solvers to know what information they are looking for in order to use them on a basic (and hopefully eventually advanced) level?

I apologize if this is too vague a question - let me know if I need to be more specific.

Thanks in advance

jferrari March 2, 2012 10:16

Just documenting my progress so future readers may see one user's process:

The 2D case is the mixerVessel2DAMI. As stated in my previous post I'm able to run it just fine. In the interest of figuring out what exactly is "necessary", I have started removing as many files as I can and as much information from the dictionary files as I can while still keeping the code running. For example, there is a set folder in the polyMesh folder that contains 2 files - AMI and rotor. I have deleted everything other than blockMeshDict from the polyMesh folder, then run the blockMesh utility - everything except the AMI file appear and the results don't appear to be any different in paraview.

I have also removed information from the transportProperties file - it isn't using any special viscosity model, so the coefficients present for those models aren't even being read - it runs fine without that information.

Next I tried removing some of the turbulence files and information (I don't remember exactly what - I'm not posting this from my home workstation so I'll need to update this when home). I did this because in the turbulence dictionary there was a keyword 'laminar' in there, so I'm assuming that the solver won't be looking for any turbulence properties or will just zero them out.

The last thing I tried was severely altering the blockMeshDict file. First I removed the patches defining the blades of the rotor and stator. That worked. For the tutorial case there are about 100 or so verticies - I tried to trim this down to 12 on each plane and therefore 24 total for this 2D case. This returned errors when running the blockMesh utility. I think (not 100% sure) this is because the .stl file describing the AMI has more points than what I was providing in the blockMeshDict file and that I need to specify the same points in both the .stl file and the AMI in the blockMeshDict file. I'll try to figure this out later today.

desmoge August 5, 2013 17:37

Hi there, jferrari. I believe I've found your Master Thesis online and since I'm a newbie with dynamic mesh problems I'm using it as a helpful reference. I'm currently experiencing a problem with parallel running. Everything goes smooth with decomposition and reconstructing processes but something goes wrong when I tell to OF to keep running the simulation starting from the latest time step. Here below part of the error I get in the output file:
[22] in "/home/gcampite/OpenFOAM/OpenFOAM-2.1.1/platforms/linux64GccDPOpt/bin/pimpleDyMFoam"
[22] #19 __libc_start_main in "/home/gcampite/OpenFOAM/OpenFOAM-2.1.1/platforms/linux64GccDPOpt/lib/"
[17] #18 in "/home/gcampite/OpenFOAM/OpenFOAM-2.1.1/platforms/linux64GccDPOpt/lib/"
[13] #18 [23] in "/home/gcampite/OpenFOAM/OpenFOAM-2.1.1/platforms/linux64GccDPOpt/bin/pimpleDyMFoam"
[23] #19 __libc_start_main[14] in "/home/gcampite/OpenFOAM/OpenFOAM-2.1.1/platforms/linux64GccDPOpt/bin/pimpleDyMFoam"
[14] #19 __libc_start_main[19] in "/home/gcampite/OpenFOAM/OpenFOAM-2.1.1/platforms/linux64GccDPOpt/bin/pimpleDyMFoam"
[19] #19 __libc_start_main

I think that since the simulation starts just fine from the 0 folder, the problem might be that OF is not keeping track of the geometry position changing with time, so it doesn't know where to start again when I ask it to re-run starting from the latest time in controlDict.


jferrari August 5, 2013 18:21

Are you decomposing again before restarting?

desmoge August 5, 2013 18:25

yes I'm doing it. I use exactly the same processors number and methodology (scotch).

jferrari August 5, 2013 18:31

Then based on the information you've provided I'm not sure why your simulation isn't working.

desmoge August 5, 2013 18:34

Probably this other error message part lested below can help you to understand better my situation

[26] Attempt to cast type N4Foam5token8CompoundINS_4ListIdEEEE to type N4Foam5token8CompoundINS_4ListINS_6VectorIdEEEEEE
[26] From function dynamicCast<To>(From&)
[26] in file /home/punk/OpenFOAM/OpenFOAM-2.1.1/src/OpenFOAM/lnInclude/typeInfo.H at line 93.

Thanks a lot for helping me btw, I appreciate it

jferrari August 5, 2013 18:48

Honestly I don't know what's wrong and error messages rarely tell the whole story. From what you've posted I'd start looking in typeInfo.H on line 93 and see what exactly the code is trying to accomplish at that point.

It's been a few months since I've been in the details of running the code, but if I recall correctly there is a file written to every time directory that keeps track of the morphing mesh (just like p, U, nut, k, whatever other variables you have)........ I think it's pointDisplacement but I could be confusing that with a sub dictionary in the controlDict dictionary.

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