Deterministic Gaussian Sampling
Loading...
Searching...
No Matches
dirac_to_dirac_approx_short< T > Class Template Reference
Inheritance diagram for dirac_to_dirac_approx_short< T >:
dirac_to_dirac_approx_i< T >

Public Types

using GSLVectorType = typename dirac_to_dirac_approx_i< T >::GSLVectorType
 
using GSLVectorViewType = typename dirac_to_dirac_approx_i< T >::GSLVectorViewType
 
using GSLMatrixType = typename dirac_to_dirac_approx_i< T >::GSLMatrixType
 
using GSLMatrixViewType = typename dirac_to_dirac_approx_i< T >::GSLMatrixViewType
 
- Public Types inherited from dirac_to_dirac_approx_i< T >
using GSLVectorType = typename GSLTemplateTypeAlias< T >::VectorType
 
using GSLVectorViewType = typename GSLTemplateTypeAlias< T >::VectorViewType
 
using GSLMatrixType = typename GSLTemplateTypeAlias< T >::MatrixType
 
using GSLMatrixViewType = typename GSLTemplateTypeAlias< T >::MatrixViewType
 

Public Member Functions

bool approximate (const T *y, size_t M, size_t L, size_t N, size_t bMax, T *x, const T *wX=nullptr, const T *wY=nullptr, GslminimizerResult *result=nullptr, const ApproximateOptions &options=ApproximateOptions{}) override
 reduce the data points using raw pointers
 
void modified_van_mises_distance_sq (T *distance, const T *y, size_t M, size_t L, size_t N, size_t bMax, T *x, const T *wX=nullptr, const T *wY=nullptr) override
 calculate modified van mises distance based on x and y
 
void modified_van_mises_distance_sq_derivative (T *gradient, const T *y, size_t M, size_t L, size_t N, size_t bMax, T *x, const T *wX=nullptr, const T *wY=nullptr) override
 calculate modified van mises distance based on x and y
 
bool approximate (const GSLVectorType *y, size_t L, size_t N, size_t bMax, GSLVectorType *x, const GSLVectorType *wX=nullptr, const GSLVectorType *wY=nullptr, GslminimizerResult *result=nullptr, const ApproximateOptions &options=ApproximateOptions{}) override
 reduce the data points using gsl vectors
 
void modified_van_mises_distance_sq (T *distance, const GSLVectorType *y, size_t L, size_t N, size_t bMax, GSLVectorType *x, const GSLVectorType *wX=nullptr, const GSLVectorType *wY=nullptr) override
 calculate modified van mises distance based on x and y
 
void modified_van_mises_distance_sq_derivative (GSLMatrixType *gradient, const GSLVectorType *y, size_t L, size_t N, size_t bMax, GSLVectorType *x, const GSLVectorType *wX=nullptr, const GSLVectorType *wY=nullptr) override
 calculate modified van mises distance based on x and y
 
bool approximate (GSLMatrixType *y, size_t L, size_t bMax, GSLMatrixType *x, const GSLVectorType *wX=nullptr, const GSLVectorType *wY=nullptr, GslminimizerResult *result=nullptr, const ApproximateOptions &options=ApproximateOptions{}) override
 reduce the data points using gsl matricies where possible
 
void modified_van_mises_distance_sq (T *distance, GSLMatrixType *y, size_t L, size_t bMax, GSLMatrixType *x, const GSLVectorType *wX=nullptr, const GSLVectorType *wY=nullptr) override
 calculate modified van mises distance based on x and y
 
void modified_van_mises_distance_sq_derivative (GSLMatrixType *gradient, GSLMatrixType *y, size_t L, size_t bMax, GSLMatrixType *x, const GSLVectorType *wX=nullptr, const GSLVectorType *wY=nullptr) override
 calculate modified van mises distance based on x and y
 
bool approximate (const gsl_vector_float *y, size_t L, size_t N, size_t bMax, gsl_vector_float *x, const gsl_vector_float *wX, const gsl_vector_float *wY, GslminimizerResult *result, const ApproximateOptions &options)
 
bool approximate (const gsl_vector *y, size_t L, size_t N, size_t bMax, gsl_vector *x, const gsl_vector *wX, const gsl_vector *wY, GslminimizerResult *result, const ApproximateOptions &options)
 
void modified_van_mises_distance_sq (float *distance, const gsl_vector_float *y, size_t L, size_t N, size_t bMax, gsl_vector_float *x, const gsl_vector_float *wX, const gsl_vector_float *wY)
 
void modified_van_mises_distance_sq (double *distance, const gsl_vector *y, size_t L, size_t N, size_t bMax, gsl_vector *x, const gsl_vector *wX, const gsl_vector *wY)
 
void modified_van_mises_distance_sq_derivative (gsl_matrix_float *gradient, const gsl_vector_float *y, size_t L, size_t N, size_t bMax, gsl_vector_float *x, const gsl_vector_float *wX, const gsl_vector_float *wY)
 
void modified_van_mises_distance_sq_derivative (gsl_matrix *gradient, const gsl_vector *y, size_t L, size_t N, size_t bMax, gsl_vector *x, const gsl_vector *wX, const gsl_vector *wY)
 
bool approximate (const gsl_vector_float *y, size_t L, size_t N, size_t bMax, gsl_vector_float *x, const gsl_vector_float *wX, const gsl_vector_float *wY, GslminimizerResult *result, const ApproximateOptions &options)
 
bool approximate (const gsl_vector *y, size_t L, size_t N, size_t bMax, gsl_vector *x, const gsl_vector *wX, const gsl_vector *wY, GslminimizerResult *result, const ApproximateOptions &options)
 
void modified_van_mises_distance_sq (float *distance, const gsl_vector_float *y, size_t L, size_t N, size_t bMax, gsl_vector_float *x, const gsl_vector_float *wX, const gsl_vector_float *wY)
 
void modified_van_mises_distance_sq (double *distance, const gsl_vector *y, size_t L, size_t N, size_t bMax, gsl_vector *x, const gsl_vector *wX, const gsl_vector *wY)
 
void modified_van_mises_distance_sq_derivative (gsl_matrix_float *gradient, const gsl_vector_float *y, size_t L, size_t N, size_t bMax, gsl_vector_float *x, const gsl_vector_float *wX, const gsl_vector_float *wY)
 
void modified_van_mises_distance_sq_derivative (gsl_matrix *gradient, const gsl_vector *y, size_t L, size_t N, size_t bMax, gsl_vector *x, const gsl_vector *wX, const gsl_vector *wY)
 

Friends

class benchmark_dirac_to_dirac_approx_short
 

Member Function Documentation

◆ approximate() [1/3]

template<typename T >
bool dirac_to_dirac_approx_short< T >::approximate ( const GSLVectorType *  y,
size_t  L,
size_t  N,
size_t  bMax,
GSLVectorType *  x,
const GSLVectorType *  wX = nullptr,
const GSLVectorType *  wY = nullptr,
GslminimizerResult result = nullptr,
const ApproximateOptions options = ApproximateOptions{} 
)
overridevirtual

reduce the data points using gsl vectors

Parameters
yinput data points
Lnumber of data points for reduction
Ndimension of the data
bMaxbMax
xfirst guess for the reduction and return value
wXweights for the x data points
wYweights for the y data points
resultminimizer result
optionsoptions for minimizer
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ approximate() [2/3]

template<typename T >
bool dirac_to_dirac_approx_short< T >::approximate ( const T y,
size_t  M,
size_t  L,
size_t  N,
size_t  bMax,
T x,
const T wX = nullptr,
const T wY = nullptr,
GslminimizerResult result = nullptr,
const ApproximateOptions options = ApproximateOptions{} 
)
overridevirtual

reduce the data points using raw pointers

Parameters
yinput data points
Mnumber of input data points
Lnumber of data points for reduction
Ndimension of the data
bMaxbMax
xfirst guess for the reduction and return value
wXweights for the x data points
wYweights for the y data points
resultminimizer result
optionsoptions for minimizer
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ approximate() [3/3]

template<typename T >
bool dirac_to_dirac_approx_short< T >::approximate ( GSLMatrixType *  y,
size_t  L,
size_t  bMax,
GSLMatrixType *  x,
const GSLVectorType *  wX = nullptr,
const GSLVectorType *  wY = nullptr,
GslminimizerResult result = nullptr,
const ApproximateOptions options = ApproximateOptions{} 
)
overridevirtual

