View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000577OpenFOAM[All Projects] Bugpublic2012-07-09 11:052013-09-04 08:24
Assigned Toandy 
PlatformLinuxOSCentOSOS Version5.4
Product Version2.1.x 
Target VersionFixed in Version2.2.x 
Summary0000577: spray and dynamic meshes...
DescriptionReferences to


seems to cause MPI errors upon parcel injection. Commenting the lines out gives a running code. (hopefully correct for at least 3D cases)
Steps To ReproduceTransform the aachenBomb case into a dynamicMesh case and run with sprayEngineFoam solver in parallel.
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
nogenmyr (reporter)
2012-08-22 08:39

Ok, I've been digging a bit further.

meshTools::constrainToMeshCentre calls for polyMesh::geometricD(), which in turn calls polyMesh::calcDirections() only when there was a mesh update. polyMesh::calcDirections() has in turn a few MPI calls.

During run, not all processors will call constrainToMeshCentre equal amounts of time, which causes a sync problem. (my understanding). A less ugly hack than suggested above would be to let all processors call constrainToMeshCentre the same amount of times, even they do not need it for their own:

In InjectionModel<CloudType>::injectSteadyState that means adding an else-statement:

if (cellI > -1)
 .... (unaltered)
   point p(0.,0.,0.);
   Vector<scalar> v(0.,0.,0.);
   meshTools::constrainToMeshCentre(mesh, p);
andy (reporter)
2013-09-04 08:24

Thanks for the report - fixed by commit 4189687

- Issue History
Date Modified Username Field Change
2012-07-09 11:05 nogenmyr New Issue
2012-08-22 08:39 nogenmyr Note Added: 0001621
2013-09-04 08:24 andy Note Added: 0002456
2013-09-04 08:24 andy Status new => resolved
2013-09-04 08:24 andy Fixed in Version => 2.2.x
2013-09-04 08:24 andy Resolution open => fixed
2013-09-04 08:24 andy Assigned To => andy