Skip to content
Snippets Groups Projects
Commit 31a4dada authored by Cormet Dylan's avatar Cormet Dylan
Browse files

add first version of Hybrid HLLc/Rusanov

parent a66fe835
No related branches found
No related tags found
No related merge requests found
......@@ -20,6 +20,7 @@
#include <scheme/HybridRoeRusanovViscousFormEulerianCompositeSolver_v2.hpp>
#include <scheme/HybridRusanovRoeViscousFormEulerianCompositeSolver_v2.hpp>
#include <scheme/HybridHLLRusanovEulerianCompositeSolver_v2.hpp>
#include <scheme/HybridHLLcRusanovEulerianCompositeSolver_v2.hpp>
CompositeSchemeOtherFluxesModule::CompositeSchemeOtherFluxesModule() {
......@@ -79,6 +80,25 @@ CompositeSchemeOtherFluxesModule::CompositeSchemeOtherFluxesModule() {
bc_descriptor_list, dt);
}
));
this->_addBuiltinFunction("hybrid_hllc_rusanov_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 hybridHLLcRusanovEulerianCompositeSolver_v2(rho, u, E, gamma, c, p, // degree,
bc_descriptor_list, dt);
}
));
}
......
......@@ -35,6 +35,7 @@ add_library(
HybridRoeRusanovViscousFormEulerianCompositeSolver_v2.cpp
HybridRusanovRoeViscousFormEulerianCompositeSolver_v2.cpp
HybridHLLRusanovEulerianCompositeSolver_v2.cpp
HybridHLLcRusanovEulerianCompositeSolver_v2.cpp
)
target_link_libraries(
......
This diff is collapsed.
#ifndef HYBRID_HLLC_RUSANOV_EULERIAN_COMPOSITE_SOLVER_V2_HPP
#define HYBRID_HLLC_RUSANOV_EULERIAN_COMPOSITE_SOLVER_V2_HPP
#include <mesh/MeshVariant.hpp>
#include <scheme/DiscreteFunctionVariant.hpp>
#include <scheme/IBoundaryConditionDescriptor.hpp>
#include <scheme/RusanovEulerianCompositeSolverTools.hpp>
#include <memory>
#include <vector>
// double compute_dt(const std::shared_ptr<const DiscreteFunctionVariant>& u_v,
// const std::shared_ptr<const DiscreteFunctionVariant>& c_v);
std::tuple<std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>>
hybridHLLcRusanovEulerianCompositeSolver_v2(
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,
const bool check = false);
#endif // HYBRID_HLLC_RUSANOV_EULERIAN_COMPOSITE_SOLVER_V2_HPP
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment