50 void printMesh(
const Time& runTime,
const polyMesh& mesh)
61 template<
class ZoneType>
72 Info<<
"Removing zone " << setName <<
" at index " << zoneID <<
endl;
83 oldToNew[zoneID] = newI;
120 Info<<
"Removing file " <<
object <<
endl;
125 if (setType == cellZoneSet::typeName)
133 else if (setType == faceZoneSet::typeName)
141 else if (setType == pointZoneSet::typeName)
160 Info<<
" mesh not changed." <<
endl;
165 Info<<
" points moved; topology unchanged." <<
endl;
170 Info<<
" topology changed; patches unchanged." <<
nl
172 printMesh(mesh.
time(), mesh);
177 Info<<
" topology changed and patches changed." <<
nl
179 printMesh(mesh.
time(), mesh);
186 <<
"Illegal mesh update state "
196 int main(
int argc,
char *argv[])
204 "do not synchronise selection across coupled patches"
227 meshReadUpdate(mesh);
250 currentSet =
topoSet::New(setType, mesh, setName, 10000);
251 Info<<
"Created " << currentSet().type() <<
" "
267 Info<<
"Read set " << currentSet().type() <<
" "
268 << setName <<
" with size "
291 source().applyToSet(action, currentSet());
293 if (!noSync) currentSet().sync(mesh);
294 currentSet().write();
317 currentSet().
name() +
"_old2",
322 currentSet().
clear();
326 currentSet().subset(oldSet());
328 if (!noSync) currentSet().sync(mesh);
329 currentSet().write();
335 Info<<
" Clearing " << currentSet().type() <<
endl;
336 currentSet().
clear();
337 currentSet().write();
342 Info<<
" Inverting " << currentSet().type() <<
endl;
343 currentSet().invert(currentSet().maxSize(mesh));
344 currentSet().write();
350 removeSet(mesh, setType, setName);
356 <<
"Unhandled action " << action <<
endl;
360 if (currentSet.
valid())
362 Info<<
" " << currentSet().type() <<
" "
363 << currentSet().name()
#define forAll(list, i)
Loop across all elements in list.
List of IOobjects with searching and retrieving facilities.
label findZoneID(const word &zoneName) const
Find zone index given a name.
void clearAddressing()
Clear addressing.
A templated 1D list of pointers to objects of type <T>, where the size of the array is known and used...
void reorder(const labelUList &oldToNew)
Reorders elements. Ordering does not have to be done in.
void setSize(const label)
Reset size of PtrList. If extending the PtrList, new entries are.
Class to control time during OpenFOAM simulations that is also the top-level objectRegistry.
virtual void setTime(const Time &)
Reset the time and time-index to those of the given time.
word findInstance(const fileName &dir, const word &name=word::null, const IOobject::readOption rOpt=IOobject::MUST_READ, const word &stopInstance=word::null) const
Return the location of "dir" containing the file "name".
word userTimeName() const
Return current user time name with units.
label size() const
Return the number of elements in the UPtrList.
static void addBoolOption(const word &opt, const string &usage="")
Add to a bool option to validOptions with usage information.
bool optionFound(const word &opt) const
Return true if the named option is found.
An auto-pointer similar to the STL auto_ptr but with automatic casting to a reference to the type and...
bool valid() const
Return true if the autoPtr valid (ie, the pointer is set)
void clear()
Delete object (if the pointer is valid) and set pointer to.
A list of keyword definitions, which are a keyword followed by any number of values (e....
ITstream & lookup(const word &, bool recursive=false, bool patternMatch=true) const
Find and return an entry data stream.
const dictionary & optionalSubDict(const word &) const
Find and return a sub-dictionary if found.
const word & name() const
Return const reference to name.
A class for handling file names.
virtual void flush() const
Forcibly wait until all output done. Flush any cached data.
label nTotalFaces() const
Return total number of faces in decomposed mesh. Not.
label nTotalPoints() const
Return total number of points in decomposed mesh. Not.
label nTotalCells() const
Return total number of cells in decomposed mesh.
const Time & time() const
Return time.
Mesh consisting of general polyhedral cells.
const fileName & facesInstance() const
Return the current instance directory for faces.
const meshFaceZones & faceZones() const
Return face zones.
readUpdateState
Enumeration defining the state of the mesh after a read update.
const globalMeshData & globalData() const
Return parallel info.
const meshPointZones & pointZones() const
Return point zones.
readUpdateState readUpdate()
Update the mesh based on the mesh files saved in.
const polyBoundaryMesh & boundaryMesh() const
Return boundary mesh.
static word meshSubDir
Return the mesh sub-directory name (usually "polyMesh")
const boundBox & bounds() const
Return mesh bounding box.
const meshCellZones & cellZones() const
Return cell zones.
virtual bool write(const bool write=true) const
Write using setting from DB.
static void addOptions(const bool constant=true, const bool withZero=false)
Add the options handled by timeSelector to argList::validOptions.
static instantList selectIfPresent(Time &runTime, const argList &args)
If any time option provided return the set of times (as select0)
static setAction toAction(const word &actionName)
Convert string to action.
setAction
Enumeration defining the valid actions.
static autoPtr< topoSetSource > New(const word &topoSetSourceType, const polyMesh &mesh, const dictionary &dict)
Return a reference to the selected topoSetSource.
static autoPtr< topoSet > New(const word &setType, const polyMesh &mesh, const word &name, readOption r=MUST_READ, writeOption w=NO_WRITE)
Return a pointer to a toposet read from file.
A class for handling words, derived from string.
static const word null
An empty word.
#define FatalErrorInFunction
Report an error message using Foam::FatalError.
int main(int argc, char *argv[])
static instantList timeDirs
#define WarningInFunction
Report a warning using Foam::Warning.
const fileOperation & fileHandler()
Get current file handler.
intWM_LABEL_SIZE_t label
A label is an int32_t or int64_t as specified by the pre-processor macro WM_LABEL_SIZE.
bool rm(const fileName &)
Remove a file, returning true if successful otherwise false.
IOdictionary systemDict(const word &dictName, const argList &args, const objectRegistry &ob, const word ®ionName=polyMesh::defaultRegion)
Ostream & endl(Ostream &os)
Add newline and flush stream.
word name(const bool)
Return a word representation of a bool.
errorManip< error > abort(error &err)
T returnReduce(const T &Value, const BinaryOp &bop, const int tag=Pstream::msgType(), const label comm=UPstream::worldComm)
Foam::argList args(argc, argv)