Public Types | Public Member Functions | Static Public Member Functions | List of all members
AMIInterpolation< SourcePatch, TargetPatch > Class Template Reference

Interpolation class dealing with transfer of data between two primitive patches with an arbitrary mesh interface (AMI). More...

Inheritance diagram for AMIInterpolation< SourcePatch, TargetPatch >:
Inheritance graph
[legend]
Collaboration diagram for AMIInterpolation< SourcePatch, TargetPatch >:
Collaboration graph
[legend]

Public Types

enum  interpolationMethod {
  imDirect, imMapNearest, imFaceAreaWeight, imPartialFaceAreaWeight,
  imSweptFaceAreaWeight
}
 Enumeration specifying interpolation method. More...
 
typedef SourcePatch sourcePatchType
 
typedef TargetPatch targetPatchType
 

Public Member Functions

 AMIInterpolation (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const faceAreaIntersect::triangulationMode &triMode, const bool requireMatch=true, const interpolationMethod &method=imFaceAreaWeight, const scalar lowWeightCorrection=-1, const bool reverseTarget=false, const bool report=true)
 Construct from components. More...
 
 AMIInterpolation (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const faceAreaIntersect::triangulationMode &triMode, const bool requireMatch=true, const word &methodName=interpolationMethodToWord(imFaceAreaWeight), const scalar lowWeightCorrection=-1, const bool reverseTarget=false, const bool report=true)
 Construct from components. More...
 
 AMIInterpolation (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const autoPtr< searchableSurface > &surf, const faceAreaIntersect::triangulationMode &triMode, const bool requireMatch=true, const interpolationMethod &method=imFaceAreaWeight, const scalar lowWeightCorrection=-1, const bool reverseTarget=false, const bool report=true)
 Construct from components, with projection surface. More...
 
 AMIInterpolation (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const autoPtr< searchableSurface > &surf, const faceAreaIntersect::triangulationMode &triMode, const bool requireMatch=true, const word &methodName=interpolationMethodToWord(imFaceAreaWeight), const scalar lowWeightCorrection=-1, const bool reverseTarget=false, const bool report=true)
 Construct from components, with projection surface. More...
 
 AMIInterpolation (const AMIInterpolation< SourcePatch, TargetPatch > &fineAMI, const labelList &sourceRestrictAddressing, const labelList &neighbourRestrictAddressing, const bool report=false)
 Construct from agglomeration of AMIInterpolation. Agglomeration. More...
 
 ~AMIInterpolation ()
 Destructor. More...
 
label singlePatchProc () const
 Set to -1, or the processor holding all faces (both sides) of. More...
 
scalar lowWeightCorrection () const
 Threshold weight below which interpolation is deactivated. More...
 
bool applyLowWeightCorrection () const
 Return true if employing a 'lowWeightCorrection'. More...
 
const scalarFieldsrcMagSf () const
 Return const access to source patch face areas. More...
 
const labelListListsrcAddress () const
 Return const access to source patch addressing. More...
 
const scalarListListsrcWeights () const
 Return const access to source patch weights. More...
 
scalarListListsrcWeights ()
 Return access to source patch weights. More...
 
const scalarFieldsrcWeightsSum () const
 Return const access to normalisation factor of source. More...
 
scalarFieldsrcWeightsSum ()
 Return access to normalisation factor of source. More...
 
const mapDistributesrcMap () const
 Source map pointer - valid only if singlePatchProc = -1. More...
 
const scalarFieldtgtMagSf () const
 Return const access to target patch face areas. More...
 
const labelListListtgtAddress () const
 Return const access to target patch addressing. More...
 
const scalarListListtgtWeights () const
 Return const access to target patch weights. More...
 
scalarListListtgtWeights ()
 Return access to target patch weights. More...
 
const scalarFieldtgtWeightsSum () const
 Return const access to normalisation factor of target. More...
 
scalarFieldtgtWeightsSum ()
 Return access to normalisation factor of target. More...
 
const mapDistributetgtMap () const
 Target map pointer - valid only if singlePatchProc=-1. More...
 
void update (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const bool report)
 Update addressing and weights. More...
 
