25 #ifndef UQ_CONSTANT_SCALAR_FUNCTION_H
26 #define UQ_CONSTANT_SCALAR_FUNCTION_H
28 #include <queso/ScalarFunction.h>
29 #include <queso/VectorSet.h>
30 #include <queso/VectorSubset.h>
31 #include <queso/Environment.h>
32 #include <queso/Defines.h>
45 template <
class V = GslVector,
class M = GslMatrix>
54 double constantValue);
60 double actualValue (
const V& domainVector,
const V* domainDirection, V* gradVector, M* hessianMatrix, V* hessianEffect)
const;
64 double lnValue (
const V& domainVector,
const V* domainDirection, V* gradVector, M* hessianMatrix, V* hessianEffect)
const;
77 #endif // UQ_CONSTANT_SCALAR_FUNCTION_H
A templated (base) class for handling scalar functions.
A class for handling scalar functions which image is a constant (real number).
double m_constantValue
Constant value is the image set of this scalar function.
A templated class for handling sets.
double lnValue(const V &domainVector, const V *domainDirection, V *gradVector, M *hessianMatrix, V *hessianEffect) const
Calculates the logarithm of the value of this scalar function (which is zero).
const VectorSet< V, M > & domainSet() const
Access to the protected attribute m_domainSet: domain set of the scalar function. ...
virtual ~ConstantScalarFunction()
Virtual destructor.
double actualValue(const V &domainVector, const V *domainDirection, V *gradVector, M *hessianMatrix, V *hessianEffect) const
Calculates the actual value of this scalar function.
ConstantScalarFunction(const char *prefix, const VectorSet< V, M > &domainSet, double constantValue)
Default constructor.