1 #ifndef ABLATELIBRARY_FUNCTIONPOINTER_HPP
2 #define ABLATELIBRARY_FUNCTIONPOINTER_HPP
3 #include "mathFunction.hpp"
5 namespace ablate::mathFunctions {
10 PetscFunction
function;
13 explicit FunctionPointer(ablate::mathFunctions::PetscFunction
function,
void* context =
nullptr);
17 double Eval(
const double& x,
const double& y,
const double& z,
const double& t)
const override;
19 double Eval(
const double* xyz,
const int& ndims,
const double& t)
const override;
21 void Eval(
const double& x,
const double& y,
const double& z,
const double& t, std::vector<double>& result)
const override;
23 void Eval(
const double* xyz,
const int& ndims,
const double& t, std::vector<double>& result)
const override;
25 inline ablate::mathFunctions::PetscFunction
GetPetscFunction()
override {
return function; }
Definition: functionPointer.hpp:7
double Eval(const double &x, const double &y, const double &z, const double &t) const override
Definition: functionPointer.cpp:4
ablate::mathFunctions::PetscFunction GetPetscFunction() override
Definition: functionPointer.hpp:25
void * GetContext() override
Definition: functionPointer.hpp:27
Definition: mathFunction.hpp:13