void Foam::SurfaceFilmModel<CloudType>::cacheFilmFields ( const label filmPatchI, const label primaryPatchI, const mapDistribute& distMap, const regionModels::surfaceFilmModels::surfaceFilmModel& filmModel ) { massParcelPatch_ = filmModel.cloudMassTrans().boundaryField()[filmPatchI]; distMap.distribute(massParcelPatch_); diameterParcelPatch_ = filmModel.cloudDiameterTrans().boundaryField()[filmPatchI]; distMap.distribute(diameterParcelPatch_); UFilmPatch_ = filmModel.U().boundaryField()[filmPatchI]; distMap.distribute(UFilmPatch_); rhoFilmPatch_ = filmModel.rho().boundaryField()[filmPatchI]; distMap.distribute(rhoFilmPatch_); deltaFilmPatch_[primaryPatchI] = filmModel.delta().boundaryField()[filmPatchI]; distMap.distribute(deltaFilmPatch_[primaryPatchI]); }
void Foam::distributedTriSurfaceMesh::distributeFields ( const mapDistribute& map ) { typedef DimensionedField<Type, triSurfaceGeoMesh> DimensionedSurfField; HashTable<DimensionedSurfField*> fields ( objectRegistry::lookupClass<DimensionedSurfField>() ); for ( typename HashTable<DimensionedSurfField*>::iterator fieldIter = fields.begin(); fieldIter != fields.end(); ++fieldIter ) { DimensionedSurfField& field = *fieldIter(); label oldSize = field.size(); map.distribute(field); if (debug) { Info<< "Mapped " << field.typeName << ' ' << field.name() << " from size " << oldSize << " to size " << field.size() << endl; } } }