reduce the data points using gsl matricies where possible

Parameters
yinput data points
Lnumber of data points for reduction
bMaxbMax
xfirst guess for the reduction and return value
wXweights for the x data points
wYweights for the y data points
resultminimizer result
optionsoptions for minimizer
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ modified_van_mises_distance_sq() [1/3]

template<typename T >
void dirac_to_dirac_approx_short< T >::modified_van_mises_distance_sq ( T distance,
const GSLVectorType *  y,
size_t  L,
size_t  N,
size_t  bMax,
GSLVectorType *  x,
const GSLVectorType *  wX = nullptr,
const GSLVectorType *  wY = nullptr 
)
overridevirtual

calculate modified van mises distance based on x and y

Parameters
distancepointer to distance value to be calculated
yinput data points
Lnumber of elements in x
Ndimension of the data
bMaxbMax
xinput data points
wXweights for the x data points
wYweights for the y data points
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ modified_van_mises_distance_sq() [2/3]

template<typename T >
void dirac_to_dirac_approx_short< T >::modified_van_mises_distance_sq ( T distance,
const T y,
size_t  M,
size_t  L,
size_t  N,
size_t  bMax,
T x,
const T wX = nullptr,
const T wY = nullptr 
)
overridevirtual

calculate modified van mises distance based on x and y

Parameters
distancepointer to distance value to be calculated
yinput data points
Mnumber of elements in y
Lnumber of elements in x
Ndimension of the data
bMaxbMax
xinput data points
wXweights for the x data points
wYweights for the y data points
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ modified_van_mises_distance_sq() [3/3]

template<typename T >
void dirac_to_dirac_approx_short< T >::modified_van_mises_distance_sq ( T distance,
GSLMatrixType *  y,
size_t  L,
size_t  bMax,
GSLMatrixType *  x,
const GSLVectorType *  wX = nullptr,
const GSLVectorType *  wY = nullptr 
)
overridevirtual

calculate modified van mises distance based on x and y

Parameters
distancepointer to distance value to be calculated
yinput data points
Lnumber of elements in x
bMaxbMax
xinput data points
wXweights for the x data points
wYweights for the y data points
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ modified_van_mises_distance_sq_derivative() [1/3]

template<typename T >
void dirac_to_dirac_approx_short< T >::modified_van_mises_distance_sq_derivative ( GSLMatrixType *  gradient,
const GSLVectorType *  y,
size_t  L,
size_t  N,
size_t  bMax,
GSLVectorType *  x,
const GSLVectorType *  wX = nullptr,
const GSLVectorType *  wY = nullptr 
)
overridevirtual

calculate modified van mises distance based on x and y

Parameters
gradientpointer to gradient to be calculated
yinput data points
Lnumber of elements in x
Ndimension of the data
bMaxbMax
xinput data points
wXweights for the x data points
wYweights for the y data points
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ modified_van_mises_distance_sq_derivative() [2/3]

template<typename T >
void dirac_to_dirac_approx_short< T >::modified_van_mises_distance_sq_derivative ( GSLMatrixType *  gradient,
GSLMatrixType *  y,
size_t  L,
size_t  bMax,
GSLMatrixType *  x,
const GSLVectorType *  wX = nullptr,
const GSLVectorType *  wY = nullptr 
)
overridevirtual

calculate modified van mises distance based on x and y

Parameters
gradientpointer to gradient to be calculated
yinput data points
Lnumber of elements in x
bMaxbMax
xinput data points
wXweights for the x data points
wYweights for the y data points
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.

◆ modified_van_mises_distance_sq_derivative() [3/3]

template<typename T >
void dirac_to_dirac_approx_short< T >::modified_van_mises_distance_sq_derivative ( T gradient,
const T y,
size_t  M,
size_t  L,
size_t  N,
size_t  bMax,
T x,
const T wX = nullptr,
const T wY = nullptr 
)
overridevirtual

calculate modified van mises distance based on x and y

Parameters
gradientpointer to gradient to be calculated
yinput data points
Mnumber of elements in y
Lnumber of elements in x
Ndimension of the data
bMaxbMax
xinput data points
wXweights for the x data points
wYweights for the y data points
Returns
true, on success, false otherwise

Implements dirac_to_dirac_approx_i< T >.


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