Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
meshToMesh Class Reference

Class to calculate the cell-addressing between two overlapping meshes. More...

Collaboration diagram for meshToMesh:
Collaboration graph
[legend]

Public Types

enum  interpolationMethod { imDirect, imMapNearest, imCellVolumeWeight, imCorrectedCellVolumeWeight }
 Enumeration specifying interpolation method. More...
 

Public Member Functions

 TypeName ("meshToMesh")
 Run-time type information. More...
 
 meshToMesh (const polyMesh &src, const polyMesh &tgt, const interpolationMethod &method, const bool interpAllPatches=true)
 Construct from source and target meshes. More...
 
 meshToMesh (const polyMesh &src, const polyMesh &tgt, const word &methodName, const word &AMIMethodName, const bool interpAllPatches=true)
 Construct from source and target meshes, generic mapping methods. More...
 
 meshToMesh (const polyMesh &src, const polyMesh &tgt, const interpolationMethod &method, const HashTable< word > &patchMap, const wordList &cuttingPatches)
 Construct from source and target meshes. More...
 
 meshToMesh (const polyMesh &src, const polyMesh &tgt, const word &methodName, const word &AMIMethodName, const HashTable< word > &patchMap, const wordList &cuttingPatches)
 Construct from source and target meshes, generic mapping methods. More...
 
virtual ~meshToMesh ()
 Destructor. More...
 
const polyMeshsrcRegion () const
 Return const access to the source mesh. More...
 
const polyMeshtgtRegion () const
 Return const access to the target mesh. More...
 
const labelListListsrcToTgtCellAddr () const
 Return const access to the source to target cell addressing. More...
 
const labelListListtgtToSrcCellAddr () const
 Return const access to the target to source cell addressing. More...
 
const scalarListListsrcToTgtCellWght () const
 Return const access to the source to target cell weights. More...
 
const scalarListListtgtToSrcCellWght () const
 Return const access to the target to source cell weights. More...
 
const pointListListsrcToTgtCellVec () const
 Return const access to the source to target offset vectors. More...
 
const pointListListtgtToSrcCellVec () const
 Return const access to the target to source offset vectors. More...
 
scalar V () const
 Return const access to the overlap volume. More...
 
const PtrList< AMIPatchToPatchInterpolation > & patchAMIs () const
 Return the list of AMIs between source and target patches. More...
 
template<class Type , class CombineOp >
void mapSrcToTgt (const UList< Type > &srcFld, const CombineOp &cop, List< Type > &result) const
 Map field from src to tgt mesh with defined operation. More...
 
template<class Type , class CombineOp >
void mapSrcToTgt (const UList< Type > &srcField, const UList< typename outerProduct< vector, Type >::type > &, const CombineOp &cop, List< Type > &result) const
 Map extrapolated field (using gradient) from src to tgt. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > mapSrcToTgt (const Field< Type > &srcFld, const CombineOp &cop) const
 Return the src field mapped to the tgt mesh with a defined. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > mapSrcToTgt (const tmp< Field< Type > > &tsrcFld, const CombineOp &cop) const
 Convenience function to map a tmp field to the tgt mesh. More...
 
template<class Type >
tmp< Field< Type > > mapSrcToTgt (const Field< Type > &srcFld) const
 Convenience function to map a field to the tgt mesh with a. More...
 
template<class Type >
tmp< Field< Type > > mapSrcToTgt (const tmp< Field< Type > > &tsrcFld) const
 Convenience function to map a tmp field to the tgt mesh. More...
 
template<class Type , class CombineOp >
void mapTgtToSrc (const UList< Type > &tgtFld, const CombineOp &cop, List< Type > &result) const
 Map field from tgt to src mesh with defined operation. More...
 
template<class Type , class CombineOp >
void mapTgtToSrc (const UList< Type > &srcField, const UList< typename outerProduct< vector, Type >::type > &, const CombineOp &cop, List< Type > &result) const
 Map extrapolated field (using gradient) from tgt to src. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > mapTgtToSrc (const Field< Type > &tgtFld, const CombineOp &cop) const
 Return the tgt field mapped to the src mesh with a defined. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > mapTgtToSrc (const tmp< Field< Type > > &ttgtFld, const CombineOp &cop) const
 Convenience function to map a tmp field to the src mesh. More...
 
template<class Type >
tmp< Field< Type > > mapTgtToSrc (const Field< Type > &tgtFld) const
 Convenience function to map a field to the src mesh with a. More...
 
template<class Type >
tmp< Field< Type > > mapTgtToSrc (const tmp< Field< Type > > &ttgtFld) const
 Convenience function to map a tmp field to the src mesh. More...
 
template<class Type , class CombineOp >
void mapSrcToTgt (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, GeometricField< Type, fvPatchField, volMesh > &result, const bool secondOrder=true) const
 Interpolate a field with a defined operation. Values. More...
 
template<class Type , class CombineOp >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapSrcToTgt (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, const bool secondOrder=true) const
 Interpolate a field with a defined operation. The initial. More...
 
template<class Type , class CombineOp >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapSrcToTgt (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const CombineOp &cop, const bool secondOrder=true) const
 Interpolate a tmp field with a defined operation. The. More...
 
template<class Type >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapSrcToTgt (const GeometricField< Type, fvPatchField, volMesh > &field, const bool secondOrder=true) const
 Convenience function to map a field with a default. More...
 
template<class Type >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapSrcToTgt (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const bool secondOrder=true) const
 Convenience function to map a tmp field with a default. More...
 
template<class Type , class CombineOp >
void mapTgtToSrc (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, GeometricField< Type, fvPatchField, volMesh > &result, const bool secondOrder=true) const
 Interpolate a field with a defined operation. Values. More...
 
template<class Type , class CombineOp >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapTgtToSrc (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, const bool secondOrder=true) const
 Interpolate a field with a defined operation. The initial. More...
 
template<class Type , class CombineOp >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapTgtToSrc (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const CombineOp &cop, const bool secondOrder=true) const
 Interpolate a tmp field with a defined operation. The. More...
 
template<class Type >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapTgtToSrc (const GeometricField< Type, fvPatchField, volMesh > &field, const bool secondOrder=true) const
 Convenience function to map a field with a default. More...
 
template<class Type >
tmp< GeometricField< Type, fvPatchField, volMesh > > mapTgtToSrc (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const bool secondOrder=true) const
 Convenience function to map a tmp field with a default. More...
 
template<>
void mapInternalSrcToTgt (const GeometricField< sphericalTensor, fvPatchField, volMesh > &field, const plusEqOp< sphericalTensor > &cop, GeometricField< sphericalTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalSrcToTgt (const GeometricField< sphericalTensor, fvPatchField, volMesh > &field, const minusEqOp< sphericalTensor > &cop, GeometricField< sphericalTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalSrcToTgt (const GeometricField< symmTensor, fvPatchField, volMesh > &field, const plusEqOp< symmTensor > &cop, GeometricField< symmTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalSrcToTgt (const GeometricField< symmTensor, fvPatchField, volMesh > &field, const minusEqOp< symmTensor > &cop, GeometricField< symmTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalSrcToTgt (const GeometricField< tensor, fvPatchField, volMesh > &field, const plusEqOp< tensor > &cop, GeometricField< tensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalSrcToTgt (const GeometricField< tensor, fvPatchField, volMesh > &field, const minusEqOp< tensor > &cop, GeometricField< tensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalTgtToSrc (const GeometricField< sphericalTensor, fvPatchField, volMesh > &field, const plusEqOp< sphericalTensor > &cop, GeometricField< sphericalTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalTgtToSrc (const GeometricField< sphericalTensor, fvPatchField, volMesh > &field, const minusEqOp< sphericalTensor > &cop, GeometricField< sphericalTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalTgtToSrc (const GeometricField< symmTensor, fvPatchField, volMesh > &field, const plusEqOp< symmTensor > &cop, GeometricField< symmTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalTgtToSrc (const GeometricField< symmTensor, fvPatchField, volMesh > &field, const minusEqOp< symmTensor > &cop, GeometricField< symmTensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalTgtToSrc (const GeometricField< tensor, fvPatchField, volMesh > &field, const plusEqOp< tensor > &cop, GeometricField< tensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapInternalTgtToSrc (const GeometricField< tensor, fvPatchField, volMesh > &field, const minusEqOp< tensor > &cop, GeometricField< tensor, fvPatchField, volMesh > &result, const bool secondOrder) const
 
template<>
void mapAndOpSrcToTgt (const AMIPatchToPatchInterpolation &AMI, const Field< scalar > &srcField, Field< scalar > &tgtField, const plusEqOp< scalar > &cop) const
 
template<>
void mapAndOpSrcToTgt (const AMIPatchToPatchInterpolation &AMI, const Field< vector > &srcField, Field< vector > &tgtField, const plusEqOp< vector > &cop) const
 
template<>
void mapAndOpSrcToTgt (const AMIPatchToPatchInterpolation &AMI, const Field< sphericalTensor > &srcField, Field< sphericalTensor > &tgtField, const plusEqOp< sphericalTensor > &cop) const
 
template<>
void mapAndOpSrcToTgt (const AMIPatchToPatchInterpolation &AMI, const Field< symmTensor > &srcField, Field< symmTensor > &tgtField, const plusEqOp< symmTensor > &cop) const
 
template<>
void mapAndOpSrcToTgt (const AMIPatchToPatchInterpolation &AMI, const Field< tensor > &srcField, Field< tensor > &tgtField, const plusEqOp< tensor > &cop) const
 
template<>
void mapAndOpTgtToSrc (const AMIPatchToPatchInterpolation &AMI, Field< scalar > &srcField, const Field< scalar > &tgtField, const plusEqOp< scalar > &cop) const
 
template<>
void mapAndOpTgtToSrc (const AMIPatchToPatchInterpolation &AMI, Field< vector > &srcField, const Field< vector > &tgtField, const plusEqOp< vector > &cop) const
 
template<>
void mapAndOpTgtToSrc (const AMIPatchToPatchInterpolation &AMI, Field< sphericalTensor > &srcField, const Field< sphericalTensor > &tgtField, const plusEqOp< sphericalTensor > &cop) const
 
template<>
void mapAndOpTgtToSrc (const AMIPatchToPatchInterpolation &AMI, Field< symmTensor > &srcField, const Field< symmTensor > &tgtField, const plusEqOp< symmTensor > &cop) const
 
template<>
void mapAndOpTgtToSrc (const AMIPatchToPatchInterpolation &AMI, Field< tensor > &srcField, const Field< tensor > &tgtField, const plusEqOp< tensor > &cop) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > mapSrcToTgt (const Field< Type > &srcField, const CombineOp &cop) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > mapSrcToTgt (const tmp< Field< Type > > &tsrcField, const CombineOp &cop) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > mapSrcToTgt (const Field< Type > &srcField) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > mapSrcToTgt (const tmp< Field< Type > > &tsrcField) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > mapTgtToSrc (const Field< Type > &tgtField, const CombineOp &cop) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > mapTgtToSrc (const tmp< Field< Type > > &ttgtField, const CombineOp &cop) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > mapTgtToSrc (const Field< Type > &tgtField) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > mapTgtToSrc (const tmp< Field< Type > > &ttgtField) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapSrcToTgt (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, const bool secondOrder) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapSrcToTgt (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const CombineOp &cop, const bool secondOrder) const
 
template<class Type >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapSrcToTgt (const GeometricField< Type, fvPatchField, volMesh > &field, const bool secondOrder) const
 
template<class Type >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapSrcToTgt (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const bool secondOrder) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapTgtToSrc (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, const bool secondOrder) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapTgtToSrc (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const CombineOp &cop, const bool secondOrder) const
 
template<class Type >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapTgtToSrc (const GeometricField< Type, fvPatchField, volMesh > &field, const bool secondOrder) const
 
template<class Type >
Foam::tmp< Foam::GeometricField< Type, Foam::fvPatchField, Foam::volMesh > > mapTgtToSrc (const tmp< GeometricField< Type, fvPatchField, volMesh > > &tfield, const bool secondOrder) const
 

Static Public Member Functions

static AMIPatchToPatchInterpolation::interpolationMethod interpolationMethodAMI (const interpolationMethod method)
 Conversion between mesh and patch interpolation methods. More...
 

Static Public Attributes

static const NamedEnum< interpolationMethod, 4 > interpolationMethodNames_
 

Private Member Functions

template<class Type >
void add (UList< Type > &fld, const label offset) const
 Helper function to add a constant offset to a list. More...
 
template<class Type , class CombineOp >
void mapInternalSrcToTgt (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, GeometricField< Type, fvPatchField, volMesh > &result, const bool secondOrder) const
 Helper function to interpolate internal field. Optionally uses. More...
 
template<class Type , class CombineOp >
void mapInternalTgtToSrc (const GeometricField< Type, fvPatchField, volMesh > &field, const CombineOp &cop, GeometricField< Type, fvPatchField, volMesh > &result, const bool secondOrder) const
 Helper function to interpolate internal field. Optionally uses. More...
 
template<class Type , class CombineOp >
void mapAndOpSrcToTgt (const AMIPatchToPatchInterpolation &AMI, const Field< Type > &srcField, Field< Type > &tgtField, const CombineOp &cop) const
 Helper function to interpolate patch field. Template. More...
 
template<class Type , class CombineOp >
void mapAndOpTgtToSrc (const AMIPatchToPatchInterpolation &AMI, Field< Type > &srcField, const Field< Type > &tgtField, const CombineOp &cop) const
 Helper function to interpolate patch field. Template. More...
 
labelList maskCells (const polyMesh &src, const polyMesh &tgt) const
 Return src cell IDs for the overlap region. More...
 
void normaliseWeights (const word &descriptor, const labelListList &addr, scalarListList &wght) const
 Normalise the interpolation weights. More...
 
void calcAddressing (const word &methodName, const polyMesh &src, const polyMesh &tgt)
 Calculate the addressing between overlapping regions of src and tgt. More...
 
void calculate (const word &methodName)
 Calculate - main driver function. More...
 
void calculatePatchAMIs (const word &amiMethodName)
 Calculate patch overlap. More...
 
void constructNoCuttingPatches (const word &methodName, const word &AMIMethodName, const bool interpAllPatches)
 Constructor helper. More...
 
void constructFromCuttingPatches (const word &methodName, const word &AMIMethodName, const HashTable< word > &patchMap, const wordList &cuttingPatches)
 Constructor helper. More...
 
label calcDistribution (const polyMesh &src, const polyMesh &tgt) const
 Determine whether the meshes are split across multiple pocessors. More...
 
label calcOverlappingProcs (const List< treeBoundBoxList > &procBb, const boundBox &bb, boolList &overlaps) const
 Determine which processor bounding-boxes overlap. More...
 
autoPtr< mapDistributecalcProcMap (const polyMesh &src, const polyMesh &tgt) const
 Calculate the mapping between processors. More...
 
void distributeCells (const mapDistribute &map, const polyMesh &tgtMesh, const globalIndex &globalI, List< pointField > &points, List< label > &nInternalFaces, List< faceList > &faces, List< labelList > &faceOwner, List< labelList > &faceNeighbour, List< labelList > &cellIDs, List< labelList > &nbrProcIDs, List< labelList > &procLocalFaceIDs) const
 Distribute mesh info from 'my' processor to others. More...
 
void distributeAndMergeCells (const mapDistribute &map, const polyMesh &tgt, const globalIndex &globalI, pointField &tgtPoints, faceList &tgtFaces, labelList &tgtFaceOwners, labelList &tgtFaceNeighbours, labelList &tgtCellIDs) const
 Collect pieces of tgt mesh from other procssors and restructure. More...
 
 meshToMesh (const meshToMesh &)
 Disallow default bitwise copy construct. More...
 
void operator= (const meshToMesh &)
 Disallow default bitwise assignment. More...
 

Private Attributes

const polyMeshsrcRegion_
 Reference to the source mesh. More...
 
const polyMeshtgtRegion_
 Reference to the target mesh. More...
 
List< labelsrcPatchID_
 List of target patch IDs per source patch (local index) More...
 
List< labeltgtPatchID_
 List of source patch IDs per target patch (local index) More...
 
PtrList< AMIPatchToPatchInterpolationpatchAMIs_
 List of AMIs between source and target patches. More...
 
List< labelcuttingPatches_
 Cutting patches whose values are set using a zero-gradient condition. More...
 
labelListList srcToTgtCellAddr_
 Source to target cell addressing. More...
 
labelListList tgtToSrcCellAddr_
 Target to source cell addressing. More...
 
scalarListList srcToTgtCellWght_
 Source to target cell interplation weights. More...
 
scalarListList tgtToSrcCellWght_
 Target to source cell interpolation weights. More...
 
pointListList srcToTgtCellVec_
 Source to target cell offset vectors. More...
 
pointListList tgtToSrcCellVec_
 Target to source cell offset vectors. More...
 
scalar V_
 Cell total volume in overlap region [m3]. More...
 
label singleMeshProc_
 Index of processor that holds all of both sides. -1 in all other. More...
 
autoPtr< mapDistributesrcMapPtr_
 Source map pointer - parallel running only. More...
 
autoPtr< mapDistributetgtMapPtr_
 Target map pointer - parallel running only. More...
 

Detailed Description

Class to calculate the cell-addressing between two overlapping meshes.

Mapping is performed using a run-time selectable interpolation mothod

See also
meshToMeshMethod
Source files

Definition at line 61 of file meshToMesh.H.

Member Enumeration Documentation

◆ interpolationMethod

Enumeration specifying interpolation method.

Enumerator
imDirect 
imMapNearest 
imCellVolumeWeight 
imCorrectedCellVolumeWeight 

Definition at line 68 of file meshToMesh.H.

Constructor & Destructor Documentation

◆ meshToMesh() [1/5]

meshToMesh ( const meshToMesh )
private

Disallow default bitwise copy construct.

◆ meshToMesh() [2/5]

meshToMesh ( const polyMesh src,
const polyMesh tgt,
const interpolationMethod method,
const bool  interpAllPatches = true 
)

Construct from source and target meshes.

Definition at line 798 of file meshToMesh.C.

References AMIInterpolation< SourcePatch, TargetPatch >::interpolationMethodToWord().

Here is the call graph for this function:

◆ meshToMesh() [3/5]

meshToMesh ( const polyMesh src,
const polyMesh tgt,
const word methodName,
const word AMIMethodName,
const bool  interpAllPatches = true 
)

Construct from source and target meshes, generic mapping methods.

Definition at line 835 of file meshToMesh.C.

◆ meshToMesh() [4/5]

meshToMesh ( const polyMesh src,
const polyMesh tgt,
const interpolationMethod method,
const HashTable< word > &  patchMap,
const wordList cuttingPatches 
)

Construct from source and target meshes.

Definition at line 865 of file meshToMesh.C.

References AMIInterpolation< SourcePatch, TargetPatch >::interpolationMethodToWord().

Here is the call graph for this function:

◆ meshToMesh() [5/5]

meshToMesh ( const polyMesh src,
const polyMesh tgt,
const word methodName,
const word AMIMethodName,
const HashTable< word > &  patchMap,
const wordList cuttingPatches 
)

Construct from source and target meshes, generic mapping methods.

Definition at line 902 of file meshToMesh.C.

◆ ~meshToMesh()

~meshToMesh ( )
virtual

Destructor.

Definition at line 938 of file meshToMesh.C.

Member Function Documentation

◆ add()

void add ( UList< Type > &  fld,
const label  offset 
) const
private

Helper function to add a constant offset to a list.

Definition at line 69 of file meshToMeshTemplates.C.

References fld(), and forAll.

Here is the call graph for this function:

◆ mapInternalSrcToTgt() [1/7]

void mapInternalSrcToTgt ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
GeometricField< Type, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const
private

Helper function to interpolate internal field. Optionally uses.

gradient. Template specialisations for tensor types below

Definition at line 501 of file meshToMeshTemplates.C.

References Foam::fvc::grad(), internalField(), GeometricField::internalField(), and Foam::returnReduce().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [1/7]

void mapInternalTgtToSrc ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
GeometricField< Type, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const
private

Helper function to interpolate internal field. Optionally uses.

gradient. Template specialisations for tensor types below

Definition at line 740 of file meshToMeshTemplates.C.

References Foam::fvc::grad(), internalField(), GeometricField::internalField(), and Foam::returnReduce().

Here is the call graph for this function:

◆ mapAndOpSrcToTgt() [1/6]

void mapAndOpSrcToTgt ( const AMIPatchToPatchInterpolation AMI,
const Field< Type > &  srcField,
Field< Type > &  tgtField,
const CombineOp &  cop 
) const
private

Helper function to interpolate patch field. Template.

specialisations below

Definition at line 527 of file meshToMeshTemplates.C.

References AMIInterpolation< SourcePatch, TargetPatch >::interpolateToTarget().

Here is the call graph for this function:

◆ mapAndOpTgtToSrc() [1/6]

void mapAndOpTgtToSrc ( const AMIPatchToPatchInterpolation AMI,
Field< Type > &  srcField,
const Field< Type > &  tgtField,
const CombineOp &  cop 
) const
private

Helper function to interpolate patch field. Template.

specialisations below

Definition at line 766 of file meshToMeshTemplates.C.

References AMIInterpolation< SourcePatch, TargetPatch >::interpolateToSource().

Here is the call graph for this function:

◆ maskCells()

Foam::labelList maskCells ( const polyMesh src,
const polyMesh tgt 
) const
private

Return src cell IDs for the overlap region.

Definition at line 324 of file meshToMesh.C.

References polyMesh::bounds(), cells, primitiveMesh::cells(), Foam::endl(), polyMesh::faces(), forAll, boundBox::inflate(), boundBox::max(), Foam::max(), boundBox::min(), Foam::min(), boundBox::overlaps(), points, polyMesh::points(), Foam::Pout, and HashTable::size().

Here is the call graph for this function:

◆ normaliseWeights()

void normaliseWeights ( const word descriptor,
const labelListList addr,
scalarListList wght 
) const
private

Normalise the interpolation weights.

Definition at line 361 of file meshToMesh.C.

References forAll, Foam::returnReduce(), s(), List::size(), Foam::sum(), and w().

Referenced by meshToMesh::calculate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ calcAddressing()

void calcAddressing ( const word methodName,
const polyMesh src,
const polyMesh tgt 
)
private

Calculate the addressing between overlapping regions of src and tgt.

meshes

Definition at line 388 of file meshToMesh.C.

References Foam::compressible::New().

Referenced by meshToMesh::calculate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ calculate()

void calculate ( const word methodName)
private

◆ calculatePatchAMIs()

void calculatePatchAMIs ( const word amiMethodName)
private

Calculate patch overlap.

Definition at line 653 of file meshToMesh.C.

References polyPatch::boundaryMesh(), Foam::decrIndent(), Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::incrIndent(), Foam::Info, patchIdentifier::name(), and faceAreaIntersect::tmMesh.

Here is the call graph for this function:

◆ constructNoCuttingPatches()

void constructNoCuttingPatches ( const word methodName,
const word AMIMethodName,
const bool  interpAllPatches 
)
private

◆ constructFromCuttingPatches()

void constructFromCuttingPatches ( const word methodName,
const word AMIMethodName,
const HashTable< word > &  patchMap,
const wordList cuttingPatches 
)
private

Constructor helper.

Definition at line 750 of file meshToMesh.C.

References DynamicList::append(), polyPatch::boundaryMesh(), polyPatch::constraintType(), forAll, forAllConstIter(), patchIdentifier::index(), List::size(), and HashTable::size().

Here is the call graph for this function:

◆ calcDistribution()

Foam::label calcDistribution ( const polyMesh src,
const polyMesh tgt 
) const
private

Determine whether the meshes are split across multiple pocessors.

Definition at line 38 of file meshToMeshParallelOps.C.

References Foam::endl(), Foam::findIndex(), Foam::Info, primitiveMesh::nCells(), and Foam::sum().

Referenced by meshToMesh::calculate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ calcOverlappingProcs()

Foam::label calcOverlappingProcs ( const List< treeBoundBoxList > &  procBb,
const boundBox bb,
boolList overlaps 
) const
private

Determine which processor bounding-boxes overlap.

Definition at line 87 of file meshToMeshParallelOps.C.

References forAll.

◆ calcProcMap()

Foam::autoPtr< Foam::mapDistribute > calcProcMap ( const polyMesh src,
const polyMesh tgt 
) const
private

◆ distributeCells()

void distributeCells ( const mapDistribute map,
const polyMesh tgtMesh,
const globalIndex globalI,
List< pointField > &  points,
List< label > &  nInternalFaces,
List< faceList > &  faces,
List< labelList > &  faceOwner,
List< labelList > &  faceNeighbour,
List< labelList > &  cellIDs,
List< labelList > &  nbrProcIDs,
List< labelList > &  procLocalFaceIDs 
) const
private

◆ distributeAndMergeCells()

void distributeAndMergeCells ( const mapDistribute map,
const polyMesh tgt,
const globalIndex globalI,
pointField tgtPoints,
faceList tgtFaces,
labelList tgtFaceOwners,
labelList tgtFaceNeighbours,
labelList tgtCellIDs 
) const
private

Collect pieces of tgt mesh from other procssors and restructure.

Definition at line 504 of file meshToMeshParallelOps.C.

References Foam::abort(), Foam::add(), Foam::DelaunayMeshTools::allPoints(), UList::assign(), UList< T >::assign(), Foam::endl(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::inplaceRenumber(), Foam::max(), Foam::mergePoints(), Foam::min(), nPoints, Foam::Pout, List::setSize(), and List::size().

Referenced by meshToMesh::calculate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=()

void operator= ( const meshToMesh )
private

Disallow default bitwise assignment.

◆ TypeName()

TypeName ( "meshToMesh"  )

Run-time type information.

◆ srcRegion()

const Foam::polyMesh & srcRegion ( ) const
inline

Return const access to the source mesh.

Definition at line 30 of file meshToMeshI.H.

References meshToMesh::srcRegion_.

Referenced by Foam::MapMesh(), and Foam::MapVolFields().

Here is the caller graph for this function:

◆ tgtRegion()

const Foam::polyMesh & tgtRegion ( ) const
inline

Return const access to the target mesh.

Definition at line 36 of file meshToMeshI.H.

Referenced by Foam::MapMesh(), and Foam::MapVolFields().

Here is the caller graph for this function:

◆ srcToTgtCellAddr()

const Foam::labelListList & srcToTgtCellAddr ( ) const
inline

Return const access to the source to target cell addressing.

Definition at line 42 of file meshToMeshI.H.

◆ tgtToSrcCellAddr()

const Foam::labelListList & tgtToSrcCellAddr ( ) const
inline

Return const access to the target to source cell addressing.

Definition at line 48 of file meshToMeshI.H.

◆ srcToTgtCellWght()

const Foam::scalarListList & srcToTgtCellWght ( ) const
inline

Return const access to the source to target cell weights.

Definition at line 54 of file meshToMeshI.H.

◆ tgtToSrcCellWght()

const Foam::scalarListList & tgtToSrcCellWght ( ) const
inline

Return const access to the target to source cell weights.

Definition at line 60 of file meshToMeshI.H.

◆ srcToTgtCellVec()

const Foam::pointListList & srcToTgtCellVec ( ) const
inline

Return const access to the source to target offset vectors.

Definition at line 66 of file meshToMeshI.H.

◆ tgtToSrcCellVec()

const Foam::pointListList & tgtToSrcCellVec ( ) const
inline

Return const access to the target to source offset vectors.

Definition at line 72 of file meshToMeshI.H.

◆ V()

Foam::scalar V ( ) const
inline

Return const access to the overlap volume.

Definition at line 78 of file meshToMeshI.H.

◆ interpolationMethodAMI()

Foam::AMIPatchToPatchInterpolation::interpolationMethod interpolationMethodAMI ( const interpolationMethod  method)
static

◆ patchAMIs()

const Foam::PtrList< Foam::AMIPatchToPatchInterpolation > & patchAMIs ( ) const
inline

Return the list of AMIs between source and target patches.

Definition at line 85 of file meshToMeshI.H.

◆ mapSrcToTgt() [1/19]

void mapSrcToTgt ( const UList< Type > &  srcFld,
const CombineOp &  cop,
List< Type > &  result 
) const

Map field from src to tgt mesh with defined operation.

Values passed in via 'result' are used to initialise the return value

Definition at line 83 of file meshToMeshTemplates.C.

References Foam::abort(), mapDistribute::distribute(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, List::size(), Foam::sum(), and w().

Referenced by interRegionHeatTransferModel::interpolate(), and Foam::MapVolFields().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ mapSrcToTgt() [2/19]

void mapSrcToTgt ( const UList< Type > &  srcField,
const UList< typename outerProduct< vector, Type >::type > &  srcGradField,
const CombineOp &  cop,
List< Type > &  result 
) const

Map extrapolated field (using gradient) from src to tgt.

mesh with defined operation. Falls back to non-extrapolated mapping (above) if not constructed with method that supports getting offset vectors. Extrapolation only for internal values. Values passed in via 'result' are used to initialise the return value.

Definition at line 149 of file meshToMeshTemplates.C.

References Foam::abort(), mapDistribute::distribute(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, Foam::returnReduce(), List::size(), Foam::sum(), and w().

Here is the call graph for this function:

◆ mapSrcToTgt() [3/19]

tmp<Field<Type> > mapSrcToTgt ( const Field< Type > &  srcFld,
const CombineOp &  cop 
) const

Return the src field mapped to the tgt mesh with a defined.

operation. Initial values of the result are set to zero

◆ mapSrcToTgt() [4/19]

tmp<Field<Type> > mapSrcToTgt ( const tmp< Field< Type > > &  tsrcFld,
const CombineOp &  cop 
) const

Convenience function to map a tmp field to the tgt mesh.

with a defined operation

◆ mapSrcToTgt() [5/19]

tmp<Field<Type> > mapSrcToTgt ( const Field< Type > &  srcFld) const

Convenience function to map a field to the tgt mesh with a.

default operation (plusEqOp)

◆ mapSrcToTgt() [6/19]

tmp<Field<Type> > mapSrcToTgt ( const tmp< Field< Type > > &  tsrcFld) const

Convenience function to map a tmp field to the tgt mesh.

with a default operation (plusEqOp)

◆ mapTgtToSrc() [1/19]

void mapTgtToSrc ( const UList< Type > &  tgtFld,
const CombineOp &  cop,
List< Type > &  result 
) const

Map field from tgt to src mesh with defined operation.

Values passed in via 'result' are used to initialise the return value

Definition at line 296 of file meshToMeshTemplates.C.

References Foam::abort(), mapDistribute::distribute(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, List::size(), Foam::sum(), and w().

Here is the call graph for this function:

◆ mapTgtToSrc() [2/19]

void mapTgtToSrc ( const UList< Type > &  srcField,
const UList< typename outerProduct< vector, Type >::type > &  tgtGradField,
const CombineOp &  cop,
List< Type > &  result 
) const

Map extrapolated field (using gradient) from tgt to src.

mesh with defined operation. Falls back to non-extrapolated mapping (above) if not constructed with method that supports getting offset vectors. Extrapolation only for internal values. Values passed in via 'result' are used to initialise the return value

Definition at line 362 of file meshToMeshTemplates.C.

References Foam::abort(), mapDistribute::distribute(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, Foam::returnReduce(), List::size(), Foam::sum(), and w().

Here is the call graph for this function:

◆ mapTgtToSrc() [3/19]

tmp<Field<Type> > mapTgtToSrc ( const Field< Type > &  tgtFld,
const CombineOp &  cop 
) const

Return the tgt field mapped to the src mesh with a defined.

operation. Initial values of the result are set to zero

◆ mapTgtToSrc() [4/19]

tmp<Field<Type> > mapTgtToSrc ( const tmp< Field< Type > > &  ttgtFld,
const CombineOp &  cop 
) const

Convenience function to map a tmp field to the src mesh.

with a defined operation

◆ mapTgtToSrc() [5/19]

tmp<Field<Type> > mapTgtToSrc ( const Field< Type > &  tgtFld) const

Convenience function to map a field to the src mesh with a.

default operation (plusEqOp)

◆ mapTgtToSrc() [6/19]

tmp<Field<Type> > mapTgtToSrc ( const tmp< Field< Type > > &  ttgtFld) const

Convenience function to map a tmp field to the src mesh.

with a default operation (plusEqOp)

◆ mapSrcToTgt() [7/19]

void mapSrcToTgt ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
GeometricField< Type, fvPatchField, volMesh > &  result,
const bool  secondOrder = true 
) const

Interpolate a field with a defined operation. Values.

passed in via 'result' are used to initialise the return value. Optionallly uses gradient correction (internal field only) if interpolationMethod supports it

Definition at line 548 of file meshToMeshTemplates.C.

References GeometricField::boundaryField(), GeometricField::dimensionedInternalField(), forAll, Foam::identity(), fvPatchField::patch(), fvPatchField::patchInternalField(), and fvPatchField::rmap().

Here is the call graph for this function:

◆ mapSrcToTgt() [8/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapSrcToTgt ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
const bool  secondOrder = true 
) const

Interpolate a field with a defined operation. The initial.

values of the result are set to zero

◆ mapSrcToTgt() [9/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapSrcToTgt ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const CombineOp &  cop,
const bool  secondOrder = true 
) const

Interpolate a tmp field with a defined operation. The.

initial values of the result are set to zero

◆ mapSrcToTgt() [10/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapSrcToTgt ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const bool  secondOrder = true 
) const

Convenience function to map a field with a default.

operation (plusEqOp)

◆ mapSrcToTgt() [11/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapSrcToTgt ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const bool  secondOrder = true 
) const

Convenience function to map a tmp field with a default.

operation (plusEqOp)

◆ mapTgtToSrc() [7/19]

void mapTgtToSrc ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
GeometricField< Type, fvPatchField, volMesh > &  result,
const bool  secondOrder = true 
) const

Interpolate a field with a defined operation. Values.

passed in via 'result' are used to initialise the return value. Optionallly uses gradient correction (internal field only) if interpolationMethod supports it

Definition at line 787 of file meshToMeshTemplates.C.

References GeometricField::boundaryField(), GeometricField::dimensionedInternalField(), forAll, Foam::identity(), fvPatchField::patch(), fvPatchField::patchInternalField(), and fvPatchField::rmap().

Here is the call graph for this function:

◆ mapTgtToSrc() [8/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapTgtToSrc ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
const bool  secondOrder = true 
) const

Interpolate a field with a defined operation. The initial.

values of the result are set to zero

◆ mapTgtToSrc() [9/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapTgtToSrc ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const CombineOp &  cop,
const bool  secondOrder = true 
) const

Interpolate a tmp field with a defined operation. The.

initial values of the result are set to zero

◆ mapTgtToSrc() [10/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapTgtToSrc ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const bool  secondOrder = true 
) const

Convenience function to map a field with a default.

operation (plusEqOp)

◆ mapTgtToSrc() [11/19]

tmp<GeometricField<Type, fvPatchField, volMesh> > mapTgtToSrc ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const bool  secondOrder = true 
) const

Convenience function to map a tmp field with a default.

operation (plusEqOp)

◆ mapInternalSrcToTgt() [2/7]

void mapInternalSrcToTgt ( const GeometricField< sphericalTensor, fvPatchField, volMesh > &  field,
const plusEqOp< sphericalTensor > &  cop,
GeometricField< sphericalTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 59 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalSrcToTgt() [3/7]

void mapInternalSrcToTgt ( const GeometricField< sphericalTensor, fvPatchField, volMesh > &  field,
const minusEqOp< sphericalTensor > &  cop,
GeometricField< sphericalTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 72 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalSrcToTgt() [4/7]

void mapInternalSrcToTgt ( const GeometricField< symmTensor, fvPatchField, volMesh > &  field,
const plusEqOp< symmTensor > &  cop,
GeometricField< symmTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 85 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalSrcToTgt() [5/7]

void mapInternalSrcToTgt ( const GeometricField< symmTensor, fvPatchField, volMesh > &  field,
const minusEqOp< symmTensor > &  cop,
GeometricField< symmTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 98 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalSrcToTgt() [6/7]

void mapInternalSrcToTgt ( const GeometricField< tensor, fvPatchField, volMesh > &  field,
const plusEqOp< tensor > &  cop,
GeometricField< tensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 111 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalSrcToTgt() [7/7]

void mapInternalSrcToTgt ( const GeometricField< tensor, fvPatchField, volMesh > &  field,
const minusEqOp< tensor > &  cop,
GeometricField< tensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 124 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [2/7]

void mapInternalTgtToSrc ( const GeometricField< sphericalTensor, fvPatchField, volMesh > &  field,
const plusEqOp< sphericalTensor > &  cop,
GeometricField< sphericalTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 137 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [3/7]

void mapInternalTgtToSrc ( const GeometricField< sphericalTensor, fvPatchField, volMesh > &  field,
const minusEqOp< sphericalTensor > &  cop,
GeometricField< sphericalTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 150 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [4/7]

void mapInternalTgtToSrc ( const GeometricField< symmTensor, fvPatchField, volMesh > &  field,
const plusEqOp< symmTensor > &  cop,
GeometricField< symmTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 163 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [5/7]

void mapInternalTgtToSrc ( const GeometricField< symmTensor, fvPatchField, volMesh > &  field,
const minusEqOp< symmTensor > &  cop,
GeometricField< symmTensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 176 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [6/7]

void mapInternalTgtToSrc ( const GeometricField< tensor, fvPatchField, volMesh > &  field,
const plusEqOp< tensor > &  cop,
GeometricField< tensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 189 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapInternalTgtToSrc() [7/7]

void mapInternalTgtToSrc ( const GeometricField< tensor, fvPatchField, volMesh > &  field,
const minusEqOp< tensor > &  cop,
GeometricField< tensor, fvPatchField, volMesh > &  result,
const bool  secondOrder 
) const

Definition at line 202 of file meshToMesh.C.

References GeometricField::internalField().

Here is the call graph for this function:

◆ mapAndOpSrcToTgt() [2/6]

void mapAndOpSrcToTgt ( const AMIPatchToPatchInterpolation AMI,
const Field< scalar > &  srcField,
Field< scalar > &  tgtField,
const plusEqOp< scalar > &  cop 
) const

Definition at line 215 of file meshToMesh.C.

◆ mapAndOpSrcToTgt() [3/6]

void mapAndOpSrcToTgt ( const AMIPatchToPatchInterpolation AMI,
const Field< vector > &  srcField,
Field< vector > &  tgtField,
const plusEqOp< vector > &  cop 
) const

Definition at line 226 of file meshToMesh.C.

◆ mapAndOpSrcToTgt() [4/6]

void mapAndOpSrcToTgt ( const AMIPatchToPatchInterpolation AMI,
const Field< sphericalTensor > &  srcField,
Field< sphericalTensor > &  tgtField,
const plusEqOp< sphericalTensor > &  cop 
) const

Definition at line 237 of file meshToMesh.C.

◆ mapAndOpSrcToTgt() [5/6]

void mapAndOpSrcToTgt ( const AMIPatchToPatchInterpolation AMI,
const Field< symmTensor > &  srcField,
Field< symmTensor > &  tgtField,
const plusEqOp< symmTensor > &  cop 
) const

Definition at line 248 of file meshToMesh.C.

◆ mapAndOpSrcToTgt() [6/6]

void mapAndOpSrcToTgt ( const AMIPatchToPatchInterpolation AMI,
const Field< tensor > &  srcField,
Field< tensor > &  tgtField,
const plusEqOp< tensor > &  cop 
) const

Definition at line 259 of file meshToMesh.C.

◆ mapAndOpTgtToSrc() [2/6]

void mapAndOpTgtToSrc ( const AMIPatchToPatchInterpolation AMI,
Field< scalar > &  srcField,
const Field< scalar > &  tgtField,
const plusEqOp< scalar > &  cop 
) const

Definition at line 270 of file meshToMesh.C.

◆ mapAndOpTgtToSrc() [3/6]

void mapAndOpTgtToSrc ( const AMIPatchToPatchInterpolation AMI,
Field< vector > &  srcField,
const Field< vector > &  tgtField,
const plusEqOp< vector > &  cop 
) const

Definition at line 281 of file meshToMesh.C.

◆ mapAndOpTgtToSrc() [4/6]

void mapAndOpTgtToSrc ( const AMIPatchToPatchInterpolation AMI,
Field< sphericalTensor > &  srcField,
const Field< sphericalTensor > &  tgtField,
const plusEqOp< sphericalTensor > &  cop 
) const

Definition at line 292 of file meshToMesh.C.

◆ mapAndOpTgtToSrc() [5/6]

void mapAndOpTgtToSrc ( const AMIPatchToPatchInterpolation AMI,
Field< symmTensor > &  srcField,
const Field< symmTensor > &  tgtField,
const plusEqOp< symmTensor > &  cop 
) const

Definition at line 303 of file meshToMesh.C.

◆ mapAndOpTgtToSrc() [6/6]

void mapAndOpTgtToSrc ( const AMIPatchToPatchInterpolation AMI,
Field< tensor > &  srcField,
const Field< tensor > &  tgtField,
const plusEqOp< tensor > &  cop 
) const

Definition at line 314 of file meshToMesh.C.

◆ mapSrcToTgt() [12/19]

Foam::tmp<Foam::Field<Type> > mapSrcToTgt ( const Field< Type > &  srcField,
const CombineOp &  cop 
) const

Definition at line 243 of file meshToMeshTemplates.C.

◆ mapSrcToTgt() [13/19]

Foam::tmp<Foam::Field<Type> > mapSrcToTgt ( const tmp< Field< Type > > &  tsrcField,
const CombineOp &  cop 
) const

Definition at line 265 of file meshToMeshTemplates.C.

◆ mapSrcToTgt() [14/19]

Foam::tmp<Foam::Field<Type> > mapSrcToTgt ( const Field< Type > &  srcField) const

Definition at line 276 of file meshToMeshTemplates.C.

◆ mapSrcToTgt() [15/19]

Foam::tmp<Foam::Field<Type> > mapSrcToTgt ( const tmp< Field< Type > > &  tsrcField) const

Definition at line 286 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [12/19]

Foam::tmp<Foam::Field<Type> > mapTgtToSrc ( const Field< Type > &  tgtField,
const CombineOp &  cop 
) const

Definition at line 448 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [13/19]

Foam::tmp<Foam::Field<Type> > mapTgtToSrc ( const tmp< Field< Type > > &  ttgtField,
const CombineOp &  cop 
) const

Definition at line 470 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [14/19]

Foam::tmp<Foam::Field<Type> > mapTgtToSrc ( const Field< Type > &  tgtField) const

Definition at line 481 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [15/19]

Foam::tmp<Foam::Field<Type> > mapTgtToSrc ( const tmp< Field< Type > > &  ttgtField) const

Definition at line 491 of file meshToMeshTemplates.C.

◆ mapSrcToTgt() [16/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapSrcToTgt ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
const bool  secondOrder 
) const

◆ mapSrcToTgt() [17/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapSrcToTgt ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const CombineOp &  cop,
const bool  secondOrder 
) const

Definition at line 704 of file meshToMeshTemplates.C.

◆ mapSrcToTgt() [18/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapSrcToTgt ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const bool  secondOrder 
) const

Definition at line 717 of file meshToMeshTemplates.C.

◆ mapSrcToTgt() [19/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapSrcToTgt ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const bool  secondOrder 
) const

Definition at line 729 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [16/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapTgtToSrc ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const CombineOp &  cop,
const bool  secondOrder 
) const

◆ mapTgtToSrc() [17/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapTgtToSrc ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const CombineOp &  cop,
const bool  secondOrder 
) const

Definition at line 943 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [18/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapTgtToSrc ( const GeometricField< Type, fvPatchField, volMesh > &  field,
const bool  secondOrder 
) const

Definition at line 956 of file meshToMeshTemplates.C.

◆ mapTgtToSrc() [19/19]

Foam::tmp<Foam::GeometricField<Type, Foam::fvPatchField, Foam::volMesh> > mapTgtToSrc ( const tmp< GeometricField< Type, fvPatchField, volMesh > > &  tfield,
const bool  secondOrder 
) const

Definition at line 968 of file meshToMeshTemplates.C.

Field Documentation

◆ interpolationMethodNames_

const NamedEnum< meshToMesh::interpolationMethod, 4 > interpolationMethodNames_
static

Definition at line 77 of file meshToMesh.H.

Referenced by interRegionOption::setMapper().

◆ srcRegion_

const polyMesh& srcRegion_
private

Reference to the source mesh.

Definition at line 84 of file meshToMesh.H.

Referenced by meshToMesh::calculate(), and meshToMesh::srcRegion().

◆ tgtRegion_

const polyMesh& tgtRegion_
private

Reference to the target mesh.

Definition at line 87 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ srcPatchID_

List<label> srcPatchID_
private

List of target patch IDs per source patch (local index)

Definition at line 90 of file meshToMesh.H.

◆ tgtPatchID_

List<label> tgtPatchID_
private

List of source patch IDs per target patch (local index)

Definition at line 93 of file meshToMesh.H.

◆ patchAMIs_

List of AMIs between source and target patches.

Definition at line 96 of file meshToMesh.H.

◆ cuttingPatches_

List<label> cuttingPatches_
private

Cutting patches whose values are set using a zero-gradient condition.

Definition at line 99 of file meshToMesh.H.

◆ srcToTgtCellAddr_

labelListList srcToTgtCellAddr_
private

Source to target cell addressing.

Definition at line 102 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ tgtToSrcCellAddr_

labelListList tgtToSrcCellAddr_
private

Target to source cell addressing.

Definition at line 105 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ srcToTgtCellWght_

scalarListList srcToTgtCellWght_
private

Source to target cell interplation weights.

Definition at line 108 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ tgtToSrcCellWght_

scalarListList tgtToSrcCellWght_
private

Target to source cell interpolation weights.

Definition at line 111 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ srcToTgtCellVec_

pointListList srcToTgtCellVec_
private

Source to target cell offset vectors.

Definition at line 117 of file meshToMesh.H.

◆ tgtToSrcCellVec_

pointListList tgtToSrcCellVec_
private

Target to source cell offset vectors.

Definition at line 120 of file meshToMesh.H.

◆ V_

scalar V_
private

Cell total volume in overlap region [m3].

Definition at line 123 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ singleMeshProc_

label singleMeshProc_
private

Index of processor that holds all of both sides. -1 in all other.

cases

Definition at line 127 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ srcMapPtr_

autoPtr<mapDistribute> srcMapPtr_
private

Source map pointer - parallel running only.

Definition at line 130 of file meshToMesh.H.

Referenced by meshToMesh::calculate().

◆ tgtMapPtr_

autoPtr<mapDistribute> tgtMapPtr_
private

Target map pointer - parallel running only.

Definition at line 133 of file meshToMesh.H.

Referenced by meshToMesh::calculate().


The documentation for this class was generated from the following files: