Project
Loading...
Searching...
No Matches
o2::gpu::SplineHelper< DataT > Class Template Reference

#include <SplineHelper.h>

Public Member Functions

 SplineHelper ()
 _____________ Constructors / destructors __________________________
 
 SplineHelper (const SplineHelper &)=delete
 Copy constructor: disabled.
 
SplineHelperoperator= (const SplineHelper &)=delete
 Assignment operator: disabled.
 
 ~SplineHelper ()=default
 Destructor.
 
void approximateFunction (SplineContainer< DataT > &spline, const double xMin[], const double xMax[], std::function< void(const double x[], double f[])> F, const int32_t nAxiliaryDataPoints[]=nullptr)
 _______________ Main functionality ________________________
 
int32_t setSpline (const SplineContainer< DataT > &spline, const int32_t nAxiliaryPoints[])
 _______________ Interface for a step-wise construction of the best-fit spline ________________________
 
void approximateFunction (DataT *Fparameters, const double xMin[], const double xMax[], std::function< void(const double x[], double f[])> F) const
 approximate std::function, output in Fparameters
 
void approximateFunctionBatch (DataT *Fparameters, const double xMin[], const double xMax[], std::function< void(const std::vector< double > x[], double f[])> F, uint32_t batchsize) const
 approximate std::function, output in Fparameters. F calculates values for a batch of points.
 
void approximateFunction (DataT *Fparameters, const double DataPointF[]) const
 approximate a function given as an array of values at data points
 
int32_t getNumberOfDataPoints (int32_t dimX) const
 
int32_t getNumberOfDataPoints () const
 
const Spline1DHelperOld< DataT > & getHelper (int32_t dimX) const
 
const chargetLastError () const
 _______________ Utilities ________________________
 

Static Public Member Functions

static int32_t test (const bool draw=0, const bool drawDataPoints=1)
 Test the Spline class functionality.
 
static int32_t arraytopoints (int32_t point, int32_t result[], const int32_t numbers[], int32_t dim)
 
static int32_t pointstoarray (const int32_t indices[], const int32_t numbers[], int32_t dim)
 

Detailed Description

template<typename DataT>
class o2::gpu::SplineHelper< DataT >

The SplineHelper class is to initialize Spline* objects

Definition at line 40 of file SplineHelper.h.

Constructor & Destructor Documentation

◆ SplineHelper() [1/2]

template<typename DataT >
SplineHelper::SplineHelper ( )

_____________ Constructors / destructors __________________________

Default constructor

Definition at line 39 of file SplineHelper.cxx.

◆ SplineHelper() [2/2]

template<typename DataT >
o2::gpu::SplineHelper< DataT >::SplineHelper ( const SplineHelper< DataT > &  )
delete

Copy constructor: disabled.

◆ ~SplineHelper()

template<typename DataT >
o2::gpu::SplineHelper< DataT >::~SplineHelper ( )
default

Destructor.

Member Function Documentation

◆ approximateFunction() [1/3]

template<typename DataT >
void SplineHelper::approximateFunction ( DataT *  Fparameters,
const double  DataPointF[] 
) const

approximate a function given as an array of values at data points

approximate a function given as an array of values at data points

write derivatives in FParameters

LOG(info) << " current numbers: ";

write derivatives in FParameters

Definition at line 217 of file SplineHelper.cxx.

◆ approximateFunction() [2/3]

template<typename DataT >
void SplineHelper::approximateFunction ( DataT *  Fparameters,
const double  xMin[],
const double  xMax[],
std::function< void(const double x[], double f[])>  F 
) const

approximate std::function, output in Fparameters

Create best-fit spline parameters for a given input function F output in Fparameter

Definition at line 90 of file SplineHelper.cxx.

◆ approximateFunction() [3/3]

template<typename DataT >
void o2::gpu::SplineHelper< DataT >::approximateFunction ( SplineContainer< DataT > &  spline,
const double  xMin[],
const double  xMax[],
std::function< void(const double x[], double f[])>  F,
const int32_t  nAxiliaryDataPoints[] = nullptr 
)

_______________ Main functionality ________________________

Create best-fit spline parameters for a given input function F

Create best-fit spline parameters for a given input function F

Definition at line 118 of file SplineHelper.h.

◆ approximateFunctionBatch()

template<typename DataT >
void SplineHelper::approximateFunctionBatch ( DataT *  Fparameters,
const double  xMin[],
const double  xMax[],
std::function< void(const std::vector< double > x[], double f[])>  F,
uint32_t  batchsize 
) const

approximate std::function, output in Fparameters. F calculates values for a batch of points.

Create best-fit spline parameters for a given input function F. F calculates values for a batch of points. output in Fparameters

Definition at line 157 of file SplineHelper.cxx.

◆ arraytopoints()

template<typename DataT >
int32_t SplineHelper::arraytopoints ( int32_t  point,
int32_t  result[],
const int32_t  numbers[],
int32_t  dim 
)
static

Definition at line 70 of file SplineHelper.cxx.

◆ getHelper()

template<typename DataT >
const Spline1DHelperOld< DataT > & o2::gpu::SplineHelper< DataT >::getHelper ( int32_t  dimX) const
inline

Definition at line 89 of file SplineHelper.h.

◆ getLastError()

template<typename DataT >
const char * o2::gpu::SplineHelper< DataT >::getLastError ( ) const
inline

_______________ Utilities ________________________

Gives error string

Definition at line 94 of file SplineHelper.h.

◆ getNumberOfDataPoints() [1/2]

template<typename DataT >
int32_t o2::gpu::SplineHelper< DataT >::getNumberOfDataPoints ( ) const
inline

Definition at line 87 of file SplineHelper.h.

◆ getNumberOfDataPoints() [2/2]

template<typename DataT >
int32_t o2::gpu::SplineHelper< DataT >::getNumberOfDataPoints ( int32_t  dimX) const
inline

Definition at line 85 of file SplineHelper.h.

◆ operator=()

template<typename DataT >
SplineHelper & o2::gpu::SplineHelper< DataT >::operator= ( const SplineHelper< DataT > &  )
delete

Assignment operator: disabled.

◆ pointstoarray()

template<typename DataT >
int32_t SplineHelper::pointstoarray ( const int32_t  indices[],
const int32_t  numbers[],
int32_t  dim 
)
static

Definition at line 54 of file SplineHelper.cxx.

◆ setSpline()

template<typename DataT >
int32_t o2::gpu::SplineHelper< DataT >::setSpline ( const SplineContainer< DataT > &  spline,
const int32_t  nAxiliaryPoints[] 
)

_______________ Interface for a step-wise construction of the best-fit spline ________________________

precompute everything needed for the construction

Definition at line 137 of file SplineHelper.h.

◆ test()

template<typename DataT >
int32_t SplineHelper::test ( const bool  draw = 0,
const bool  drawDataPoints = 1 
)
static

Test the Spline class functionality.

Definition at line 439 of file SplineHelper.cxx.


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