Shamrock 2025.10.0
Astrophysical Code
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
shammodels::zeus::modules::SourceStep< Tvec, TgridVec > Class Template Reference
+ Collaboration diagram for shammodels::zeus::modules::SourceStep< Tvec, TgridVec >:

Public Types

using Tscal = shambase::VecComponent< Tvec >
 
using Tgridscal = shambase::VecComponent< TgridVec >
 
using Config = SolverConfig< Tvec, TgridVec >
 
using Storage = SolverStorage< Tvec, TgridVec, u64 >
 

Public Member Functions

 SourceStep (ShamrockCtx &context, Config &solver_config, Storage &storage)
 
void compute_forces ()
 compute general forces (pressure + external and store them into SolverStorage::forces)
 
void apply_force (Tscal dt)
 apply the generalized forces
 
void compute_AV ()
 Compute the values of the artificial viscosity terms ([4] equations 33,34)
 
void apply_AV (Tscal dt)
 
void compute_div_v ()
 
void update_eint_eos (Tscal dt)
 

Public Attributes

ShamrockCtxcontext
 
Configsolver_config
 
Storagestorage
 

Static Public Attributes

static constexpr u32 dim = shambase::VectorProperties<Tvec>::dimension
 

Detailed Description

template<class Tvec, class TgridVec>
class shammodels::zeus::modules::SourceStep< Tvec, TgridVec >

Definition at line 26 of file SourceStep.hpp.

Member Typedef Documentation

◆ Config

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::Config = SolverConfig<Tvec, TgridVec>

Definition at line 32 of file SourceStep.hpp.

◆ Storage

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::Storage = SolverStorage<Tvec, TgridVec, u64>

Definition at line 33 of file SourceStep.hpp.

◆ Tgridscal

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::Tgridscal = shambase::VecComponent<TgridVec>

Definition at line 29 of file SourceStep.hpp.

◆ Tscal

template<class Tvec , class TgridVec >
using shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::Tscal = shambase::VecComponent<Tvec>

Definition at line 28 of file SourceStep.hpp.

Constructor & Destructor Documentation

◆ SourceStep()

template<class Tvec , class TgridVec >
shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::SourceStep ( ShamrockCtx context,
Config solver_config,
Storage storage 
)
inline

Definition at line 39 of file SourceStep.hpp.

Member Function Documentation

◆ apply_AV()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::apply_AV ( Tscal  dt)

Definition at line 349 of file SourceStep.cpp.

◆ apply_force()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::apply_force ( Tscal  dt)

apply the generalized forces

\[ \frac{u_i^{n+1} - u_i^{n}}{\Delta t} = \underbrace{-\frac{\partial_i p^n}{\rho^n} + f_{\text{ext},i}}_{ f_{\rm gen} } \]

Definition at line 205 of file SourceStep.cpp.

+ Here is the call graph for this function:

◆ compute_AV()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::compute_AV ( )

Compute the values of the artificial viscosity terms ([4] equations 33,34)

\begin{eqnarray*} q^x_{i,j,k} &=& C^{\rm AV} \rho_{i,j} (v^x_{i+1,j,k} - v^x_{i,j,k}) \\ q^y_{i,j,k} &=& C^{\rm AV} \rho_{i,j} (v^y_{i,j+1,k} - v^y_{i,j,k}) \\ q^z_{i,j,k} &=& C^{\rm AV} \rho_{i,j} (v^z_{i,j,k+1} - v^z_{i,j,k}) \end{eqnarray*}

Definition at line 251 of file SourceStep.cpp.

+ Here is the call graph for this function:

◆ compute_div_v()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::compute_div_v ( )

Definition at line 546 of file SourceStep.cpp.

◆ compute_forces()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::compute_forces ( )

compute general forces (pressure + external and store them into SolverStorage::forces)

\[ \frac{u_i^{n+1} - u_i^{n}}{\Delta t} = \underbrace{-\frac{\partial_i p^n}{\rho^n} + f_{\text{ext},i}}_{ f_{\rm gen} } \]

Definition at line 25 of file SourceStep.cpp.

+ Here is the call graph for this function:

◆ update_eint_eos()

template<class Tvec , class TgridVec >
void shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::update_eint_eos ( Tscal  dt)

Definition at line 634 of file SourceStep.cpp.

Member Data Documentation

◆ context

template<class Tvec , class TgridVec >
ShamrockCtx& shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::context

Definition at line 35 of file SourceStep.hpp.

◆ dim

template<class Tvec , class TgridVec >
constexpr u32 shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::dim = shambase::VectorProperties<Tvec>::dimension
staticconstexpr

Definition at line 30 of file SourceStep.hpp.

◆ solver_config

template<class Tvec , class TgridVec >
Config& shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::solver_config

Definition at line 36 of file SourceStep.hpp.

◆ storage

template<class Tvec , class TgridVec >
Storage& shammodels::zeus::modules::SourceStep< Tvec, TgridVec >::storage

Definition at line 37 of file SourceStep.hpp.


The documentation for this class was generated from the following files: