62 label bFacei = pp.offset()+i;
63 destProc[bFacei] = decomposition[
faceCells[i]];
71 for (
const auto& pp : pbm)
73 const auto* ppp = isA<cyclicAMIPolyPatch>(pp);
76 const auto& cycPp = *ppp;
77 const auto& nbrPp = cycPp.neighbPatch();
78 const labelList nbrDecomp(decomposition, nbrPp.faceCells());
79 labelList thisDecomp(decomposition, cycPp.faceCells());
83 cycPp.AMI().interpolateToSource
102 nbrPp.AMI().interpolateToTarget
122 label& proc = destProc[cycPp.offset()+i];
123 proc =
min(proc, thisDecomp[i]);
137 coeffDict_(constraintDict)
147 coeffDict_(constraintDict)
171 const word& modelType
174 Info<<
"Selecting decompositionConstraint " << modelType <<
endl;
176 auto* ctorPtr = dictionaryConstructorTable(modelType);
183 "decompositionConstraint",
185 *dictionaryConstructorTablePtr_
Info<< nl<< "Wrote faMesh in vtk format: "<< writer.output().name()<< nl;}{ vtk::lineWriter writer(aMesh.points(), aMesh.edges(), fileName(aMesh.mesh().time().globalPath()/"finiteArea-edges"));writer.writeGeometry();writer.beginCellData(4);writer.writeProcIDs();{ Field< scalar > fld(faMeshTools::flattenEdgeField(aMesh.magLe(), true))
void setSize(const label n)
Alias for resize()
static autoPtr< Time > New()
Construct (dummy) Time - no functionObjects or libraries.
Pointer management similar to std::unique_ptr, with some additional methods and type checking.
Abstract class for handling decomposition constraints.
void getMinBoundaryValue(const polyMesh &mesh, const labelList &decomposition, labelList &destProc) const
Get minimum label across coupled boundary faces.
A list of keyword definitions, which are a keyword followed by a number of values (eg,...
T get(const word &keyword, enum keyType::option matchOpt=keyType::REGEX) const
Smooth ATC in cells next to a set of patches supplied by type.
A polyBoundaryMesh is a polyPatch list with additional search methods and registered IO.
Mesh consisting of general polyhedral cells.
const polyBoundaryMesh & boundaryMesh() const
Return boundary mesh.
A patch is a list of labels that address the faces in the global face list.
label nBoundaryFaces() const noexcept
Number of boundary faces (== nFaces - nInternalFaces)
A class for handling words, derived from Foam::string.
#define defineTypeNameAndDebug(Type, DebugSwitch)
Define the typeName and debug information.
#define FatalIOErrorInLookup(ios, lookupTag, lookupName, lookupTable)
Report an error message using Foam::FatalIOError.
messageStream Info
Information stream (stdout output on master, null elsewhere)
Ostream & endl(Ostream &os)
Add newline and flush stream.
label min(const labelHashSet &set, label minValue=labelMax)
Find the min value in labelHashSet, optionally limited by second argument.
errorManipArg< error, int > exit(error &err, const int errNo=1)
#define defineRunTimeSelectionTable(baseType, argNames)
Define run-time selection table.
#define forAll(list, i)
Loop across all elements in list.