30 using Tscal = shambase::VecComponent<Tvec>;
32 using Kernel = SPHKernel<Tscal>;
42 : context(context), solver_config(solver_config), storage(storage) {}
51 using None =
typename Cfg_AV::None;
52 using Constant =
typename Cfg_AV::Constant;
53 using VaryingMM97 =
typename Cfg_AV::VaryingMM97;
54 using VaryingCD10 =
typename Cfg_AV::VaryingCD10;
55 using ConstantDisc =
typename Cfg_AV::ConstantDisc;
57 void update_derivs_noAV(None cfg);
58 void update_derivs_constantAV(Constant cfg);
59 void update_derivs_mm97(VaryingMM97 cfg);
60 void update_derivs_cd10(VaryingCD10 cfg);
61 void update_derivs_disc_visco(ConstantDisc cfg);
63 using Cfg_MHD =
typename Config::MHDConfig;
65 using NoneMHD =
typename Cfg_MHD::None;
66 using IdealMHD =
typename Cfg_MHD::IdealMHD_constrained_hyper_para;
67 using NonIdealMHD =
typename Cfg_MHD::NonIdealMHD;
69 void update_derivs_MHD(IdealMHD cfg);
T & get_check_ref(const std::unique_ptr< T > &ptr, SourceLocation loc=SourceLocation())
Takes a std::unique_ptr and returns a reference to the object it holds. It throws a std::runtime_erro...