CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > OpenFOAM > OpenFOAM Running, Solving & CFD

Is it possible to avoid reconstructParMesh?

Register Blogs Community New Posts Updated Threads Search

Like Tree5Likes
  • 2 Post By eric
  • 2 Post By Rojj
  • 1 Post By RobertHB

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   February 5, 2018, 07:25
Default Is it possible to avoid reconstructParMesh?
  #1
Member
 
Ruggiero Guida
Join Date: Apr 2013
Location: World
Posts: 46
Rep Power: 13
Rojj is on a distinguished road
Hi,

I am running a quite large case and the reconstruction of the mesh takes a very long time.

Is it possible to run mpirun simpleFoam without having to reconstruct the mesh and decompose it again?

I am running OF 4.1. My current workflow is

blockMesh
surfaceFeatureExtract
decomposePar
mpirun -np X snappyHexMesh -overwrite -parallel

reconstructParMesh -constant

decomposePar
mpirun -np X renumberMesh -overwrite -parallel
mpirun -np X simpleFoam -overwrite -parallel

I know that I can postProcess without reconstructing the case, but can I go from decomposed mesh to solution directly?

Thanks!
Rojj is offline   Reply With Quote

Old   February 5, 2018, 09:00
Post
  #2
Member
 
Knut Erik T. Giljarhus
Join Date: Mar 2009
Location: Norway
Posts: 35
Rep Power: 22
eric will become famous soon enough
Yes, you do not need to recompose the mesh before running the solver. Have a look at the Allrun file in for instance the motorBike tutorial:
$FOAM_TUTORIALS/incompressible/simpleFoam/motorBike/Allrun

There are some commands there that help copying the 0 folder to all the individual processors. In OpenFOAM 5, you can just add -copyZero as argument to the decomposePar command.
Rojj and aow like this.
eric is offline   Reply With Quote

Old   February 5, 2018, 16:15
Default
  #3
Member
 
Ruggiero Guida
Join Date: Apr 2013
Location: World
Posts: 46
Rep Power: 13
Rojj is on a distinguished road
Thanks Eric! Can't even tell you how much it has helped me.

For future readers...

After sHM in parallel you need to run

Code:
ls -d processor* | xargs -I {} rm -rf ./{}/0
ls -d processor* | xargs -I {} cp -r 0.orig ./{}/0
This is a nice linux way to replace all the 0 folders in the processorX folder with the original ones.

Remember to add

Code:
#includeEtc "caseDicts/setConstraintTypes"
in all the boundary fields. This will cause an error if you are using PyFOAM (I am). In that case just replace the actual content of caseDicts/setConstraintTypes.


I finally run (not sure if patchSummary is needed)

Code:
mpirun --mca orte_base_help_aggregate 0 -np X patchSummary -parallel
mpirun --mca orte_base_help_aggregate 0 -np X renumberMesh -overwrite -parallel
mpirun --mca orte_base_help_aggregate 0 -np X simpleFoam -parallel
If you want to reconstruct the case at this point, you also need to reconstruct the constant directory so

Code:
reconstructParMesh -constant
reconstructPar -latestTime
aow and LucaVerzeroliSeriomac like this.
Rojj is offline   Reply With Quote

Old   February 6, 2018, 04:27
Default
  #4
Senior Member
 
Robert
Join Date: May 2015
Location: Bremen, GER
Posts: 292
Rep Power: 11
RobertHB is on a distinguished road
And you don't necessarily need to reconstruct. Using paraFoam -builtin you can view your decomposed case in paraview.
wht likes this.
RobertHB is offline   Reply With Quote

Old   February 6, 2018, 05:54
Default
  #5
Senior Member
 
akidess's Avatar
 
Anton Kidess
Join Date: May 2009
Location: Germany
Posts: 1,377
Rep Power: 29
akidess will become famous soon enough
Quote:
Originally Posted by RobertHB View Post
And you don't necessarily need to reconstruct. Using paraFoam -builtin you can view your decomposed case in paraview.
Also works with normal ParaView.
__________________
*On twitter @akidTwit
*Spend as much time formulating your questions as you expect people to spend on their answer.
akidess is offline   Reply With Quote

Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
[Other] Using reconstructParMesh on a cluster, bottle neck and out of memory KTG OpenFOAM Meshing & Mesh Conversion 2 May 5, 2017 12:48
How to avoid the pebble-pebble contact liulimin STAR-CCM+ 0 October 25, 2016 22:47
reconstructParMesh + GGI problem jiejie OpenFOAM Post-Processing 0 August 14, 2012 02:10
reconstructParMesh not working with an axisymetric case francesco OpenFOAM Bugs 4 May 8, 2009 05:49
how to avoid self intersection:Proam bala Siemens 5 March 6, 2008 04:23


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