1 #ifndef ABLATELIBRARY_PARSEDSERIES_HPP
2 #define ABLATELIBRARY_PARSEDSERIES_HPP
4 #include "formulaBase.hpp"
5 #include "parameters/parameters.hpp"
7 namespace ablate::mathFunctions {
25 static PetscErrorCode ParsedPetscSeries(PetscInt dim, PetscReal
time,
const PetscReal x[], PetscInt Nf, PetscScalar* u,
void* ctx);
38 explicit ParsedSeries(std::string functionString,
int lowerBound = 1,
int upperBound = 1000,
const std::shared_ptr<ablate::parameters::Parameters>& constants = {});
40 double Eval(
const double& x,
const double& y,
const double& z,
const double& t)
const override;
42 double Eval(
const double* xyz,
const int& ndims,
const double& t)
const override;
44 void Eval(
const double& x,
const double& y,
const double& z,
const double& t, std::vector<double>& result)
const override;
46 void Eval(
const double* xyz,
const int& ndims,
const double& t, std::vector<double>& result)
const override;
Definition: parsedSeries.hpp:13
PetscFunction GetPetscFunction() override
Definition: parsedSeries.hpp:50
void * GetContext() override
Definition: parsedSeries.hpp:48
double Eval(const double &x, const double &y, const double &z, const double &t) const override
Definition: parsedSeries.cpp:21