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>
44 template<
class V,
class M>
53 double (*covRoutinePtr)(
const V& positionVector1,
const V& positionVector2,
const void* routineDataPtr),
54 const void* routinesDataPtr);
63 double value(
const V& positionVector1,
const V& positionVector2)
const;
70 double (*
m_covRoutinePtr)(
const V& positionVector1,
const V& positionVector2,
const void* routineDataPtr);
76 #endif // UQ_GENERIC_SCALAR_COVARIANCE_FUNCTION_H
A templated (base) class to accommodate scalar covariance functions (of random variables).
A templated class for handling sets.
virtual ~GenericScalarCovarianceFunction()
Virtual destructor.
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.
double value(const V &positionVector1, const V &positionVector2) const
Calculates the value of the generic covariance function.
double(* m_covRoutinePtr)(const V &positionVector1, const V &positionVector2, const void *routineDataPtr)
const void * m_routineDataPtr