1 #ifndef ABLATELIBRARY_INCOMPRESSIBLEFLOW_H
2 #define ABLATELIBRARY_INCOMPRESSIBLEFLOW_H
6 #include "domain/domain.hpp"
7 #include "finiteElementSolver.hpp"
8 #include "finiteVolume/boundaryConditions/boundaryCondition.hpp"
9 #include "mathFunctions/fieldFunction.hpp"
10 #include "parameters/parameters.hpp"
12 namespace ablate::finiteElement {
15 const std::shared_ptr<parameters::Parameters> parameters;
18 IncompressibleFlowSolver(std::string solverId, std::shared_ptr<domain::Region> region, std::shared_ptr<parameters::Parameters> options = {},
19 std::shared_ptr<parameters::Parameters> parameters = {}, std::vector<std::shared_ptr<boundaryConditions::BoundaryCondition>> boundaryConditions = {},
20 std::vector<std::shared_ptr<mathFunctions::FieldFunction>> auxiliaryFields = {});
23 void Setup()
override;
24 void Initialize()
override;
26 void CompleteFlowInitialization(DM, Vec)
override;
29 inline static std::map<std::string, PetscReal> defaultParameters{{
"strouhal", 1.0}, {
"reynolds", 1.0}, {
"peclet", 1.0}, {
"mu", 1.0}, {
"k", 1.0}, {
"cp", 1.0}};
Definition: finiteElementSolver.hpp:14
Definition: incompressibleFlowSolver.hpp:13
void Setup() override
Definition: incompressibleFlowSolver.cpp:12