A multi-block mesh generator. More...
Public Types | |
enum | mergeStrategy { DEFAULT_MERGE, MERGE_TOPOLOGY, MERGE_POINTS } |
The block merging strategy. More... | |
typedef PtrList< block > | blockList |
The list of blocks is stored as a PtrList. More... | |
Public Member Functions | |
ClassName ("blockMesh") | |
Runtime type information. More... | |
blockMesh (const IOdictionary &dict, const word ®ionName=polyMesh::defaultRegion, mergeStrategy strategy=mergeStrategy::DEFAULT_MERGE) | |
Construct from IOdictionary for given region. More... | |
~blockMesh ()=default | |
Destructor. More... | |
const dictionary & | meshDict () const |
Access to input dictionary. More... | |
const searchableSurfaces & | geometry () const |
Optional searchable geometry to project face-points to. More... | |
bool | valid () const noexcept |
True if the blockMesh topology exists. More... | |
const pointField & | vertices () const |
Reference to point field defining the blockMesh. More... | |
const polyMesh & | topology () const |
Return the blockMesh topology as a polyMesh. More... | |
const blockEdgeList & | edges () const |
Return the curved edges. More... | |
const blockFaceList & | faces () const |
Return the curved faces. More... | |
scalar | scaleFactor () const |
The scaling factor used to convert to metres. More... | |
const pointField & | points () const |
The points for the entire mesh. More... | |
const cellShapeList & | cells () const |
Return cell shapes list. More... | |
const faceListList & | patches () const |
Return the patch face lists. More... | |
PtrList< dictionary > | patchDicts () const |
Get patch information from the topology mesh. More... | |
wordList | patchNames () const |
Return patch names. More... | |
label | numZonedBlocks () const |
Number of blocks with specified zones. More... | |
bool | verbose () const noexcept |
Verbose output. More... | |
bool | verbose (const bool on) noexcept |
Enable/disable verbose output. More... | |
autoPtr< polyMesh > | mesh (const IOobject &io) const |
Create polyMesh, with cell zones. More... | |
Public Member Functions inherited from PtrList< block > | |
constexpr | PtrList () noexcept |
Default construct. More... | |
PtrList (const label len) | |
Construct with specified size, each element initialized to nullptr. More... | |
PtrList (const PtrList< block > &list) | |
Copy construct using 'clone()' method on each element. More... | |
PtrList (PtrList< block > &&list) | |
Move construct. More... | |
PtrList (UList< block * > &list) | |
Take ownership of pointers in the list, set old pointers to null. More... | |
PtrList (const PtrList< block > &list, const CloneArg &cloneArgs) | |
Copy construct using 'clone()' method on each element. More... | |
PtrList (PtrList< block > &list, bool reuse) | |
Construct as copy or re-use as specified. More... | |
PtrList (const SLPtrList< block > &list) | |
Copy construct using 'clone()' on each element of SLPtrList<T> More... | |
PtrList (Istream &is, const INew &inew) | |
Construct from Istream using given Istream constructor class. More... | |
PtrList (Istream &is) | |
Construct from Istream using default Istream constructor class. More... | |
~PtrList () | |
Destructor. More... | |
PtrList< block > | clone (Args &&... args) const |
Make a copy by cloning each of the list elements. More... | |
Foam::PtrList< block > | clone (Args &&... args) const |
const block * | set (const label i) const |
Return const pointer to element (can be nullptr),. More... | |
autoPtr< block > | set (const label i, block *ptr) |
Set element to given pointer and return old element (can be null) More... | |
autoPtr< block > | set (const label i, autoPtr< block > &ptr) |
Set element to given autoPtr and return old element. More... | |
autoPtr< block > | set (const label i, autoPtr< block > &&ptr) |
Set element to given autoPtr and return old element. More... | |
autoPtr< block > | set (const label i, std::unique_ptr< block > &&ptr) |
Set element to given unique_ptr and return old element. More... | |
autoPtr< block > | set (const label i, const refPtr< block > &ptr) |
Set element to given refPtr and return old element. More... | |
autoPtr< block > | set (const label i, const tmp< block > &ptr) |
Set element to given tmp and return old element. More... | |
void | clear () |
Clear the PtrList. Delete allocated entries and set size to zero. More... | |
void | resize (const label newLen) |
Adjust size of PtrList. More... | |
void | setSize (const label newLen) |
Same as resize() More... | |
void | emplace_append (Args &&... args) |
Construct and append an element to the end of the list. More... | |
void | append (block *ptr) |
Append an element to the end of the list. More... | |
void | append (autoPtr< block > &ptr) |
Move append an element to the end of the list. More... | |
void | append (autoPtr< block > &&ptr) |
Move append an element to the end of the list. More... | |
void | append (std::unique_ptr< block > &&ptr) |
Move append an element to the end of the list. More... | |
void | append (const refPtr< block > &ptr) |
Move or clone append a refPtr to the end of the list. More... | |
void | append (const tmp< block > &ptr) |
Move or clone append a tmp to the end of the list. More... | |
autoPtr< block > | emplace (const label i, Args &&... args) |
Construct and set an element. More... | |
Foam::autoPtr< block > | emplace (const label i, Args &&... args) |
autoPtr< block > | release (const label i) |
Release ownership of the pointer at the given position. More... | |
void | transfer (PtrList< block > &list) |
Transfer into this list and annul the argument list. More... | |
void | operator= (const PtrList< block > &list) |
Copy assignment. More... | |
void | operator= (PtrList< block > &&list) |
Move assignment. More... | |
Static Public Attributes | |
static bool | verboseOutput = true |
The default verbosity (true) More... | |
Additional Inherited Members | |
Protected Member Functions inherited from PtrList< block > | |
void | readIstream (Istream &is, const INew &inew) |
Read from Istream using Istream constructor class. More... | |
void | free () |
Delete the allocated entries, but retain the list size. More... | |
A multi-block mesh generator.
Dictionary controls
Property | Description | Required | Default |
---|---|---|---|
scale | Point scaling | no | 1.0 |
vertices | yes | ||
blocks | yes | ||
edges | no | ||
faces | no | ||
boundary | Boundary definition | no | |
patches | Alternate version for "boundary" | no | |
namedBlocks | no | ||
namedVertices | no | ||
mergeType | Merging "points" or "topology" | no | topology |
checkFaceCorrespondence | no | true | |
verbose | no | true |
Definition at line 148 of file blockMesh.H.
The list of blocks is stored as a PtrList.
Definition at line 157 of file blockMesh.H.
enum mergeStrategy |
The block merging strategy.
Enumerator | |
---|---|
DEFAULT_MERGE | Default (TOPOLOGY), not selectable. |
MERGE_TOPOLOGY | "topology" merge by block topology (default) |
MERGE_POINTS | "points" merge by point geometry |
Definition at line 163 of file blockMesh.H.
|
explicit |
Construct from IOdictionary for given region.
Default is topological merging.
Definition at line 53 of file blockMesh.C.
|
default |
Destructor.
ClassName | ( | "blockMesh" | ) |
Runtime type information.
|
inline |
Access to input dictionary.
Definition at line 323 of file blockMesh.H.
|
inline |
Optional searchable geometry to project face-points to.
Definition at line 329 of file blockMesh.H.
|
noexcept |
const Foam::pointField & vertices | ( | ) | const |
Reference to point field defining the blockMesh.
These points are not scaled by scaleFactor
Definition at line 134 of file blockMesh.C.
const Foam::polyMesh & topology | ( | ) | const |
Return the blockMesh topology as a polyMesh.
Definition at line 140 of file blockMesh.C.
References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
|
inline |
Return the curved edges.
Definition at line 345 of file blockMesh.H.
|
inline |
Return the curved faces.
Definition at line 351 of file blockMesh.H.
Foam::scalar scaleFactor | ( | ) | const |
The scaling factor used to convert to metres.
Definition at line 170 of file blockMesh.C.
const Foam::pointField & points | ( | ) | const |
The points for the entire mesh.
These points are scaled by scaleFactor
Definition at line 176 of file blockMesh.C.
Referenced by blockMesh::mesh().
const Foam::cellShapeList & cells | ( | ) | const |
Return cell shapes list.
Definition at line 187 of file blockMesh.C.
Referenced by blockMesh::mesh().
const Foam::faceListList & patches | ( | ) | const |
Return the patch face lists.
Definition at line 198 of file blockMesh.C.
Referenced by blockMesh::mesh().
Foam::PtrList< Foam::dictionary > patchDicts | ( | ) | const |
Get patch information from the topology mesh.
Definition at line 153 of file blockMesh.C.
References forAll, patchDicts, and StringStreamAllocator< StreamType >::str().
Referenced by blockMesh::mesh().
Foam::wordList patchNames | ( | ) | const |
Return patch names.
Definition at line 209 of file blockMesh.C.
Referenced by blockMesh::mesh().
Foam::label numZonedBlocks | ( | ) | const |
Number of blocks with specified zones.
Definition at line 227 of file blockMesh.C.
References Foam::BitOps::count().
Referenced by blockMesh::mesh().
|
noexcept |
Verbose output.
Definition at line 120 of file blockMesh.C.
Foam::autoPtr< Foam::polyMesh > mesh | ( | const IOobject & | io | ) | const |
Create polyMesh, with cell zones.
Definition at line 277 of file blockMeshCreate.C.
References polyMesh::addZones(), List< T >::append(), Foam::constant::physicoChemical::b, blockMesh::cells(), polyMesh::cellZones(), HashTable< T, Key, Hash >::cfind(), Foam::endl(), polyMesh::faceZones(), forAllConstIters(), Foam::Info, HashTable< T, Key, Hash >::insert(), meshPtr, autoPtr< T >::New(), Foam::nl, blockMesh::numZonedBlocks(), nZones, blockMesh::patchDicts(), blockMesh::patches(), blockMesh::patchNames(), blockMesh::points(), polyMesh::pointZones(), and HashTable< T, Key, Hash >::size().
|
static |
The default verbosity (true)
Definition at line 295 of file blockMesh.H.