49 Info<<
" Reading mesh boundaries" <<
endl;
51 const_cast<word&
>(IOPtrList<entry>::typeName) = polyBoundaryMesh::typeName;
52 IOPtrList<entry> boundaryPatchList
67 PtrList<entry> boundaryPatchListNew;
68 forAll(boundaryPatchList, patchI)
71 const word pType =
dict.get<word>(
"type");
72 bool procPatch = pType == processorPolyPatch::typeName;
77 label nFaces =
dict.get<label>(
"nFaces");
86 boundaryPatchListNew.append(boundaryPatchList[patchI].clone());
90 boundaryPatchList.transfer(boundaryPatchListNew);
92 return boundaryPatchList;
107 names_.setSize(boundaryDict_.size());
108 types_.setSize(boundaryDict_.size());
109 constraint_.setSize(boundaryDict_.size(),
false);
110 groups_.setSize(boundaryDict_.size());
112 forAll(boundaryDict_, patchI)
116 names_[patchI] =
dict.dictName();
117 dict.readEntry(
"type", types_[patchI]);
118 if (polyPatch::constraintType(types_[patchI]))
120 constraint_[patchI] =
true;
123 if (
dict.readIfPresent(
"inGroups", groups_[patchI]))
125 allGroupNames_.insert(groups_[patchI]);
159 return allGroupNames_;
165 if (constraint_[patchI])
177 if (condition ==
"wall")
179 types_[patchI] = condition;
183 types_[patchI] =
"patch";
186 dictionary& patchDict = boundaryDict_[patchI].dict();
187 patchDict.add(
"type", types_[patchI],
true);
193 boundaryDict_.write();
bool match(const UList< wordRe > &patterns, const std::string &text)
Return true if text matches one of the regular expressions.
void setType(const label patchI, const word &condition)
Set the patch type based on the condition.
Ostream & endl(Ostream &os)
Add newline and flush stream.
regExpPosix regExp
Selection of preferred regular expression implementation.
Ignore writing from objectRegistry::writeObject()
#define forAll(list, i)
Loop across all elements in list.
const List< wordList > & groups() const
Groups.
bool returnReduceAnd(const bool value, const label comm=UPstream::worldComm)
Perform logical (and) MPI Allreduce on a copy. Uses UPstream::reduceAnd.
const wordList & names() const
Patch names.
const wordList & types() const
Patch types.
defineTemplateTypeNameAndDebug(faScalarMatrix, 0)
Foam::word regionName(args.getOrDefault< word >("region", Foam::polyMesh::defaultRegion))
const boolList & constraint() const
Constraint flag.
fileName meshDir() const
Return the local mesh directory (dbDir()/meshSubDir)
const wordHashSet & allGroupNames() const
Set of all group names.
messageStream Info
Information stream (stdout output on master, null elsewhere)
void write() const
Write the boundary dictionary.
Do not request registration (bool: false)
boundaryInfo(const Time &runTime, const word ®ionName)
Constructor.