Alexandria 2.31.4
SDC-CH common library for the Euclid project
|
Classes | |
struct | Doubles |
struct | Vectors |
Public Member Functions | |
InterpNAdapter (const Coordinates< N > &grid, const NdArray::NdArray< double > &values, InterpolationType type, bool extrapolate) | |
double | operator() (typename Doubles< Is >::type... xn) const override |
void | operator() (const typename Vectors< Is >::type &..., std::vector< double > &) const override |
std::unique_ptr< NAryFunction< N > > | clone () const override |
InterpNAdapter (const InterpNAdapter &)=default |
Private Attributes | |
InterpN< typename Doubles< Is >::type... > | m_interpn |
@description GridInterpolation expects the data to follow GridContainer memory layout, but originally interpn is expected to follow a numpy memory layout. We use template dirty tricks to re-use GridInterpolation, transposing the axis at creation time, and the arguments at interpolation time
Definition at line 22 of file interpolation.icpp.
|
inline |
Definition at line 34 of file interpolation.icpp.
References m_interpn.
Referenced by InterpNAdapter().
|
default |
|
inlineoverridevirtual |
Creates a clone of the function object. All subclasses must implement this method, to enable copying of Function objects when only a reference to the Function class is available.
Implements Euclid::MathUtils::NAryFunction< N >.
Definition at line 51 of file interpolation.icpp.
References Euclid::make_unique().
|
inlineoverride |
Definition at line 47 of file interpolation.icpp.
|
inlineoverride |
Definition at line 42 of file interpolation.icpp.
References m_interpn, and std::make_tuple().
|
private |
Definition at line 58 of file interpolation.icpp.
Referenced by InterpNAdapter(), and operator()().