|
ERF
Energy Research and Forecasting: An Atmospheric Modeling Code
|
#include <ERF_MRI.H>

Public Member Functions | |
| MRISplitIntegrator ()=default | |
| MRISplitIntegrator (const T &S_data) | |
| void | initialize (const T &S_data) |
| ~MRISplitIntegrator ()=default | |
| MRISplitIntegrator (MRISplitIntegrator &&) noexcept=default | |
| MRISplitIntegrator & | operator= (MRISplitIntegrator &&other) noexcept=default |
| MRISplitIntegrator (const MRISplitIntegrator &other)=delete | |
| MRISplitIntegrator & | operator= (const MRISplitIntegrator &other)=delete |
| void | setNcompCons (int _ncomp_cons) |
| void | setAnelastic (int _anelastic) |
| void | setNoSubstepping (int _no_substepping) |
| void | setForceFirstStageSingleSubstep (int _force_stage1_single_substep) |
| void | set_slow_rhs_pre (std::function< void(T &, T &, T &, const amrex::Real, const amrex::Real, const amrex::Real, const int)> F) |
| void | set_slow_rhs_post (std::function< void(T &, T &, T &, T &, const amrex::Real, const amrex::Real, const amrex::Real, const int)> F) |
| void | set_acoustic_substepping (std::function< void(int, int, int, T &, const T &, T &, T &, const amrex::Real, const amrex::Real, const amrex::Real, const amrex::Real, const amrex::Real)> F) |
| void | set_slow_fast_timestep_ratio (const int timestep_ratio=1) |
| int | get_slow_fast_timestep_ratio () |
| void | set_no_substep (std::function< void(T &, T &, T &, amrex::Real, amrex::Real, int)> F) |
| std::function< void(T &, const T &, const amrex::Real, int)> | get_rhs () |
| amrex::Real | advance (T &S_old, T &S_new, amrex::Real time, const amrex::Real time_step) |
| void | map_data (std::function< void(T &)> Map) |
Private Member Functions | |
| void | initialize_data (const T &S_data) |
Private Attributes | |
| std::function< void(T &, const T &, const amrex::Real, const amrex::Real)> | rhs |
| rhs is the right-hand-side function the integrator will use. More... | |
| std::function< void(T &, T &, T &, const amrex::Real, const amrex::Real, const amrex::Real, const int)> | slow_rhs_pre |
| std::function< void(T &, T &, T &, T &, const amrex::Real, const amrex::Real, const amrex::Real, const int)> | slow_rhs_post |
| std::function< void(int, int, int, T &, const T &, T &, T &, const amrex::Real, const amrex::Real, const amrex::Real, const amrex::Real, const amrex::Real)> | acoustic_substepping |
| amrex::Real | timestep |
| Integrator timestep size (Real) More... | |
| int | slow_fast_timestep_ratio = 0 |
| The ratio of slow timestep size / fast timestep size (int) More... | |
| int | no_substepping |
| Should we not do acoustic substepping. More... | |
| int | anelastic |
| Should we use the anelastic integrator. More... | |
| int | ncomp_cons |
| How many components in the cell-centered MultiFab. More... | |
| int | force_stage1_single_substep |
| Do we follow the recommendation to only perform a single substep in the first RK stage. More... | |
| std::function< void(T &, T &, T &, amrex::Real, amrex::Real, int)> | no_substep |
| The no_substep function is called when we have no acoustic substepping. More... | |
| amrex::Vector< std::unique_ptr< T > > | T_store |
| T * | S_sum |
| T * | F_slow |
|
default |
|
inline |

|
default |
|
defaultnoexcept |
|
delete |
|
inline |
Referenced by ERF::advance_dycore().


|
inline |
|
inline |
Referenced by MRISplitIntegrator< T >::advance().

|
inline |
|
inlineprivate |
Referenced by MRISplitIntegrator< T >::initialize(), and MRISplitIntegrator< T >::MRISplitIntegrator().

|
inline |
|
delete |
|
defaultnoexcept |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
|
private |
Should we use the anelastic integrator.
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::setAnelastic().
|
private |
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::initialize_data().
|
private |
Do we follow the recommendation to only perform a single substep in the first RK stage.
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::setForceFirstStageSingleSubstep().
|
private |
How many components in the cell-centered MultiFab.
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::setNcompCons().
|
private |
The no_substep function is called when we have no acoustic substepping.
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::set_no_substep().
|
private |
Should we not do acoustic substepping.
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::setNoSubstepping().
|
private |
rhs is the right-hand-side function the integrator will use.
Referenced by MRISplitIntegrator< T >::get_rhs().
|
private |
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::initialize_data().
|
private |
The ratio of slow timestep size / fast timestep size (int)
Referenced by MRISplitIntegrator< T >::get_slow_fast_timestep_ratio(), and MRISplitIntegrator< T >::set_slow_fast_timestep_ratio().
|
private |
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::set_slow_rhs_post().
|
private |
Referenced by MRISplitIntegrator< T >::advance(), and MRISplitIntegrator< T >::set_slow_rhs_pre().
|
private |
Referenced by MRISplitIntegrator< T >::initialize_data(), and MRISplitIntegrator< T >::map_data().
|
private |
Integrator timestep size (Real)
Referenced by MRISplitIntegrator< T >::advance().