interpolationWeights Class Referenceabstract

Abstract base class for interpolating in 1D. More...

Inheritance diagram for interpolationWeights:
[legend]
Collaboration diagram for interpolationWeights:
[legend]

Public Member Functions

 TypeName ("interpolationWeights")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, interpolationWeights, word,(const scalarField &samples),(samples))
 
 interpolationWeights (const scalarField &samples)
 Construct from components. More...
 
virtual ~interpolationWeights ()=default
 Destructor. More...
 
virtual bool valueWeights (const scalar t, labelList &indices, scalarField &weights) const =0
 Calculate weights and indices to calculate t from samples. More...
 
virtual bool integrationWeights (const scalar t1, const scalar t2, labelList &indices, scalarField &weights) const =0
 Calculate weights and indices to calculate integrand of t1..t2. More...
 
template<class ListType1 , class ListType2 >
Foam::outerProduct< typename ListType1::value_type, typename ListType2::value_type >::type weightedSum (const ListType1 &f1, const ListType2 &f2)
 

Static Public Member Functions

static autoPtr< interpolationWeightsNew (const word &type, const scalarField &samples)
 Return a reference to the selected interpolationWeights. More...
 
template<class ListType1 , class ListType2 >
static outerProduct< typename ListType1::value_type, typename ListType2::value_type >::type weightedSum (const ListType1 &f1, const ListType2 &f2)
 Helper: weighted sum. More...
 

Protected Member Functions

 interpolationWeights (const interpolationWeights &)=delete
 No copy construct. More...
 
void operator= (const interpolationWeights &)=delete
 No copy assignment. More...
 

Protected Attributes

const scalarFieldsamples_
 

Detailed Description

Abstract base class for interpolating in 1D.

Source files

Definition at line 58 of file interpolationWeights.H.

Constructor & Destructor Documentation

◆ interpolationWeights() [1/2]

interpolationWeights ( const interpolationWeights )
protecteddelete

No copy construct.

◆ interpolationWeights() [2/2]

interpolationWeights ( const scalarField samples)
explicit

Construct from components.

Definition at line 44 of file interpolationWeights.C.

◆ ~interpolationWeights()

virtual ~interpolationWeights ( )
virtualdefault

Destructor.

Member Function Documentation

◆ operator=()

void operator= ( const interpolationWeights )
protecteddelete

No copy assignment.

◆ TypeName()

TypeName ( "interpolationWeights"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
interpolationWeights  ,
word  ,
(const scalarField &samples ,
(samples  
)

◆ New()

Foam::autoPtr< Foam::interpolationWeights > New ( const word type,
const scalarField samples 
)
static

Return a reference to the selected interpolationWeights.

Definition at line 53 of file interpolationWeights.C.

References DebugInFunction, Foam::endl(), Foam::exit(), Foam::FatalError, FatalErrorInLookup, samples(), and Foam::type().

Referenced by uniformInterpolatedDisplacementPointPatchVectorField::updateCoeffs().

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

◆ valueWeights()

virtual bool valueWeights ( const scalar  t,
labelList indices,
scalarField weights 
) const
pure virtual

Calculate weights and indices to calculate t from samples.

Returns true if indices changed.

Implemented in linearInterpolationWeights, and splineInterpolationWeights.

◆ integrationWeights()

virtual bool integrationWeights ( const scalar  t1,
const scalar  t2,
labelList indices,
scalarField weights 
) const
pure virtual

Calculate weights and indices to calculate integrand of t1..t2.

from samples. Returns true if indices changed.

Implemented in linearInterpolationWeights, and splineInterpolationWeights.

◆ weightedSum() [1/2]

static outerProduct< typename ListType1::value_type, typename ListType2::value_type >::type weightedSum ( const ListType1 &  f1,
const ListType2 &  f2 
)
static

Helper: weighted sum.

◆ weightedSum() [2/2]

Foam::outerProduct< typename ListType1::value_type, typename ListType2::value_type>::type weightedSum ( const ListType1 &  f1,
const ListType2 &  f2 
)

Definition at line 41 of file interpolationWeightsTemplates.C.

References Foam::Zero.

Member Data Documentation

◆ samples_

const scalarField& samples_
protected

Definition at line 64 of file interpolationWeights.H.


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