1 #ifndef ABLATELIBRARY_ARBITRARYSOURCE_HPP
2 #define ABLATELIBRARY_ARBITRARYSOURCE_HPP
5 namespace ablate::finiteVolume::processes {
11 const std::map<std::string, std::shared_ptr<ablate::mathFunctions::MathFunction>> functions;
17 static PetscErrorCode ComputeArbitrarySource(PetscInt dim, PetscReal time,
const PetscFVCellGeom* cg,
const PetscInt uOff[],
const PetscScalar u[],
const PetscInt aOff[],
const PetscScalar a[],
18 PetscScalar f[],
void* ctx);
21 struct PetscFunctionStruct {
22 mathFunctions::PetscFunction petscFunction;
28 std::vector<PetscFunctionStruct> petscFunctions;
31 explicit ArbitrarySource(std::map<std::string, std::shared_ptr<ablate::mathFunctions::MathFunction>> functions);
Definition: finiteVolumeSolver.hpp:28
Definition: arbitrarySource.hpp:9
void Setup(ablate::finiteVolume::FiniteVolumeSolver &fvmSolver) override
Definition: arbitrarySource.cpp:5
Definition: process.hpp:7