template<class Type , class CombineOp >
void interpolateToSource (const UList< Type > &fld, const CombineOp &cop, List< Type > &result, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from target to source with supplied op. More...
 
template<class Type , class CombineOp >
void interpolateToTarget (const UList< Type > &fld, const CombineOp &cop, List< Type > &result, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from source to target with supplied op. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > interpolateToSource (const Field< Type > &fld, const CombineOp &cop, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from target to source with supplied op. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > interpolateToSource (const tmp< Field< Type >> &tFld, const CombineOp &cop, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from target tmp field to source with supplied op. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > interpolateToTarget (const Field< Type > &fld, const CombineOp &cop, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from source to target with supplied op. More...
 
template<class Type , class CombineOp >
tmp< Field< Type > > interpolateToTarget (const tmp< Field< Type >> &tFld, const CombineOp &cop, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from source tmp field to target with supplied op. More...
 
template<class Type >
tmp< Field< Type > > interpolateToSource (const Field< Type > &fld, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from target to source. More...
 
template<class Type >
tmp< Field< Type > > interpolateToSource (const tmp< Field< Type >> &tFld, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from target tmp field. More...
 
template<class Type >
tmp< Field< Type > > interpolateToTarget (const Field< Type > &fld, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from source to target. More...
 
template<class Type >
tmp< Field< Type > > interpolateToTarget (const tmp< Field< Type >> &tFld, const UList< Type > &defaultValues=UList< Type >::null()) const
 Interpolate from source tmp field. More...
 
label srcPointFace (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const vector &n, const label tgtFacei, point &tgtPoint) const
 Return source patch face index of point on target patch face. More...
 
label tgtPointFace (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const vector &n, const label srcFacei, point &srcPoint) const
 Return target patch face index of point on source patch face. More...
 
void writeFaceConnectivity (const SourcePatch &srcPatch, const TargetPatch &tgtPatch, const labelListList &srcAddress) const
 Write face connectivity as OBJ file. More...
 
template<class Patch >
Foam::tmp< Foam::scalarFieldpatchMagSf (const Patch &patch, const faceAreaIntersect::triangulationMode triMode)
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > interpolateToSource (const Field< Type > &fld, const CombineOp &cop, const UList< Type > &defaultValues) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > interpolateToSource (const tmp< Field< Type >> &tFld, const CombineOp &cop, const UList< Type > &defaultValues) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > interpolateToTarget (const Field< Type > &fld, const CombineOp &cop, const UList< Type > &defaultValues) const
 
template<class Type , class CombineOp >
Foam::tmp< Foam::Field< Type > > interpolateToTarget (const tmp< Field< Type >> &tFld, const CombineOp &cop, const UList< Type > &defaultValues) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolateToSource (const Field< Type > &fld, const UList< Type > &defaultValues) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolateToSource (const tmp< Field< Type >> &tFld, const UList< Type > &defaultValues) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolateToTarget (const Field< Type > &fld, const UList< Type > &defaultValues) const
 
template<class Type >
Foam::tmp< Foam::Field< Type > > interpolateToTarget (const tmp< Field< Type >> &tFld, const UList< Type > &defaultValues) const
 

Static Public Member Functions

static word interpolationMethodToWord (const interpolationMethod &method)
 Convert interpolationMethod to word representation. More...
 
static interpolationMethod wordTointerpolationMethod (const word &method)
 Convert word to interpolationMethod. More...
 
template<class Patch >
static tmp< scalarFieldpatchMagSf (const Patch &patch, const faceAreaIntersect::triangulationMode triMode)
 Calculate the patch face magnitudes for the given tri-mode. More...
 
static void sumWeights (AMIInterpolation< SourcePatch, TargetPatch > &AMI)
 Sum the weights on both sides of an AMI. More...
 
static void sumWeights (PtrList< AMIInterpolation< SourcePatch, TargetPatch >> &AMIs)
 As above, but for multiple AMI-s. More...
 
static void reportSumWeights (AMIInterpolation< SourcePatch, TargetPatch > &AMI)
 Print out information relating to the weights sum. Values close. More...
 
static void normaliseWeights (AMIInterpolation< SourcePatch, TargetPatch > &AMI)
 Normalise the weights on both sides of an AMI. More...
 
static void normaliseWeights (UPtrList< AMIInterpolation< SourcePatch, TargetPatch >> &AMIs)
 As above, but for multiple AMI-s. More...
 

Detailed Description

template<class SourcePatch, class TargetPatch>
class Foam::AMIInterpolation< SourcePatch, TargetPatch >

Interpolation class dealing with transfer of data between two primitive patches with an arbitrary mesh interface (AMI).

Based on the algorithm given in:

Conservative interpolation between volume meshes by local Galerkin projection, Farrell PE and Maddison JR, 2011, Comput. Methods Appl. Mech Engrg, Volume 200, Issues 1-4, pp 89-100

Interpolation requires that the two patches should have opposite orientations (opposite normals). The 'reverseTarget' flag can be used to reverse the orientation of the target patch.

Source files

Definition at line 77 of file AMIInterpolation.H.

Member Typedef Documentation

◆ sourcePatchType

typedef SourcePatch sourcePatchType

Definition at line 86 of file AMIInterpolation.H.

◆ targetPatchType

typedef TargetPatch targetPatchType

Definition at line 89 of file AMIInterpolation.H.

Member Enumeration Documentation

◆ interpolationMethod

Enumeration specifying interpolation method.

Enumerator
imDirect 
imMapNearest 
imFaceAreaWeight 
imPartialFaceAreaWeight 
imSweptFaceAreaWeight 

Definition at line 95 of file AMIInterpolation.H.

Constructor & Destructor Documentation

◆ AMIInterpolation() [1/5]

AMIInterpolation ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const faceAreaIntersect::triangulationMode triMode,
const bool  requireMatch = true,
const interpolationMethod method = imFaceAreaWeight,
const scalar  lowWeightCorrection = -1,
const bool  reverseTarget = false,
const bool  report = true 
)

Construct from components.

Definition at line 671 of file AMIInterpolation.C.

◆ AMIInterpolation() [2/5]

AMIInterpolation ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const faceAreaIntersect::triangulationMode triMode,
const bool  requireMatch = true,
const word methodName = interpolationMethodToWord(imFaceAreaWeight),
const scalar  lowWeightCorrection = -1,
const bool  reverseTarget = false,
const bool  report = true 
)

Construct from components.

Definition at line 703 of file AMIInterpolation.C.

◆ AMIInterpolation() [3/5]

AMIInterpolation ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const autoPtr< searchableSurface > &  surf,
const faceAreaIntersect::triangulationMode triMode,
const bool  requireMatch = true,
const interpolationMethod method = imFaceAreaWeight,
const scalar  lowWeightCorrection = -1,
const bool  reverseTarget = false,
const bool  report = true 
)

Construct from components, with projection surface.

Definition at line 735 of file AMIInterpolation.C.

◆ AMIInterpolation() [4/5]

AMIInterpolation ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const autoPtr< searchableSurface > &  surf,
const faceAreaIntersect::triangulationMode triMode,
const bool  requireMatch = true,
const word methodName = interpolationMethodToWord(imFaceAreaWeight),
const scalar  lowWeightCorrection = -1,
const bool  reverseTarget = false,
const bool  report = true 
)

Construct from components, with projection surface.

Definition at line 768 of file AMIInterpolation.C.

◆ AMIInterpolation() [5/5]

AMIInterpolation ( const AMIInterpolation< SourcePatch, TargetPatch > &  fineAMI,
const labelList sourceRestrictAddressing,
const labelList neighbourRestrictAddressing,
const bool  report = false 
)

◆ ~AMIInterpolation()

Destructor.

Definition at line 915 of file AMIInterpolation.C.

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

Here is the call graph for this function:

Member Function Documentation

◆ interpolationMethodToWord()

Foam::word interpolationMethodToWord ( const interpolationMethod method)
static

Convert interpolationMethod to word representation.

Definition at line 37 of file AMIInterpolation.C.

References Foam::abort(), Foam::FatalError, FatalErrorInFunction, and AMIInterpolation< SourcePatch, TargetPatch >::wordTointerpolationMethod().

Referenced by meshToMesh::meshToMesh(), and cyclicAMIPolyPatch::write().

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

◆ wordTointerpolationMethod()

Foam::AMIInterpolation< SourcePatch, TargetPatch >::interpolationMethod wordTointerpolationMethod ( const word method)
static

Convert word to interpolationMethod.

Definition at line 85 of file AMIInterpolation.C.

References Foam::exit(), Foam::FatalError, FatalErrorInFunction, and AMIInterpolation< SourcePatch, TargetPatch >::patchMagSf().

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::interpolationMethodToWord().

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

◆ patchMagSf() [1/2]

static tmp<scalarField> patchMagSf ( const Patch &  patch,
const faceAreaIntersect::triangulationMode  triMode 
)
static

Calculate the patch face magnitudes for the given tri-mode.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::wordTointerpolationMethod().

Here is the caller graph for this function:

◆ singlePatchProc()

Foam::label singlePatchProc ( ) const
inline

Set to -1, or the processor holding all faces (both sides) of.

the AMI

Definition at line 28 of file AMIInterpolationI.H.

◆ lowWeightCorrection()

Foam::scalar lowWeightCorrection ( ) const
inline

Threshold weight below which interpolation is deactivated.

Definition at line 36 of file AMIInterpolationI.H.

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

Here is the call graph for this function:

◆ applyLowWeightCorrection()

bool applyLowWeightCorrection ( ) const
inline

Return true if employing a 'lowWeightCorrection'.

Definition at line 45 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::lowWeightCorrection().

Here is the caller graph for this function:

◆ srcMagSf()

const Foam::scalarField & srcMagSf ( ) const
inline

Return const access to source patch face areas.

Definition at line 53 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::AMIInterpolation().

Here is the caller graph for this function:

◆ srcAddress()

const Foam::labelListList & srcAddress ( ) const
inline

Return const access to source patch addressing.

Definition at line 61 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::AMIInterpolation().

Here is the caller graph for this function:

◆ srcWeights() [1/2]

const Foam::scalarListList & srcWeights ( ) const
inline

Return const access to source patch weights.

Definition at line 69 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::AMIInterpolation(), and cyclicACMIPolyPatch::resetAMI().

Here is the caller graph for this function:

◆ srcWeights() [2/2]

Foam::scalarListList & srcWeights ( )
inline

Return access to source patch weights.

Definition at line 77 of file AMIInterpolationI.H.

◆ srcWeightsSum() [1/2]

const Foam::scalarField & srcWeightsSum ( ) const
inline

Return const access to normalisation factor of source.

patch weights (i.e. the sum before normalisation)

Definition at line 85 of file AMIInterpolationI.H.

Referenced by cyclicACMIPolyPatch::resetAMI().

Here is the caller graph for this function:

◆ srcWeightsSum() [2/2]

Foam::scalarField & srcWeightsSum ( )
inline

Return access to normalisation factor of source.

patch weights (i.e. the sum before normalisation)

Definition at line 93 of file AMIInterpolationI.H.

◆ srcMap()

const Foam::mapDistribute & srcMap ( ) const
inline

Source map pointer - valid only if singlePatchProc = -1.

This gets source data into a form to be consumed by tgtAddress, tgtWeights

Definition at line 101 of file AMIInterpolationI.H.

◆ tgtMagSf()

const Foam::scalarField & tgtMagSf ( ) const
inline

Return const access to target patch face areas.

Definition at line 109 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::AMIInterpolation().

Here is the caller graph for this function:

◆ tgtAddress()

const Foam::labelListList & tgtAddress ( ) const
inline

Return const access to target patch addressing.

Definition at line 117 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::AMIInterpolation().

Here is the caller graph for this function:

◆ tgtWeights() [1/2]

const Foam::scalarListList & tgtWeights ( ) const
inline

Return const access to target patch weights.

Definition at line 125 of file AMIInterpolationI.H.

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::AMIInterpolation(), and cyclicACMIPolyPatch::resetAMI().

Here is the caller graph for this function:

◆ tgtWeights() [2/2]

Foam::scalarListList & tgtWeights ( )
inline

Return access to target patch weights.

Definition at line 133 of file AMIInterpolationI.H.

◆ tgtWeightsSum() [1/2]

const Foam::scalarField & tgtWeightsSum ( ) const
inline

Return const access to normalisation factor of target.

patch weights (i.e. the sum before normalisation)

Definition at line 141 of file AMIInterpolationI.H.

Referenced by cyclicACMIPolyPatch::resetAMI().

Here is the caller graph for this function:

◆ tgtWeightsSum() [2/2]

Foam::scalarField & tgtWeightsSum ( )
inline

Return access to normalisation factor of target.

patch weights (i.e. the sum before normalisation)

Definition at line 149 of file AMIInterpolationI.H.

◆ tgtMap()

const Foam::mapDistribute & tgtMap ( ) const
inline

Target map pointer - valid only if singlePatchProc=-1.

This gets target data into a form to be consumed by srcAddress, srcWeights

Definition at line 157 of file AMIInterpolationI.H.

◆ update()

void update ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const bool  report 
)

Update addressing and weights.

Definition at line 923 of file AMIInterpolation.C.

References mapDistributeBase::constructMap(), Foam::endl(), forAll, Foam::gSum(), Foam::indent(), Foam::Info, Foam::nl, Foam::returnReduce(), List< T >::size(), and mapDistributeBase::subMap().

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::~AMIInterpolation().

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

◆ sumWeights() [1/2]

void sumWeights ( AMIInterpolation< SourcePatch, TargetPatch > &  AMI)
static

Sum the weights on both sides of an AMI.

Definition at line 1152 of file AMIInterpolation.C.

◆ sumWeights() [2/2]

void sumWeights ( PtrList< AMIInterpolation< SourcePatch, TargetPatch >> &  AMIs)
static

As above, but for multiple AMI-s.

Definition at line 1163 of file AMIInterpolation.C.

References forAll.

◆ reportSumWeights()

void reportSumWeights ( AMIInterpolation< SourcePatch, TargetPatch > &  AMI)
static

Print out information relating to the weights sum. Values close.

to one are ideal. This information acts as a measure of the quality of the AMI.

Definition at line 1197 of file AMIInterpolation.C.

◆ normaliseWeights() [1/2]

void normaliseWeights ( AMIInterpolation< SourcePatch, TargetPatch > &  AMI)
static

Normalise the weights on both sides of an AMI.

Definition at line 1221 of file AMIInterpolation.C.

◆ normaliseWeights() [2/2]

void normaliseWeights ( UPtrList< AMIInterpolation< SourcePatch, TargetPatch >> &  AMIs)
static

As above, but for multiple AMI-s.

Definition at line 1232 of file AMIInterpolation.C.

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

Here is the call graph for this function:

◆ interpolateToSource() [1/9]

void interpolateToSource ( const UList< Type > &  fld,
const CombineOp &  cop,
List< Type > &  result,
const UList< Type > &  defaultValues = UList<Type>::null() 
) const

Interpolate from target to source with supplied op.

to combine existing value with remote value and weight

Definition at line 1342 of file AMIInterpolation.C.

References Foam::abort(), mapDistribute::distribute(), Foam::FatalError, FatalErrorInFunction, forAll, Foam::nl, List< T >::setSize(), and UList< T >::size().

Referenced by mappedPatchBase::distribute(), AMIInterpolation< SourcePatch, TargetPatch >::interpolateToSource(), AMIInterpolation< SourcePatch, TargetPatch >::interpolateToTarget(), regionModel::mapRegionPatchField(), regionModel::mapRegionPatchInternalField(), and meshToMesh::mapSrcToTgt().

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

◆ interpolateToTarget() [1/9]

void interpolateToTarget ( const UList< Type > &  fld,
const CombineOp &  cop,
List< Type > &  result,
const UList< Type > &  defaultValues = UList<Type>::null() 
) const

◆ interpolateToSource() [2/9]

tmp<Field<Type> > interpolateToSource ( const Field< Type > &  fld,
const CombineOp &  cop,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from target to source with supplied op.

◆ interpolateToSource() [3/9]

tmp<Field<Type> > interpolateToSource ( const tmp< Field< Type >> &  tFld,
const CombineOp &  cop,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from target tmp field to source with supplied op.

◆ interpolateToTarget() [2/9]

tmp<Field<Type> > interpolateToTarget ( const Field< Type > &  fld,
const CombineOp &  cop,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from source to target with supplied op.

◆ interpolateToTarget() [3/9]

tmp<Field<Type> > interpolateToTarget ( const tmp< Field< Type >> &  tFld,
const CombineOp &  cop,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from source tmp field to target with supplied op.

◆ interpolateToSource() [4/9]

tmp<Field<Type> > interpolateToSource ( const Field< Type > &  fld,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from target to source.

◆ interpolateToSource() [5/9]

tmp<Field<Type> > interpolateToSource ( const tmp< Field< Type >> &  tFld,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from target tmp field.

◆ interpolateToTarget() [4/9]

tmp<Field<Type> > interpolateToTarget ( const Field< Type > &  fld,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from source to target.

◆ interpolateToTarget() [5/9]

tmp<Field<Type> > interpolateToTarget ( const tmp< Field< Type >> &  tFld,
const UList< Type > &  defaultValues = UList< Type >::null() 
) const

Interpolate from source tmp field.

◆ srcPointFace()

Foam::label srcPointFace ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const vector n,
const label  tgtFacei,
point tgtPoint 
) const

Return source patch face index of point on target patch face.

Definition at line 1568 of file AMIInterpolation.C.

References PointHit< Point >::distance(), PointHit< Point >::eligibleMiss(), f(), forAll, PointHit< Point >::hit(), face::ray(), PointHit< Point >::setDistance(), and AMIInterpolation< SourcePatch, TargetPatch >::tgtPointFace().

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::interpolateToTarget().

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

◆ tgtPointFace()

Foam::label tgtPointFace ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const vector n,
const label  srcFacei,
point srcPoint 
) const

Return target patch face index of point on source patch face.

Definition at line 1617 of file AMIInterpolation.C.

References PointHit< Point >::distance(), PointHit< Point >::eligibleMiss(), f(), forAll, PointHit< Point >::hit(), face::ray(), PointHit< Point >::setDistance(), and AMIInterpolation< SourcePatch, TargetPatch >::writeFaceConnectivity().

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::srcPointFace().

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

◆ writeFaceConnectivity()

void writeFaceConnectivity ( const SourcePatch &  srcPatch,
const TargetPatch &  tgtPatch,
const labelListList srcAddress 
) const

Write face connectivity as OBJ file.

Definition at line 1666 of file AMIInterpolation.C.

References Foam::endl(), forAll, Foam::name(), and Foam::meshTools::writeOBJ().

Referenced by AMIInterpolation< SourcePatch, TargetPatch >::tgtPointFace().

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

◆ patchMagSf() [2/2]

Foam::tmp<Foam::scalarField> patchMagSf ( const Patch &  patch,
const faceAreaIntersect::triangulationMode  triMode 
)

◆ interpolateToSource() [6/9]

Foam::tmp<Foam::Field<Type> > interpolateToSource ( const Field< Type > &  fld,
const CombineOp &  cop,
const UList< Type > &  defaultValues 
) const

Definition at line 1428 of file AMIInterpolation.C.

References AMIInterpolation< SourcePatch, TargetPatch >::interpolateToSource(), tmp< T >::ref(), and Foam::Zero.

Here is the call graph for this function:

◆ interpolateToSource() [7/9]

Foam::tmp<Foam::Field<Type> > interpolateToSource ( const tmp< Field< Type >> &  tFld,
const CombineOp &  cop,
const UList< Type > &  defaultValues 
) const

Definition at line 1459 of file AMIInterpolation.C.

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

Here is the call graph for this function:

◆ interpolateToTarget() [6/9]

Foam::tmp<Foam::Field<Type> > interpolateToTarget ( const Field< Type > &  fld,
const CombineOp &  cop,
const UList< Type > &  defaultValues 
) const

Definition at line 1473 of file AMIInterpolation.C.

References AMIInterpolation< SourcePatch, TargetPatch >::interpolateToTarget(), tmp< T >::ref(), and Foam::Zero.

Here is the call graph for this function:

◆ interpolateToTarget() [7/9]

Foam::tmp<Foam::Field<Type> > interpolateToTarget ( const tmp< Field< Type >> &  tFld,
const CombineOp &  cop,
const UList< Type > &  defaultValues 
) const

Definition at line 1504 of file AMIInterpolation.C.

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

Here is the call graph for this function:

◆ interpolateToSource() [8/9]

Foam::tmp<Foam::Field<Type> > interpolateToSource ( const Field< Type > &  fld,
const UList< Type > &  defaultValues 
) const

Definition at line 1518 of file AMIInterpolation.C.

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

Here is the call graph for this function:

◆ interpolateToSource() [9/9]

Foam::tmp<Foam::Field<Type> > interpolateToSource ( const tmp< Field< Type >> &  tFld,
const UList< Type > &  defaultValues 
) const

Definition at line 1531 of file AMIInterpolation.C.

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

Here is the call graph for this function:

◆ interpolateToTarget() [8/9]

Foam::tmp<Foam::Field<Type> > interpolateToTarget ( const Field< Type > &  fld,
const UList< Type > &  defaultValues 
) const

Definition at line 1544 of file AMIInterpolation.C.

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

Here is the call graph for this function:

◆ interpolateToTarget() [9/9]

Foam::tmp<Foam::Field<Type> > interpolateToTarget ( const tmp< Field< Type >> &  tFld,
const UList< Type > &  defaultValues 
) const

Definition at line 1557 of file AMIInterpolation.C.

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

Here is the call graph for this function:

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