Cell-volume-weighted mesh-to-mesh interpolation class. More...
#include <cellVolumeWeightMethod.H>


Public Member Functions | |
| TypeName ("cellVolumeWeight") | |
| Run-time type information. | |
| cellVolumeWeightMethod (const polyMesh &src, const polyMesh &tgt) | |
| Construct from source and target meshes. | |
| virtual | ~cellVolumeWeightMethod () |
| Destructor. | |
| virtual void | calculate (labelListList &srcToTgtAddr, scalarListList &srcToTgtWght, pointListList &srcToTgtVec, labelListList &tgtToSrcAddr, scalarListList &tgtToSrcWght, pointListList &tgtToSrcVec) |
| Calculate addressing and weights and optionally offset vectors. | |
| Public Member Functions inherited from meshToMeshMethod | |
| TypeName ("meshToMeshMethod") | |
| Run-time type information. | |
| declareRunTimeSelectionTable (autoPtr, meshToMeshMethod, components,(const polyMesh &src, const polyMesh &tgt),(src, tgt)) | |
| Declare runtime constructor selection table. | |
| meshToMeshMethod (const polyMesh &src, const polyMesh &tgt) | |
| Construct from source and target meshes. | |
| virtual | ~meshToMeshMethod () |
| Destructor. | |
| const polyMesh & | src () const |
| Return const access to the source mesh. | |
| const polyMesh & | tgt () const |
| Return const access to the target mesh. | |
| scalar | V () const |
| Return const access to the overlap volume. | |
| void | writeConnectivity (const polyMesh &mesh1, const polyMesh &mesh2, const labelListList &mesh1ToMesh2Addr) const |
| Write the connectivity (debugging). | |
Protected Member Functions | |
| bool | findInitialSeeds (const labelList &srcCellIDs, const boolList &mapFlag, const label startSeedI, label &srcSeedI, label &tgtSeedI) const |
| Find indices of overlapping cells in src and tgt meshes - returns. | |
| void | calculateAddressing (labelListList &srcToTgtCellAddr, scalarListList &srcToTgtCellWght, labelListList &tgtToSrcCellAddr, scalarListList &tgtToSrcCellWght, const label srcSeedI, const label tgtSeedI, const labelList &srcCellIDs, boolList &mapFlag, label &startSeedI) |
| Calculate the mesh-to-mesh addressing and weights. | |
| void | setNextCells (label &startSeedI, label &srcCelli, label &tgtCelli, const labelList &srcCellIDs, const boolList &mapFlag, const labelUList &visitedCells, labelList &seedCells) const |
| Set the next cells in the advancing front algorithm. | |
| Protected Member Functions inherited from meshToMeshMethod | |
| labelList | maskCells () const |
| Return src cell IDs for the overlap region. | |
| virtual bool | intersect (const label srcCelli, const label tgtCelli) const |
| Return the true if cells intersect. | |
| virtual scalar | interVol (const label srcCelli, const label tgtCelli) const |
| Return the intersection volume between two cells. | |
| virtual Tuple2< scalar, point > | interVolAndCentroid (const label srcCellI, const label tgtCellI) |
| Return the intersection volume and centroid between two cells. | |
| virtual void | appendNbrCells (const label tgtCelli, const polyMesh &mesh, const labelUList &visitedTgtCells, DynamicList< label > &nbrTgtCellIDs) const |
| Append target cell neighbour cells to cellIDs list. | |
| virtual bool | initialise (labelListList &srcToTgtAddr, scalarListList &srcToTgtWght, labelListList &tgtToTgtAddr, scalarListList &tgtToTgtWght) const |
Additional Inherited Members | |
| Static Public Member Functions inherited from meshToMeshMethod | |
| static autoPtr< meshToMeshMethod > | New (const word &methodName, const polyMesh &src, const polyMesh &tgt) |
| Selector. | |
| Protected Attributes inherited from meshToMeshMethod | |
| const polyMesh & | src_ |
| Reference to the source mesh. | |
| const polyMesh & | tgt_ |
| Reference to the target mesh. | |
| scalar | V_ |
| Cell total volume in overlap region [m3]. | |
| Static Protected Attributes inherited from meshToMeshMethod | |
| static scalar | tolerance_ = 1e-6 |
| Tolerance used in volume overlap calculations. | |
Cell-volume-weighted mesh-to-mesh interpolation class.
Volume conservative.
Definition at line 48 of file cellVolumeWeightMethod.H.
Construct from source and target meshes.
Definition at line 329 of file cellVolumeWeightMethod.C.
References meshToMeshMethod::src(), and meshToMeshMethod::tgt().

|
virtual |
Destructor.
Definition at line 341 of file cellVolumeWeightMethod.C.
|
protected |
Find indices of overlapping cells in src and tgt meshes - returns.
true if found a matching pair
Definition at line 42 of file cellVolumeWeightMethod.C.
References Foam::endl(), meshToMeshMethod::intersect(), points, Foam::Pout, pts, UList< T >::size(), meshToMeshMethod::src_, and meshToMeshMethod::tgt_.
Referenced by calculate(), correctedCellVolumeWeightMethod::calculate(), and setNextCells().


|
protected |
Calculate the mesh-to-mesh addressing and weights.
Definition at line 87 of file cellVolumeWeightMethod.C.
References List< T >::append(), meshToMeshMethod::appendNbrCells(), UList< T >::back(), DynamicList< T, SizeMin >::clear(), e, UList< T >::empty(), Foam::endl(), forAll, meshToMeshMethod::interVol(), Foam::mag(), DynamicList< T, SizeMin >::pop_back(), DynamicList< T, SizeMin >::push_back(), setNextCells(), meshToMeshMethod::src_, Foam::sum(), meshToMeshMethod::tgt_, meshToMeshMethod::tolerance_, List< T >::transfer(), meshToMeshMethod::V_, and WarningInFunction.
Referenced by calculate().


|
protected |
Set the next cells in the advancing front algorithm.
Definition at line 225 of file cellVolumeWeightMethod.C.
References Foam::endl(), findInitialSeeds(), forAll, meshToMeshMethod::intersect(), Foam::Pout, UList< T >::size(), and meshToMeshMethod::src_.
Referenced by calculateAddressing(), and correctedCellVolumeWeightMethod::calculateAddressing().


| TypeName | ( | "cellVolumeWeight" | ) |
Run-time type information.
References meshToMeshMethod::src(), and meshToMeshMethod::tgt().

|
virtual |
Calculate addressing and weights and optionally offset vectors.
Implements meshToMeshMethod.
Reimplemented in correctedCellVolumeWeightMethod.
Definition at line 347 of file cellVolumeWeightMethod.C.
References calculateAddressing(), findInitialSeeds(), meshToMeshMethod::initialise(), meshToMeshMethod::maskCells(), and meshToMeshMethod::src_.
