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 @@ ...@@ -20,6 +20,7 @@
#include <scheme/HybridRoeRusanovViscousFormEulerianCompositeSolver_v2.hpp> #include <scheme/HybridRoeRusanovViscousFormEulerianCompositeSolver_v2.hpp>
#include <scheme/HybridRusanovRoeViscousFormEulerianCompositeSolver_v2.hpp> #include <scheme/HybridRusanovRoeViscousFormEulerianCompositeSolver_v2.hpp>
#include <scheme/HybridHLLRusanovEulerianCompositeSolver_v2.hpp> #include <scheme/HybridHLLRusanovEulerianCompositeSolver_v2.hpp>
#include <scheme/HybridHLLcRusanovEulerianCompositeSolver_v2.hpp>
CompositeSchemeOtherFluxesModule::CompositeSchemeOtherFluxesModule() { CompositeSchemeOtherFluxesModule::CompositeSchemeOtherFluxesModule() {
...@@ -79,6 +80,25 @@ CompositeSchemeOtherFluxesModule::CompositeSchemeOtherFluxesModule() { ...@@ -79,6 +80,25 @@ CompositeSchemeOtherFluxesModule::CompositeSchemeOtherFluxesModule() {
bc_descriptor_list, dt); 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( ...@@ -35,6 +35,7 @@ add_library(
HybridRoeRusanovViscousFormEulerianCompositeSolver_v2.cpp HybridRoeRusanovViscousFormEulerianCompositeSolver_v2.cpp
HybridRusanovRoeViscousFormEulerianCompositeSolver_v2.cpp HybridRusanovRoeViscousFormEulerianCompositeSolver_v2.cpp
HybridHLLRusanovEulerianCompositeSolver_v2.cpp HybridHLLRusanovEulerianCompositeSolver_v2.cpp
HybridHLLcRusanovEulerianCompositeSolver_v2.cpp
) )
target_link_libraries( 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