Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
shammodels::sph::DustConfig< Tscal > Struct Template Reference

Classes

struct  None
struct  MonofluidTVA
struct  MonofluidComplete
struct  ConstantStoppingTimes
struct  EpsteinDrag

Public Types

using Variant = std::variant<None, MonofluidTVA, MonofluidComplete>
 Variant type to store the EOS configuration.

Public Member Functions

void set_none ()
void set_monofluid_tva (u32 nvar, bool pure_diffusion_mode=false, Tscal C_1_fluid=0.1, Tscal C_drift=1.0, Tscal cfl_density_threshold=shambase::get_epsilon< Tscal >(), bool ensure_s_j_positivity=true, bool smooth_s_positivity_limiter=false, bool dust_corrected_av=false)
void set_monofluid_complete (u32 nvar)
bool is_none ()
bool is_monofluid_tva ()
bool is_monofluid_complete ()
MonofluidTVAget_monofluid_tva ()
void mode_to_json (nlohmann::json &j) const
void mode_from_json (const nlohmann::json &j)
bool has_s_j_field ()
bool should_use_dust_av ()
bool has_epsilon_field ()
bool has_deltav_field ()
u32 get_dust_nvar ()
void drag_mode_to_json (nlohmann::json &j) const
void drag_mode_from_json (const nlohmann::json &j)
void set_drag_constant (ConstantStoppingTimes in)
void set_drag_epstein (EpsteinDrag in)
void check_config ()

Public Attributes

Variant current_mode = None{}
std::variant< None, ConstantStoppingTimes, EpsteinDragdust_drag_mode = None{}
bool ballabio_ts_limiter = false

Detailed Description

template<class Tscal>
struct shammodels::sph::DustConfig< Tscal >

Definition at line 106 of file SolverConfig.hpp.

Member Typedef Documentation

◆ Variant

template<class Tscal>
using shammodels::sph::DustConfig< Tscal >::Variant = std::variant<None, MonofluidTVA, MonofluidComplete>

Variant type to store the EOS configuration.

Definition at line 131 of file SolverConfig.hpp.

Member Function Documentation

◆ check_config()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::check_config ( )
inline

Definition at line 297 of file SolverConfig.hpp.

◆ drag_mode_from_json()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::drag_mode_from_json ( const nlohmann::json & j)
inline

Definition at line 277 of file SolverConfig.hpp.

◆ drag_mode_to_json()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::drag_mode_to_json ( nlohmann::json & j) const
inline

Definition at line 259 of file SolverConfig.hpp.

◆ get_dust_nvar()

template<class Tscal>
u32 shammodels::sph::DustConfig< Tscal >::get_dust_nvar ( )
inline

Definition at line 229 of file SolverConfig.hpp.

◆ get_monofluid_tva()

template<class Tscal>
MonofluidTVA & shammodels::sph::DustConfig< Tscal >::get_monofluid_tva ( )
inline

Definition at line 163 of file SolverConfig.hpp.

◆ has_deltav_field()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::has_deltav_field ( )
inline

Definition at line 225 of file SolverConfig.hpp.

◆ has_epsilon_field()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::has_epsilon_field ( )
inline

Definition at line 221 of file SolverConfig.hpp.

◆ has_s_j_field()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::has_s_j_field ( )
inline

Definition at line 210 of file SolverConfig.hpp.

◆ is_monofluid_complete()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::is_monofluid_complete ( )
inline

Definition at line 159 of file SolverConfig.hpp.

◆ is_monofluid_tva()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::is_monofluid_tva ( )
inline

Definition at line 158 of file SolverConfig.hpp.

◆ is_none()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::is_none ( )
inline

Definition at line 157 of file SolverConfig.hpp.

◆ mode_from_json()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::mode_from_json ( const nlohmann::json & j)
inline

Definition at line 189 of file SolverConfig.hpp.

◆ mode_to_json()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::mode_to_json ( nlohmann::json & j) const
inline

Definition at line 167 of file SolverConfig.hpp.

◆ set_drag_constant()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::set_drag_constant ( ConstantStoppingTimes in)
inline

Definition at line 293 of file SolverConfig.hpp.

◆ set_drag_epstein()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::set_drag_epstein ( EpsteinDrag in)
inline

Definition at line 295 of file SolverConfig.hpp.

◆ set_monofluid_complete()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::set_monofluid_complete ( u32 nvar)
inline

Definition at line 155 of file SolverConfig.hpp.

◆ set_monofluid_tva()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::set_monofluid_tva ( u32 nvar,
bool pure_diffusion_mode = false,
Tscal C_1_fluid = 0.1,
Tscal C_drift = 1.0,
Tscal cfl_density_threshold = shambase::get_epsilon<Tscal>(),
bool ensure_s_j_positivity = true,
bool smooth_s_positivity_limiter = false,
bool dust_corrected_av = false )
inline

Definition at line 136 of file SolverConfig.hpp.

◆ set_none()

template<class Tscal>
void shammodels::sph::DustConfig< Tscal >::set_none ( )
inline

Definition at line 135 of file SolverConfig.hpp.

◆ should_use_dust_av()

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::should_use_dust_av ( )
inline

Definition at line 214 of file SolverConfig.hpp.

Member Data Documentation

◆ ballabio_ts_limiter

template<class Tscal>
bool shammodels::sph::DustConfig< Tscal >::ballabio_ts_limiter = false

Definition at line 257 of file SolverConfig.hpp.

◆ current_mode

template<class Tscal>
Variant shammodels::sph::DustConfig< Tscal >::current_mode = None{}

Definition at line 133 of file SolverConfig.hpp.

◆ dust_drag_mode

template<class Tscal>
std::variant<None, ConstantStoppingTimes, EpsteinDrag> shammodels::sph::DustConfig< Tscal >::dust_drag_mode = None{}

Definition at line 255 of file SolverConfig.hpp.


The documentation for this struct was generated from the following file: