25 #ifndef UQ_VECTOR_FUNCTION_SYNCHRONIZER_H
26 #define UQ_VECTOR_FUNCTION_SYNCHRONIZER_H
28 #include <queso/VectorFunction.h>
45 template <
class P_V = GslVector,
class P_M = GslMatrix,
class Q_V = GslVector,
class Q_M = GslMatrix>
71 const P_V* vecDirection,
86 #endif // UQ_VECTOR_FUNCTION_SYNCHRONIZER_H
A templated (base) class for handling vector functions.
VectorFunctionSynchronizer(const BaseVectorFunction< P_V, P_M, Q_V, Q_M > &inputFunction, const P_V &auxPVec, const Q_V &auxQVec)
Default constructor.
This (virtual) class sets up the environment underlying the use of the QUESO library by an executable...
A class for partitioning vectors and matrices.
A templated class for synchronizing the calls of vector-valued functions.
void callFunction(const P_V *vecValues, const P_V *vecDirection, Q_V *imageVector, DistArray< P_V * > *gradVectors, DistArray< P_M * > *hessianMatrices, DistArray< P_V * > *hessianEffects) const
Calls the vector-valued function which will be synchronized.
const VectorSet< P_V, P_M > & domainSet() const
Access to the domain set of the vector-valued function which will be synchronized.
const BaseEnvironment & m_env
const BaseVectorFunction< P_V, P_M, Q_V, Q_M > & m_vectorFunction
~VectorFunctionSynchronizer()
Destructor.