diff --git a/src/language/modules/CompositeSchemeModule.cpp b/src/language/modules/CompositeSchemeModule.cpp index 8c8a7f4d57992db541a337fc33c7f2f5ce39cd2c..ff66e8d1f7572ad82547023cb90b4069909256cc 100644 --- a/src/language/modules/CompositeSchemeModule.cpp +++ b/src/language/modules/CompositeSchemeModule.cpp @@ -10,6 +10,7 @@ #include <language/modules/ModuleRepository.hpp> #include <scheme/AcousticCompositeSolver.hpp> +#include <scheme/RoeFluxFormEulerianCompositeSolver_v2.hpp> #include <scheme/RoeViscousFormEulerianCompositeSolver_v2.hpp> #include <scheme/RoeViscousFormEulerianCompositeSolver_v2_o2.hpp> #include <scheme/RusanovEulerianCompositeSolver.hpp> @@ -174,6 +175,42 @@ CompositeSchemeModule::CompositeSchemeModule() return rusanovEulerianCompositeSolver_v2(rho, u, E, gamma, c, p, // degree, bc_descriptor_list, dt, true); })); + + this->_addBuiltinFunction("roe_fluxform_eulerian_composite_solver_version2", + std::function( + [](const std::shared_ptr<const DiscreteFunctionVariant>& rho, + const std::shared_ptr<const DiscreteFunctionVariant>& u, + const std::shared_ptr<const DiscreteFunctionVariant>& E, const double& gamma, + const std::shared_ptr<const DiscreteFunctionVariant>& c, + const std::shared_ptr<const DiscreteFunctionVariant>& p, // const size_t& degree, + const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& + bc_descriptor_list, + const double& dt) -> std::tuple<std::shared_ptr<const DiscreteFunctionVariant>, + std::shared_ptr<const DiscreteFunctionVariant>, + std::shared_ptr<const DiscreteFunctionVariant>> { + return roeFluxFormEulerianCompositeSolver_v2(rho, u, E, gamma, c, p, // degree, + bc_descriptor_list, dt); + } + + )); + + this->_addBuiltinFunction("roe_fluxform_eulerian_composite_solver_version2_with_checks", + std::function( + [](const std::shared_ptr<const DiscreteFunctionVariant>& rho, + const std::shared_ptr<const DiscreteFunctionVariant>& u, + const std::shared_ptr<const DiscreteFunctionVariant>& E, const double& gamma, + const std::shared_ptr<const DiscreteFunctionVariant>& c, + const std::shared_ptr<const DiscreteFunctionVariant>& p, // const size_t& degree, + const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& + bc_descriptor_list, + const double& dt) -> std::tuple<std::shared_ptr<const DiscreteFunctionVariant>, + std::shared_ptr<const DiscreteFunctionVariant>, + std::shared_ptr<const DiscreteFunctionVariant>> { + return roeFluxFormEulerianCompositeSolver_v2(rho, u, E, gamma, c, p, // degree, + bc_descriptor_list, dt, true); + } + + )); this->_addBuiltinFunction("roe_viscosityform_eulerian_composite_solver_version2", std::function( [](const std::shared_ptr<const DiscreteFunctionVariant>& rho,