Determines a mapping between patch face centres and mesh cell or face centres and processors they're on. More...
Classes | |
class | maxProcEqOp |
class | nearestEqOp |
class | nearestWorldEqOp |
Public Types | |
enum | sampleMode { NEARESTCELL, NEARESTPATCHFACE, NEARESTPATCHFACEAMI, NEARESTPATCHPOINT, NEARESTFACE, NEARESTONLYCELL } |
Mesh items to sample. More... | |
enum | offsetMode { UNIFORM, NONUNIFORM, NORMAL } |
How to project face centres. More... | |
typedef Tuple2< pointIndexHit, Tuple2< scalar, label > > | nearInfo |
Helper class for finding nearest. More... | |
typedef Tuple2< nearInfo, label > | nearInfoWorld |
nearest + world More... | |
Public Member Functions | |
TypeName ("mappedPatchBase") | |
Runtime type information. More... | |
mappedPatchBase (const polyPatch &) | |
Construct from patch. More... | |
mappedPatchBase (const polyPatch &pp, const word &sampleRegion, const sampleMode sampleMode, const word &samplePatch, const vectorField &offsets) | |
Construct with offsetMode=non-uniform. More... | |
mappedPatchBase (const polyPatch &pp, const word &sampleRegion, const sampleMode sampleMode, const word &samplePatch, const vector &uniformOffset) | |
Construct from offsetMode=uniform. More... | |
mappedPatchBase (const polyPatch &pp, const word &sampleRegion, const sampleMode sampleMode, const word &samplePatch, const scalar normalDistance) | |
Construct from offsetMode=normal and distance. More... | |
mappedPatchBase (const polyPatch &, const dictionary &) | |
Construct from dictionary. More... | |
mappedPatchBase (const polyPatch &, const sampleMode, const dictionary &) | |
Construct from dictionary and (collocated) sample mode. More... | |
mappedPatchBase (const polyPatch &, const mappedPatchBase &) | |
Construct as copy, resetting patch. More... | |
mappedPatchBase (const polyPatch &, const mappedPatchBase &, const labelUList &mapAddressing) | |
Construct as copy, resetting patch, map original data. More... | |
virtual | ~mappedPatchBase () |
Destructor. More... | |
void | clearOut () |
void | setOffset (const scalar normalDist) |
Change to normal offset with given distance. More... | |
void | setOffset (const vector &uniformOffset) |
Change to uniform offset with value. More... | |
void | setOffset (const vectorField &offsets) |
Change to non-uniform offsets. More... | |
sampleMode | mode () const noexcept |
What to sample. More... | |
const word & | sampleWorld () const noexcept |
World to sample. More... | |
const word & | sampleRegion () const |
Region to sample. More... | |
const word & | samplePatch () const |
Patch (only if NEARESTPATCHFACE) More... | |
const word & | coupleGroup () const |
PatchGroup (only if NEARESTPATCHFACE) More... | |
label | sampleSize () const |
Return size of mapped mesh/patch/boundary. More... | |
const vector & | offset () const noexcept |
Offset vector (from patch faces to destination mesh objects) More... | |
const vectorField & | offsets () const noexcept |
Offset vectors (from patch faces to destination mesh objects) More... | |
label | getCommunicator () const |
Get the communicator (worldComm or world-to-world) More... | |
label | comm () const |
Identical to getCommunicator() More... | |
bool | sameWorld () const |
Is sample world the local world? More... | |
bool | masterWorld () const |
Is my world ordered before the sampleWorld? More... | |
bool | sameRegion () const noexcept |
Cached sampleRegion != mesh.name() More... | |
const mapDistribute & | map () const |
Return reference to the parallel distribution map. More... | |
const AMIPatchToPatchInterpolation & | AMI (const bool forceUpdate=false) const |
Return reference to the AMI interpolator. More... | |
bool | owner () const |
Is it owner. More... | |
const autoPtr< Foam::searchableSurface > & | surfPtr () const |
Return a pointer to the AMI projection surface. More... | |
const polyMesh & | sampleMesh () const |
Get the region mesh. More... | |
const polyPatch & | samplePolyPatch () const |
Get the patch on the region. More... | |
tmp< pointField > | samplePoints () const |
Get the sample points. More... | |
const fileName & | sampleDatabasePath () const |
bool | sampleDatabase () const |
virtual fileName | sendPath (const label proci) const |
virtual fileName | receivePath (const label proci) const |
template<class Type > | |
void | distribute (List< Type > &lst) const |
Wrapper around map/interpolate data distribution. More... | |
template<class Type , class CombineOp > | |
void | distribute (List< Type > &lst, const CombineOp &cop) const |
Wrapper around map/interpolate data distribution with operation. More... | |
template<class Type > | |
void | reverseDistribute (List< Type > &lst) const |
Wrapper around map/interpolate data distribution. More... | |
template<class Type , class CombineOp > | |
void | reverseDistribute (List< Type > &lst, const CombineOp &cop) const |
Wrapper around map/interpolate data distribution with operation. More... | |
virtual void | write (Ostream &os) const |
Write as a dictionary. More... | |
Static Public Member Functions | |
static pointIndexHit | facePoint (const polyMesh &, const label facei, const polyMesh::cellDecomposition) |
Get a point on the face given a face decomposition method: More... | |
static fileName | sendPath (const fileName &root, const label proci) |
Helper: return path to store data to be sent to processor i. More... | |
static fileName | receivePath (const fileName &root, const label proci) |
static const objectRegistry & | subRegistry (const objectRegistry &obr, const fileName &path) |
template<class Type > | |
static void | storeField (objectRegistry &obr, const word &fieldName, const Field< Type > &values) |
Store an IOField on the objectRegistry relative to obr. More... | |
static void | writeDict (const objectRegistry &obr, dictionary &dict) |
Convert objectRegistry contents into dictionary. More... | |
static void | readDict (const dictionary &d, objectRegistry &obr) |
(recursively) construct and register IOFields from dictionary More... | |
Static Public Attributes | |
static const Enum< sampleMode > | sampleModeNames_ |
static const Enum< offsetMode > | offsetModeNames_ |
Protected Member Functions | |
bool | addWorldConnection () |
Add a world-world connection. More... | |
label | getWorldCommunicator () const |
Get the communicator for the world-world connection. More... | |
const polyMesh & | lookupMesh (const word ®ion) const |
Lookup mesh. More... | |
const polyPatch & | lookupPatch (const word &sampleRegion, const word &samplePatch) const |
Lookup patch. More... | |
tmp< pointField > | facePoints (const polyPatch &) const |
void | collectSamples (const label mySampleWorld, const pointField &facePoints, pointField &samples, labelList &patchFaceWorlds, labelList &patchFaceProcs, labelList &patchFaces, pointField &patchFc) const |
void | findLocalSamples (const sampleMode mode, const label sampleWorld, const word &sampleRegion, const word &samplePatch, const pointField &samplePoints, List< nearInfoWorld > &nearest) const |
Find (local) cells/faces containing samples. More... | |
void | findSamples (const sampleMode mode, const label myWorldIndex, const pointField &, const labelList &wantedWorlds, const labelList &origProcs, labelList &sampleProcs, labelList &sampleIndices, pointField &sampleLocations) const |
Find (global) cells/faces containing samples. More... | |
tmp< pointField > | samplePoints (const pointField &) const |
Get the sample points given the face points. More... | |
void | calcMapping () const |
Calculate mapping. More... | |
void | calcAMI () const |
Calculate AMI interpolator. More... | |
Static Protected Member Functions | |
static autoPtr< fileName > | readDatabase (const dictionary &dict) |
Read optional database name from dictionary. More... | |
static const objectRegistry & | subRegistry (const objectRegistry &obr, const wordList &names, const label index) |
template<class Type > | |
static bool | writeIOField (const regIOobject &obj, dictionary &dict) |
Attempt to detect an IOField<Type> and write to dictionary. More... | |
template<class Type > | |
static bool | constructIOField (const word &name, token &tok, Istream &is, objectRegistry &obr) |
Attempt to read an IOField<Type> and store on objectRegistry. More... | |
Protected Attributes | |
const polyPatch & | patch_ |
Patch to sample. More... | |
word | sampleWorld_ |
World to sample. More... | |
word | sampleRegion_ |
Region to sample. More... | |
const sampleMode | mode_ |
What to sample. More... | |
word | samplePatch_ |
Patch (if in sampleMode NEARESTPATCH*) More... | |
const coupleGroupIdentifier | coupleGroup_ |
PatchGroup (if in sampleMode NEARESTPATCH*) More... | |
const autoPtr< fileName > | sampleDatabasePtr_ |
Empty or location of database. More... | |
offsetMode | offsetMode_ |
How to obtain samples. More... | |
vector | offset_ |
Offset vector (uniform) More... | |
vectorField | offsets_ |
Offset vector (nonuniform) More... | |
scalar | distance_ |
Offset distance (normal) More... | |
label | communicator_ |
Communicator. More... | |
bool | sameRegion_ |
Same region. More... | |
autoPtr< mapDistribute > | mapPtr_ |
Communication schedule: More... | |
const bool | AMIReverse_ |
Flag to indicate that slave patch should be reversed for AMI. More... | |
autoPtr< AMIPatchToPatchInterpolation > | AMIPtr_ |
Pointer to AMI interpolator. More... | |
autoPtr< searchableSurface > | surfPtr_ |
Pointer to projection surface employed by AMI interpolator. More... | |
dictionary | surfDict_ |
Dictionary storing projection surface description. More... | |
Determines a mapping between patch face centres and mesh cell or face centres and processors they're on.
If constructed from dictionary:
// Optional world to sample (default is all) //sampleWorld solidSim; // Optional explicit coupling (requires functionObject to synchronise // databases. Default is close coupling (bc to bc) //sampleDatabase true; // Region to sample (default is region0) sampleRegion region0; // What to sample: // - nearestCell : sample cell containing point // - nearestOnlyCell : nearest sample cell (even if not containing // point) // - nearestPatchFace : nearest face on selected patch // - nearestPatchFaceAMI : nearest face on selected patch - patches need not conform - uses AMI interpolation // - nearestFace : nearest boundary face on any patch // - nearestPatchPoint : nearest patch point (for coupled points // this might be any of the points so you have // to guarantee the point data is synchronised // beforehand) sampleMode nearestCell; // If sampleMode is nearestPatchFace : patch to find faces of samplePatch movingWall; // If sampleMode is nearestPatchFace : specify patchgroup to find // samplePatch and sampleRegion (if not provided) coupleGroup baffleGroup; // How to supply offset (w.r.t. my patch face centres): // - uniform : single offset vector // - nonuniform : per-face offset vector // - normal : using supplied distance and face normal offsetMode uniform; // According to offsetMode (see above) supply one of // offset, offsets or distance offset (1 0 0);
Note: if offsetMode is normal
it uses outwards pointing normals. So supply a negative distance if sampling inside the domain.
Definition at line 112 of file mappedPatchBase.H.
typedef Tuple2<pointIndexHit, Tuple2<scalar, label> > nearInfo |
Helper class for finding nearest.
Nearest:
Definition at line 147 of file mappedPatchBase.H.
typedef Tuple2<nearInfo, label> nearInfoWorld |
nearest + world
Used to only look at entries from same world
Definition at line 192 of file mappedPatchBase.H.
enum sampleMode |
Mesh items to sample.
Definition at line 119 of file mappedPatchBase.H.
enum offsetMode |
How to project face centres.
Enumerator | |
---|---|
UNIFORM | single offset vector |
NONUNIFORM | per-face offset vector |
NORMAL | use face normal + distance |
Definition at line 130 of file mappedPatchBase.H.
|
explicit |
Construct from patch.
Definition at line 1215 of file mappedPatchBase.C.
mappedPatchBase | ( | const polyPatch & | pp, |
const word & | sampleRegion, | ||
const sampleMode | sampleMode, | ||
const word & | samplePatch, | ||
const vectorField & | offsets | ||
) |
Construct with offsetMode=non-uniform.
Definition at line 1241 of file mappedPatchBase.C.
References mappedPatchBase::setOffset().
mappedPatchBase | ( | const polyPatch & | pp, |
const word & | sampleRegion, | ||
const sampleMode | sampleMode, | ||
const word & | samplePatch, | ||
const vector & | uniformOffset | ||
) |
Construct from offsetMode=uniform.
Definition at line 1263 of file mappedPatchBase.C.
References mappedPatchBase::setOffset().
mappedPatchBase | ( | const polyPatch & | pp, |
const word & | sampleRegion, | ||
const sampleMode | sampleMode, | ||
const word & | samplePatch, | ||
const scalar | normalDistance | ||
) |
Construct from offsetMode=normal and distance.
Definition at line 1285 of file mappedPatchBase.C.
mappedPatchBase | ( | const polyPatch & | pp, |
const dictionary & | dict | ||
) |
Construct from dictionary.
Definition at line 1321 of file mappedPatchBase.C.
References dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, dictionary::found(), dictionary::readEntry(), and dictionary::readIfPresent().
mappedPatchBase | ( | const polyPatch & | pp, |
const sampleMode | mode, | ||
const dictionary & | dict | ||
) |
Construct from dictionary and (collocated) sample mode.
(only for nearestPatchFace, nearestPatchFaceAMI, nearestPatchPoint) Assumes zero offset.
Definition at line 1423 of file mappedPatchBase.C.
References dict, Foam::exit(), Foam::FatalIOError, FatalIOErrorInFunction, and Foam::mode().
mappedPatchBase | ( | const polyPatch & | pp, |
const mappedPatchBase & | mpb | ||
) |
Construct as copy, resetting patch.
Definition at line 1496 of file mappedPatchBase.C.
mappedPatchBase | ( | const polyPatch & | pp, |
const mappedPatchBase & | mpb, | ||
const labelUList & | mapAddressing | ||
) |
Construct as copy, resetting patch, map original data.
Definition at line 1528 of file mappedPatchBase.C.
|
virtual |
Destructor.
Definition at line 1567 of file mappedPatchBase.C.
|
protected |
Add a world-world connection.
Definition at line 123 of file mappedPatchBase.C.
References polyPatch::boundaryMesh(), polyBoundaryMesh::mesh(), multiWorldConnections::New(), mappedPatchBase::patch_, runTime, mappedPatchBase::sameWorld(), mappedPatchBase::sampleWorld_, and objectRegistry::time().
|
protected |
Get the communicator for the world-world connection.
Definition at line 138 of file mappedPatchBase.C.
References multiWorldConnections::getCommByName(), multiWorldConnections::New(), runTime, objectRegistry::time(), and UPstream::worldComm.
|
protected |
Lookup mesh.
Definition at line 1614 of file mappedPatchBase.C.
References polyMesh::boundaryMesh(), objectRegistry::lookupObject(), polyBoundaryMesh::mesh(), IOobject::name(), and objectRegistry::time().
|
protected |
Lookup patch.
Definition at line 1629 of file mappedPatchBase.C.
References polyMesh::boundaryMesh(), Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, and polyBoundaryMesh::findPatchID().
Referenced by mappedPolyPatch::nbrCells(), mappedWallPolyPatch::nbrCells(), mappedPolyPatch::neighbPolyPatchID(), mappedWallPolyPatch::neighbPolyPatchID(), mappedPolyPatch::newInternalProcFaces(), and mappedWallPolyPatch::newInternalProcFaces().
|
protected |
Get the points from face-centre-decomposition face centres and project them onto the face-diagonal-decomposition triangles.
Definition at line 152 of file mappedPatchBase.C.
References polyPatch::boundaryMesh(), polyMesh::FACE_DIAG_TRIS, Foam::facePoint(), forAll, mesh, polyBoundaryMesh::mesh(), tmp< T >::New(), polyPatch::start(), and polyMesh::tetBasePtIs().
|
protected |
Collect single list of samples and originating processor+face + wanted world
Definition at line 180 of file mappedPatchBase.C.
References Foam::expressions::patchExpr::debug, DebugInFunction, Foam::endl(), forAll, Pstream::gatherList(), Foam::identity(), UPstream::msgType(), UPstream::myProcNo(), OSstream::name(), Foam::nl, UPstream::nProcs(), Foam::Perr, samples(), Pstream::scatterList(), List< T >::setSize(), and UPstream::warnComm.
|
protected |
Find (local) cells/faces containing samples.
Note: face-diagonal decomposition
Note: face-diagonal decomposition
Note: face-diagonal decomposition
Definition at line 280 of file mappedPatchBase.C.
References Foam::abort(), primitiveMesh::cellCentres(), polyMesh::cellTree(), DebugInFunction, Foam::constant::electromagnetic::e, Foam::exit(), primitiveMesh::faceCentres(), Foam::FatalError, FatalErrorInFunction, indexedOctree< Type >::findInside(), meshSearch::findNearestFace(), Tuple2< T1, T2 >::first(), forAll, Foam::identity(), Foam::magSqr(), mesh, PrimitivePatch< FaceList, PointField >::meshPoints(), boundBox::min(), Foam::mode(), UPstream::myProcNo(), MeshObject< polyMesh, GeometricMeshObject, meshSearchMeshObject >::New(), Foam::nl, PrimitivePatch< FaceList, PointField >::points(), polyMesh::points(), polyPatch::range(), rndGen, samples(), Tuple2< T1, T2 >::second(), List< T >::setSize(), Foam::sqr(), and VectorSpace< Vector< Cmpt >, Cmpt, 3 >::uniform().
|
protected |
Find (global) cells/faces containing samples.
Definition at line 587 of file mappedPatchBase.C.
References Foam::expressions::patchExpr::debug, DebugInFunction, Foam::endl(), Tuple2< T1, T2 >::first(), forAll, Pstream::gatherList(), Pstream::listCombineGather(), Pstream::listCombineScatter(), VectorSpace< Vector< scalar >, scalar, 3 >::max, Foam::mode(), UPstream::msgType(), UPstream::myProcNo(), Foam::nl, UPstream::nProcs(), Foam::Pout, samples(), Pstream::scatterList(), Tuple2< T1, T2 >::second(), List< T >::setSize(), Foam::sqr(), and UPstream::warnComm.
|
protected |
Get the sample points given the face points.
Definition at line 1682 of file mappedPatchBase.C.
References fld, Foam::mag(), n, and tmp< T >::New().
|
protected |
Calculate mapping.
Definition at line 735 of file mappedPatchBase.C.
References Foam::abort(), UPstream::allWorlds(), DynamicList< T, SizeMin >::append(), Foam::expressions::patchExpr::debug, DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::gAverage(), Foam::mag(), UPstream::master(), UPstream::msgType(), UPstream::myWorld(), UPstream::myWorldID(), OSstream::name(), IOstream::name(), Foam::nl, Foam::Pout, Foam::reduce(), samples(), HashSet< Key, Hash >::set(), HashSet< Key, Hash >::test(), Foam::type(), Foam::HashSetOps::used(), WarningInFunction, and Foam::meshTools::writeOBJ().
|
protected |
Calculate AMI interpolator.
Definition at line 1093 of file mappedPatchBase.C.
References Foam::expressions::patchExpr::debug, DebugInFunction, Foam::endl(), PrimitivePatch< FaceList, PointField >::localFaces(), PrimitivePatch< FaceList, PointField >::localPoints(), Foam::nl, os(), UPstream::warnComm, UPstream::worldComm, and Foam::meshTools::writeOBJ().
|
staticprotected |
Read optional database name from dictionary.
Definition at line 90 of file mappedPatchBase.C.
References dict, and autoPtr< T >::set().
|
staticprotected |
Lookup (sub)objectRegistry by following names of sub registries. Creates non-existing intermediate ones.
Definition at line 1195 of file mappedPatchBase.C.
References Foam::PtrListOps::names(), and objectRegistry::subRegistry().
Referenced by syncObjects::sync().
|
staticprotected |
Attempt to detect an IOField<Type> and write to dictionary.
Definition at line 225 of file mappedPatchBaseTemplates.C.
References dict, fld, and dictionary::set().
|
staticprotected |
Attempt to read an IOField<Type> and store on objectRegistry.
Definition at line 260 of file mappedPatchBaseTemplates.C.
References token::compoundToken(), Foam::dynamicCast(), objectRegistry::findObject(), token::isCompound(), Foam::name(), IOobject::NO_READ, IOobject::NO_WRITE, regIOobject::store(), and token::transferCompoundToken().
TypeName | ( | "mappedPatchBase" | ) |
Runtime type information.
void clearOut | ( | ) |
Definition at line 1573 of file mappedPatchBase.C.
Referenced by thermalBaffle1DFvPatchScalarField< solidType >::autoMap(), mappedPolyPatch::calcGeometry(), mappedWallPolyPatch::calcGeometry(), mappedWallPolyPatch::movePoints(), mappedPolyPatch::movePoints(), mappedWallPolyPatch::updateMesh(), mappedPolyPatch::updateMesh(), mappedPolyPatch::~mappedPolyPatch(), and mappedWallPolyPatch::~mappedWallPolyPatch().
void setOffset | ( | const scalar | normalDist | ) |
Change to normal offset with given distance.
Definition at line 1583 of file mappedPatchBase.C.
References Foam::Zero.
Referenced by mappedPatchBase::mappedPatchBase().
void setOffset | ( | const vector & | uniformOffset | ) |
Change to uniform offset with value.
Definition at line 1593 of file mappedPatchBase.C.
References Foam::Zero.
void setOffset | ( | const vectorField & | offsets | ) |
Change to non-uniform offsets.
Definition at line 1603 of file mappedPatchBase.C.
References Foam::Zero.
|
inlinenoexcept |
What to sample.
Definition at line 30 of file mappedPatchBaseI.H.
References mappedPatchBase::mode_.
Referenced by mappedVelocityFluxFixedValueFvPatchField::mappedVelocityFluxFixedValueFvPatchField(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), and mappedFixedInternalValueFvPatchField< Type >::updateCoeffs().
|
inlinenoexcept |
World to sample.
Definition at line 36 of file mappedPatchBaseI.H.
|
inline |
Region to sample.
Definition at line 42 of file mappedPatchBaseI.H.
References Foam::exit(), Foam::FatalError, and FatalErrorInFunction.
Referenced by turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), and turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().
|
inline |
Patch (only if NEARESTPATCHFACE)
Definition at line 68 of file mappedPatchBaseI.H.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and Foam::nl.
Referenced by regionModel::nbrCoupledPatchID(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), and turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().
|
inline |
PatchGroup (only if NEARESTPATCHFACE)
Definition at line 94 of file mappedPatchBaseI.H.
|
inline |
Return size of mapped mesh/patch/boundary.
Definition at line 100 of file mappedPatchBaseI.H.
References Foam::abort(), Foam::FatalError, FatalErrorInFunction, mesh, and primitiveMesh::nBoundaryFaces().
|
inlinenoexcept |
Offset vector (from patch faces to destination mesh objects)
Definition at line 135 of file mappedPatchBaseI.H.
|
inlinenoexcept |
Offset vectors (from patch faces to destination mesh objects)
Definition at line 141 of file mappedPatchBaseI.H.
|
inline |
Get the communicator (worldComm or world-to-world)
Definition at line 147 of file mappedPatchBaseI.H.
Referenced by mappedPatchBase::distribute().
|
inline |
Identical to getCommunicator()
Definition at line 158 of file mappedPatchBaseI.H.
|
inline |
Is sample world the local world?
Definition at line 169 of file mappedPatchBaseI.H.
References UPstream::allWorlds(), and UPstream::myWorld().
Referenced by mappedPatchBase::addWorldConnection(), mappedPatchBase::distribute(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), and turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs().
|
inline |
Is my world ordered before the sampleWorld?
Definition at line 180 of file mappedPatchBaseI.H.
References UPstream::allWorlds(), and UPstream::myWorldID().
Referenced by mappedPatchBase::distribute().
|
inlinenoexcept |
Cached sampleRegion != mesh.name()
Definition at line 193 of file mappedPatchBaseI.H.
|
inline |
Return reference to the parallel distribution map.
Definition at line 199 of file mappedPatchBaseI.H.
References polyMesh::boundaryMesh(), polyBoundaryMesh::mesh(), and polyMesh::topoChanging().
Referenced by mappedPatchBase::distribute(), mappedPolyPatch::mapCollocatedFaces(), mappedWallPolyPatch::mapCollocatedFaces(), semiPermeableBaffleMassFractionFvPatchScalarField::phiY(), and thermalBaffle1DFvPatchScalarField< solidType >::updateCoeffs().
|
inline |
Return reference to the AMI interpolator.
Definition at line 221 of file mappedPatchBaseI.H.
References polyMesh::boundaryMesh(), polyBoundaryMesh::mesh(), and polyMesh::topoChanging().
Referenced by mappedPatchBase::distribute().
|
inline |
Is it owner.
Definition at line 241 of file mappedPatchBaseI.H.
Referenced by mappedPolyPatch::masterImplicit(), and mappedWallPolyPatch::masterImplicit().
const Foam::autoPtr< Foam::searchableSurface > & surfPtr | ( | ) | const |
Return a pointer to the AMI projection surface.
Definition at line 1061 of file mappedPatchBase.C.
References polyMesh::boundaryMesh(), TimePaths::constant(), mesh, polyBoundaryMesh::mesh(), IOobject::MUST_READ, searchableSurface::New(), IOobject::NO_WRITE, and fvMesh::time().
const Foam::polyMesh & sampleMesh | ( | ) | const |
Get the region mesh.
Definition at line 1649 of file mappedPatchBase.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and UPstream::myWorld().
Referenced by mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), mappedFixedInternalValueFvPatchField< Type >::updateCoeffs(), mappedFlowRateFvPatchVectorField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), and humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs().
const Foam::polyPatch & samplePolyPatch | ( | ) | const |
Get the patch on the region.
Definition at line 1662 of file mappedPatchBase.C.
References polyMesh::boundaryMesh(), Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, polyBoundaryMesh::findPatchID(), and polyBoundaryMesh::names().
Referenced by semiPermeableBaffleMassFractionFvPatchScalarField::phiY(), mappedFixedInternalValueFvPatchField< Type >::updateCoeffs(), mappedFlowRateFvPatchVectorField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureCoupledBaffleMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), and humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs().
Foam::tmp< Foam::pointField > samplePoints | ( | ) | const |
Get the sample points.
Definition at line 1716 of file mappedPatchBase.C.
|
static |
Get a point on the face given a face decomposition method:
face-centre-tet : face centre. Returns index of face. face-planes : face centre. Returns index of face. face-diagonal : intersection of ray from cellcentre to facecentre with any of the triangles. Returns index (0..size-2) of triangle.
Definition at line 1723 of file mappedPatchBase.C.
References Foam::abort(), polyMesh::CELL_TETS, primitiveMesh::cellCentres(), PointHit< PointType >::distance(), f(), polyMesh::FACE_CENTRE_TRIS, polyMesh::FACE_DIAG_TRIS, polyMesh::FACE_PLANES, primitiveMesh::faceCentres(), polyMesh::faceOwner(), polyMesh::faces(), Foam::FatalError, FatalErrorInFunction, intersection::HALF_RAY, PointHit< PointType >::hit(), PointHit< PointType >::hitPoint(), triangle< Point, PointRef >::intersection(), mesh, p, polyMesh::points(), and polyMesh::tetBasePtIs().
Referenced by nearWallFields::calcAddressing().
|
inline |
Definition at line 560 of file mappedPatchBase.H.
References mappedPatchBase::sampleDatabasePtr_.
|
inline |
Definition at line 565 of file mappedPatchBase.H.
References bool, and mappedPatchBase::sampleDatabasePtr_.
|
static |
Helper: return path to store data to be sent to processor i.
Definition at line 1828 of file mappedPatchBase.C.
References Foam::name().
Referenced by syncObjects::sync().
|
virtual |
Definition at line 1838 of file mappedPatchBase.C.
|
static |
Helper: return path to store data to be received from processor i
Definition at line 1845 of file mappedPatchBase.C.
References Foam::name().
Referenced by syncObjects::sync().
|
virtual |
Definition at line 1855 of file mappedPatchBase.C.
|
static |
Lookup (sub)objectRegistry from '/' separated path (relative to objectRegistry). Creates non-existing intermediate ones.
Definition at line 1804 of file mappedPatchBase.C.
References fileName::clean(), fileName::components(), Foam::PtrListOps::names(), and path().
|
static |
Store an IOField on the objectRegistry relative to obr.
Definition at line 315 of file mappedPatchBaseTemplates.C.
References objectRegistry::findObject(), IOobject::NO_READ, IOobject::NO_WRITE, regIOobject::store(), and Foam::HashTableOps::values().
|
static |
Convert objectRegistry contents into dictionary.
Definition at line 1862 of file mappedPatchBase.C.
References dictionary::add(), dict, forAllIters, IOobject::name(), os(), dictionary::subDictOrAdd(), and regIOobject::writeData().
Referenced by syncObjects::sync().
|
static |
(recursively) construct and register IOFields from dictionary
Definition at line 1901 of file mappedPatchBase.C.
References Foam::constant::electromagnetic::e, Foam::exit(), Foam::FatalError, FatalErrorInFunction, and objectRegistry::subRegistry().
Referenced by syncObjects::sync().
void distribute | ( | List< Type > & | lst | ) | const |
Wrapper around map/interpolate data distribution.
Definition at line 30 of file mappedPatchBaseTemplates.C.
References mappedPatchBase::AMI(), mapDistribute::distribute(), mappedPatchBase::getCommunicator(), AMIInterpolation::interpolateToSource(), AMIInterpolation::interpolateToTarget(), mappedPatchBase::map(), mappedPatchBase::masterWorld(), mappedPatchBase::mode_, mappedPatchBase::NEARESTPATCHFACEAMI, mappedPatchBase::sameWorld(), UPstream::warnComm, and UPstream::worldComm.
Referenced by regionModel::toRegion(), mappedVelocityFluxFixedValueFvPatchField::updateCoeffs(), mappedFixedInternalValueFvPatchField< Type >::updateCoeffs(), mappedFlowRateFvPatchVectorField::updateCoeffs(), filmPyrolysisRadiativeCoupledMixedFvPatchScalarField::updateCoeffs(), turbulentTemperatureRadCoupledMixedFvPatchScalarField::updateCoeffs(), and humidityTemperatureCoupledMixedFvPatchScalarField::updateCoeffs().
void distribute | ( | List< Type > & | lst, |
const CombineOp & | cop | ||
) | const |
Wrapper around map/interpolate data distribution with operation.
Definition at line 103 of file mappedPatchBaseTemplates.C.
References UPstream::defaultCommsType, mapDistributeBase::distribute(), UPstream::msgType(), UPstream::warnComm, UPstream::worldComm, and Foam::Zero.
void reverseDistribute | ( | List< Type > & | lst | ) | const |
Wrapper around map/interpolate data distribution.
Definition at line 148 of file mappedPatchBaseTemplates.C.
References UPstream::warnComm, and UPstream::worldComm.
Referenced by regionModel::toPrimary().
void reverseDistribute | ( | List< Type > & | lst, |
const CombineOp & | cop | ||
) | const |
Wrapper around map/interpolate data distribution with operation.
Definition at line 177 of file mappedPatchBaseTemplates.C.
References UPstream::defaultCommsType, mapDistributeBase::distribute(), UPstream::msgType(), UPstream::warnComm, UPstream::worldComm, and Foam::Zero.
|
virtual |
Write as a dictionary.
Reimplemented in mappedWallPolyPatch, mappedPolyPatch, thermalBaffle1DFvPatchScalarField< solidType >, mappedFieldFvPatchField< Type >, mappedMixedFieldFvPatchField< Type >, mappedVariableThicknessWallPolyPatch, and semiPermeableBaffleMassFractionFvPatchScalarField.
Definition at line 1942 of file mappedPatchBase.C.
References Switch::name(), word::null, fileName::null, os(), Ostream::write(), Ostream::writeEntry(), Ostream::writeEntryIfDifferent(), and VectorSpace< Vector< scalar >, scalar, 3 >::zero.
Referenced by semiPermeableBaffleMassFractionFvPatchScalarField::write(), thermalBaffle1DFvPatchScalarField< solidType >::write(), mappedPolyPatch::write(), and mappedWallPolyPatch::write().
|
static |
Definition at line 137 of file mappedPatchBase.H.
|
static |
Definition at line 139 of file mappedPatchBase.H.
|
protected |
Patch to sample.
Definition at line 226 of file mappedPatchBase.H.
Referenced by mappedPatchBase::addWorldConnection(), mappedPolyPatch::mapCollocatedFaces(), mappedWallPolyPatch::mapCollocatedFaces(), mappedPolyPatch::newInternalProcFaces(), and mappedWallPolyPatch::newInternalProcFaces().
|
mutableprotected |
World to sample.
Definition at line 229 of file mappedPatchBase.H.
Referenced by mappedPatchBase::addWorldConnection().
|
mutableprotected |
Region to sample.
Definition at line 232 of file mappedPatchBase.H.
Referenced by mappedPolyPatch::nbrCells(), mappedWallPolyPatch::nbrCells(), mappedPolyPatch::neighbPolyPatchID(), mappedWallPolyPatch::neighbPolyPatchID(), mappedPolyPatch::neighbRegionID(), mappedWallPolyPatch::neighbRegionID(), mappedPolyPatch::newInternalProcFaces(), and mappedWallPolyPatch::newInternalProcFaces().
|
protected |
What to sample.
Definition at line 235 of file mappedPatchBase.H.
Referenced by mappedPatchBase::distribute(), and mappedPatchBase::mode().
|
mutableprotected |
Patch (if in sampleMode NEARESTPATCH*)
Definition at line 238 of file mappedPatchBase.H.
Referenced by mappedPolyPatch::nbrCells(), mappedWallPolyPatch::nbrCells(), mappedPolyPatch::neighbPolyPatchID(), mappedWallPolyPatch::neighbPolyPatchID(), mappedPolyPatch::newInternalProcFaces(), and mappedWallPolyPatch::newInternalProcFaces().
|
protected |
PatchGroup (if in sampleMode NEARESTPATCH*)
Definition at line 241 of file mappedPatchBase.H.
Empty or location of database.
Definition at line 244 of file mappedPatchBase.H.
Referenced by mappedPatchBase::sampleDatabase(), and mappedPatchBase::sampleDatabasePath().
|
protected |
How to obtain samples.
Definition at line 247 of file mappedPatchBase.H.
|
protected |
Offset vector (uniform)
Definition at line 250 of file mappedPatchBase.H.
|
protected |
Offset vector (nonuniform)
Definition at line 253 of file mappedPatchBase.H.
|
protected |
Offset distance (normal)
Definition at line 256 of file mappedPatchBase.H.
|
protected |
Communicator.
Definition at line 259 of file mappedPatchBase.H.
|
mutableprotected |
Same region.
Definition at line 262 of file mappedPatchBase.H.
|
mutableprotected |
Communication schedule:
Definition at line 272 of file mappedPatchBase.H.
|
protected |
Flag to indicate that slave patch should be reversed for AMI.
Definition at line 278 of file mappedPatchBase.H.
|
mutableprotected |
Pointer to AMI interpolator.
Definition at line 281 of file mappedPatchBase.H.
|
mutableprotected |
Pointer to projection surface employed by AMI interpolator.
Definition at line 284 of file mappedPatchBase.H.
|
protected |
Dictionary storing projection surface description.
Definition at line 287 of file mappedPatchBase.H.