25 #ifndef UQ_GENERIC_SCALAR_COVARIANCE_FUNCTION_H
26 #define UQ_GENERIC_SCALAR_COVARIANCE_FUNCTION_H
28 #include <queso/ScalarCovarianceFunction.h>
29 #include <queso/VectorSet.h>
30 #include <queso/Environment.h>
47 template <
class V = GslVector,
class M = GslMatrix>
56 double (*covRoutinePtr)(
const V& positionVector1,
const V& positionVector2,
const void* routineDataPtr),
57 const void* routinesDataPtr);
66 double value(
const V& positionVector1,
const V& positionVector2)
const;
73 double (*
m_covRoutinePtr)(
const V& positionVector1,
const V& positionVector2,
const void* routineDataPtr);
79 #endif // UQ_GENERIC_SCALAR_COVARIANCE_FUNCTION_H
double(* m_covRoutinePtr)(const V &positionVector1, const V &positionVector2, const void *routineDataPtr)
const void * m_routineDataPtr
double value(const V &positionVector1, const V &positionVector2) const
Calculates the value of the generic covariance function.
A templated class for handling sets.
GenericScalarCovarianceFunction(const char *prefix, const VectorSet< V, M > &domainSet, double(*covRoutinePtr)(const V &positionVector1, const V &positionVector2, const void *routineDataPtr), const void *routinesDataPtr)
Default constructor.
A class for generic covariances.
A templated (base) class to accommodate scalar covariance functions (of random variables).
virtual ~GenericScalarCovarianceFunction()
Virtual destructor.