Skip to content
Snippets Groups Projects
Commit f4218dce authored by Axelle Drouard's avatar Axelle Drouard
Browse files

Set up second order in space

parent 2b6bb9d2
No related branches found
No related tags found
No related merge requests found
...@@ -44,6 +44,7 @@ ...@@ -44,6 +44,7 @@
#include <scheme/EulerKineticSolverMoodFD.hpp> #include <scheme/EulerKineticSolverMoodFD.hpp>
#include <scheme/EulerKineticSolverMoodFV.hpp> #include <scheme/EulerKineticSolverMoodFV.hpp>
#include <scheme/EulerKineticSolverMultiD.hpp> #include <scheme/EulerKineticSolverMultiD.hpp>
#include <scheme/EulerKineticSolverMultiDOrder2.hpp>
#include <scheme/EulerKineticSolverOneFluxMood.hpp> #include <scheme/EulerKineticSolverOneFluxMood.hpp>
#include <scheme/EulerKineticSolverThirdOrderFD.hpp> #include <scheme/EulerKineticSolverThirdOrderFD.hpp>
#include <scheme/EulerKineticSolverThirdOrderFV.hpp> #include <scheme/EulerKineticSolverThirdOrderFV.hpp>
...@@ -1041,6 +1042,44 @@ SchemeModule::SchemeModule() ...@@ -1041,6 +1042,44 @@ SchemeModule::SchemeModule()
)); ));
this->_addBuiltinFunction("euler_kinetic_MultiD_Order2",
std::function(
[](const double& dt, const double& gamma, const std::vector<TinyVector<2>>& lambda_vector,
const double& eps, const size_t& SpaceOrder, const size_t& TimeOrder,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho_u,
const std::shared_ptr<const DiscreteFunctionVariant>& F_E,
const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>&
bc_descriptor_list) -> std::tuple<std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>> {
return eulerKineticSolverMultiDOrder2(dt, gamma, lambda_vector, eps, SpaceOrder,
TimeOrder, F_rho, F_rho_u, F_E,
bc_descriptor_list);
}
));
this->_addBuiltinFunction("euler_kinetic_MultiD_Order2",
std::function(
[](const double& dt, const double& gamma, const std::vector<TinyVector<3>>& lambda_vector,
const double& eps, const size_t& SpaceOrder, const size_t& TimeOrder,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho_u,
const std::shared_ptr<const DiscreteFunctionVariant>& F_E,
const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>&
bc_descriptor_list) -> std::tuple<std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>> {
return eulerKineticSolverMultiDOrder2(dt, gamma, lambda_vector, eps, SpaceOrder,
TimeOrder, F_rho, F_rho_u, F_E,
bc_descriptor_list);
}
));
this->_addBuiltinFunction("euler_kinetic_first_order_FV", this->_addBuiltinFunction("euler_kinetic_first_order_FV",
std::function( std::function(
......
...@@ -22,6 +22,7 @@ add_library( ...@@ -22,6 +22,7 @@ add_library(
EulerKineticSolverMoodFD.cpp EulerKineticSolverMoodFD.cpp
EulerKineticSolverMoodFV.cpp EulerKineticSolverMoodFV.cpp
EulerKineticSolverMultiD.cpp EulerKineticSolverMultiD.cpp
EulerKineticSolverMultiDOrder2.cpp
EulerKineticSolverThirdOrderMoodFV.cpp EulerKineticSolverThirdOrderMoodFV.cpp
EulerKineticSolverThirdOrderMoodFD.cpp EulerKineticSolverThirdOrderMoodFD.cpp
EulerKineticSolverThirdOrderFV.cpp EulerKineticSolverThirdOrderFV.cpp
......
This diff is collapsed.
#ifndef EULER_KINETIC_SOLVER_MULTID_ORDER2_HPP
#define EULER_KINETIC_SOLVER_MULTID_ORDER2_HPP
#include <language/utils/FunctionSymbolId.hpp>
#include <scheme/DiscreteFunctionVariant.hpp>
class IBoundaryConditionDescriptor;
template <size_t Dimension>
std::tuple<std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>,
std::shared_ptr<const DiscreteFunctionVariant>>
eulerKineticSolverMultiDOrder2(
const double& dt,
const double& gamma,
const std::vector<TinyVector<Dimension>>& lambda_vector,
const double& eps,
const size_t& SpaceOrder,
const size_t& TimeOrder,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho_u,
const std::shared_ptr<const DiscreteFunctionVariant>& F_rho_E,
const std::vector<std::shared_ptr<const IBoundaryConditionDescriptor>>& bc_descriptor_list);
#endif // EULER_KINETIC_SOLVER_MULTID_ORDER2_HPP
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment