18 if (doDecompose && Pstream::parRun())
20 faMeshReconstructor reconstructor(
aMesh);
21 reconstructor.writeAddressing();
28 PtrList<areaScalarField> areaScalarFields;
29 PtrList<areaVectorField> areaVectorFields;
30 PtrList<areaSphericalTensorField> areaSphTensorFields;
31 PtrList<areaSymmTensorField> areaSymmTensorFields;
32 PtrList<areaTensorField> areaTensorFields;
34 const faMesh& fullMesh = reconstructor.mesh();
44 reconstructor.writeMesh();
49 auto oldHandler =
fileHandler(fileOperation::NewUncollated());
52 IOobjectList objects(fullMesh.time(),
runTime.timeName());
56 fullMesh, objects, areaScalarFields
60 fullMesh, objects, areaVectorFields
64 fullMesh, objects, areaSphTensorFields
68 fullMesh, objects, areaSymmTensorFields
72 fullMesh, objects, areaTensorFields
84 const label nAreaFields =
86 areaScalarFields.size()
87 + areaVectorFields.size()
88 + areaSphTensorFields.size()
89 + areaSymmTensorFields.size()
90 + areaTensorFields.size()
95 Info<<
"Decomposing " << nAreaFields <<
" area fields" <<
nl;
97 faFieldDecomposer fieldDecomposer
101 reconstructor.edgeProcAddressing(),
102 reconstructor.faceProcAddressing(),
103 reconstructor.boundaryProcAddressing()
106 if (areaScalarFields.size())
110 fieldDecomposer.decomposeFields(areaScalarFields);
113 if (areaVectorFields.size())
117 fieldDecomposer.decomposeFields(areaVectorFields);
120 if (areaSphTensorFields.size())
122 Info<<
" sphTensors: "
124 fieldDecomposer.decomposeFields(areaSphTensorFields);
127 if (areaSymmTensorFields.size())
129 Info<<
" symmTensors: "
131 fieldDecomposer.decomposeFields(areaSymmTensorFields);
134 if (areaTensorFields.size())
138 fieldDecomposer.decomposeFields(areaTensorFields);