Volume-weighted interpolation stencil. More...
Protected Member Functions | |
void | walkFront (const scalar layerRelax, labelList &allCellTypes, scalarField &allWeight) const |
void | findHoles (const globalIndex &globalCells, const fvMesh &mesh, const labelList &zoneID, const labelListList &stencil, labelList &cellTypes) const |
void | markPatchCells (const fvMesh &mesh, const labelList &cellMap, labelList &patchCellTypes) const |
void | combineCellTypes (const label subZoneID, const fvMesh &subMesh, const labelList &subCellMap, const label donorZoneID, const labelListList &toOtherCells, const List< scalarList > &weights, const labelList &otherCells, const labelList &interpolatedOtherPatchTypes, labelListList &allStencil, scalarListList &allWeights, labelList &allCellTypes, labelList &allDonorID) const |
void | interpolatePatchTypes (const labelListList &addressing, const labelList &patchTypes, labelList &result) const |
void | interpolatePatchTypes (const autoPtr< mapDistribute > &mapPtr, const labelListList &addressing, const labelList &patchTypes, labelList &result) const |
Protected Attributes | |
const dictionary | dict_ |
scalar | overlapTolerance_ |
labelList | cellTypes_ |
labelList | interpolationCells_ |
autoPtr< mapDistribute > | cellInterpolationMap_ |
labelListList | cellStencil_ |
List< scalarList > | cellInterpolationWeights_ |
volScalarField | cellInterpolationWeight_ |
![]() | |
const fvMesh & | mesh_ |
wordHashSet | nonInterpolatedFields_ |
Static Protected Attributes | |
static scalar | defaultOverlapTolerance_ = 1e-6 |
![]() | |
static const Enum< cellType > | cellTypeNames_ |
Additional Inherited Members | |
![]() | |
enum | patchCellType { OTHER = 0, PATCH = 1, OVERSET = 2 } |
enum | cellType { CALCULATED = 0, INTERPOLATED = 1, HOLE = 2 } |
![]() | |
static autoPtr< cellCellStencil > | New (const fvMesh &, const dictionary &dict, const bool update=true) |
static const labelIOList & | zoneID (const fvMesh &) |
static void | globalCellCells (const globalIndex &gi, const polyMesh &mesh, const boolList &isValidDonor, const labelList &selectedCells, labelListList &cellCells, pointListList &cellCellCentres) |
![]() | |
static labelList | count (const label size, const labelUList &lst) |
template<class Type > | |
static tmp< volScalarField > | createField (const fvMesh &mesh, const word &name, const UList< Type > &) |
Volume-weighted interpolation stencil.
Definition at line 50 of file cellVolumeWeightCellCellStencil.H.
cellVolumeWeight | ( | const fvMesh & | mesh, |
const dictionary & | dict, | ||
const bool | doUpdate | ||
) |
Definition at line 655 of file cellVolumeWeightCellCellStencil.C.
References Foam::expressions::patchExpr::debug, Foam::endl(), forAll, Foam::Pout, IOobject::typeHeaderOk(), update(), and zoneID.
|
virtual |
Definition at line 734 of file cellVolumeWeightCellCellStencil.C.
|
protected |
Definition at line 53 of file cellVolumeWeightCellCellStencil.C.
References bitSet::count(), Foam::endl(), forAll, Foam::Info, Foam::returnReduce(), bitSet::set(), bitSet::test(), and bitSet::transfer().
|
protected |
Definition at line 197 of file cellVolumeWeightCellCellStencil.C.
References cellTypes, mapDistribute::distribute(), Foam::endl(), fvPatch::faceCells(), forAll, Foam::Info, mesh, Foam::nl, regionSplit::nRegions(), reduce(), and Foam::Zero.
|
protected |
Definition at line 438 of file cellVolumeWeightCellCellStencil.C.
References fvPatch::faceCells(), forAll, and mesh.
|
protected |
Definition at line 546 of file cellVolumeWeightCellCellStencil.C.
References forAll, and Foam::mag().
|
protected |
Definition at line 478 of file cellVolumeWeightCellCellStencil.C.
References forAll, and patchTypes().
|
protected |
Definition at line 513 of file cellVolumeWeightCellCellStencil.C.
References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and patchTypes().
TypeName | ( | "cellVolumeWeight" | ) |
|
inline |
Definition at line 182 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::overlapTolerance_.
|
virtual |
Implements cellCellStencil.
Definition at line 740 of file cellVolumeWeightCellCellStencil.C.
References GeometricField::boundaryFieldRef(), List::clear(), dynamicOversetFvMesh::correctBoundaryConditions(), Foam::BitOps::count(), Foam::expressions::patchExpr::debug, Foam::decrIndent(), Foam::dimless, Foam::endl(), forAll, Foam::gMax(), meshToMesh::imCellVolumeWeight, Foam::incrIndent(), Foam::indent(), Foam::Info, GeometricField::internalField(), Pstream::listCombineGather(), Pstream::listCombineScatter(), meshParts(), Foam::mkDir(), OFstream::name(), primitiveMesh::nCells(), nCellsPerZone(), Foam::nl, IOobject::NO_READ, IOobject::NO_WRITE, nZones, patchTypes(), meshToMesh::pmAABB, Foam::Pout, Foam::returnReduce(), s, meshToMesh::srcMap(), meshToMesh::srcToTgtCellAddr(), meshToMesh::srcToTgtCellWght(), Foam::sum(), meshToMesh::tgtMap(), meshToMesh::tgtToSrcCellAddr(), meshToMesh::tgtToSrcCellWght(), globalIndex::toGlobal(), OBJstream::write(), Foam::Zero, and zoneID.
Referenced by cellVolumeWeight::cellInterpolationMap().
|
inlinevirtual |
Implements cellCellStencil.
Definition at line 191 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::cellTypes_.
|
inlinevirtual |
Implements cellCellStencil.
Definition at line 197 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::interpolationCells_.
|
inlinevirtual |
Implements cellCellStencil.
Definition at line 203 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::cellInterpolationMap_, and cellVolumeWeight::update().
|
inlinevirtual |
Implements cellCellStencil.
Definition at line 214 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::cellStencil_.
|
inlinevirtual |
Implements cellCellStencil.
Definition at line 220 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::cellInterpolationWeights_.
|
inlinevirtual |
Implements cellCellStencil.
Definition at line 227 of file cellVolumeWeightCellCellStencil.H.
References cellVolumeWeight::cellInterpolationWeight_.
|
virtual |
Implements cellCellStencil.
Definition at line 1272 of file cellVolumeWeightCellCellStencil.C.
References forAll, Foam::mag(), List::setSize(), and Foam::sum().
|
staticprotected |
Definition at line 59 of file cellVolumeWeightCellCellStencil.H.
|
protected |
Definition at line 65 of file cellVolumeWeightCellCellStencil.H.
|
protected |
Definition at line 68 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::overlapTolerance().
|
protected |
Definition at line 71 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::cellTypes().
|
protected |
Definition at line 74 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::interpolationCells().
|
protected |
Definition at line 77 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::cellInterpolationMap().
|
protected |
Definition at line 80 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::cellStencil().
|
protected |
Definition at line 83 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::cellInterpolationWeights().
|
protected |
Definition at line 86 of file cellVolumeWeightCellCellStencil.H.
Referenced by cellVolumeWeight::cellInterpolationWeight().
Copyright © 2011-2018 OpenFOAM | OPENFOAM® is a registered trademark of OpenCFD Ltd.