41#ifdef REMORA_USE_PARTICLES
77 const Real
eps = Real(1.e-6) *
dt[
lev];
80 "REMORA::timeStep: level " + std::to_string(
lev) +
" stepped outside the time "
81 "interval of level " + std::to_string(
lev-1));
85 amrex::Print() <<
"[Level " <<
lev <<
" step " <<
istep[
lev]+1 <<
"] ";
86 amrex::Print() <<
"ADVANCE from time = " <<
t_old[
lev] <<
" to " <<
t_new[
lev]
87 <<
" with dt = " <<
dt[
lev] << std::endl;
105 amrex::Print() <<
"[Level " <<
lev <<
" step " <<
istep[
lev] <<
"] ";
106 amrex::Print() <<
"Advanced " <<
CountCells(
lev) <<
" cells" << std::endl;
mf_h setVal(geomdata.ProbHi(2))
int zvel_bc() const noexcept
amrex::Vector< amrex::MultiFab * > cons_new
multilevel data container for current step's scalar data: temperature, salinity, passive tracer
void check_mask_consistency()
Check every level pair's masks against each other, and every level's mask values, reporting according...
amrex::Vector< amrex::MultiFab * > zvel_new
multilevel data container for current step's z velocities (largely unused; W stored separately)
void reflux_to(int lev)
apply the lev/lev+1 tracer flux correction onto lev
amrex::Vector< amrex::MultiFab * > xvel_old
multilevel data container for last step's x velocities (u in ROMS)
amrex::Vector< amrex::MultiFab * > yvel_new
multilevel data container for current step's y velocities (v in ROMS)
int regrid_int
how often each level regrids the higher levels of refinement (after a level advances that many time s...
void AverageDownTo(int crse_lev)
more flexible version of AverageDown() that lets you average down across multiple levels
amrex::Vector< amrex::MultiFab * > zvel_old
multilevel data container for last step's z velocities (largely unused; W stored separately)
amrex::Vector< amrex::MultiFab * > xvel_new
multilevel data container for current step's x velocities (u in ROMS)
amrex::Vector< int > nsubsteps
How many substeps on each level?
amrex::Vector< int > istep
which step?
amrex::Vector< amrex::MultiFab * > yvel_old
multilevel data container for last step's y velocities (v in ROMS)
void Advance(int lev, amrex::Real time, amrex::Real dt_lev, int iteration, int ncycle)
advance a single level for a single time step
amrex::Vector< amrex::Real > t_new
new time at each level, in seconds since start_time
void scale_rhs_vars_inv(int lev)
Scale RHS momentum variables by cell area, needed after FillPatch to different levels.
static SolverChoice solverChoice
Container for algorithmic choices.
void FillPatchNoBC(int lev, amrex::Real time, amrex::MultiFab &mf_to_be_filled, amrex::Vector< amrex::MultiFab * > const &mfs, const int bdy_var_type=BdyVars::null, const int icomp=0, const bool fill_all=true, const bool fill_set=false, amrex::Vector< amrex::MultiFab * > const &mfs_crse_old={}, amrex::Vector< amrex::MultiFab * > const &mfs_crse_new={})
Fill a new MultiFab by copying in phi from valid region and filling ghost cells without applying boun...
void FillPatch(int lev, amrex::Real time, amrex::MultiFab &mf_to_be_filled, amrex::Vector< amrex::MultiFab * > const &mfs, const int bccomp, const int bdy_var_type=BdyVars::null, const int icomp=0, const bool fill_all=true, const bool fill_set=false, const int n_not_fill=0, const int icomp_calc=0, const amrex::Real dt=zero, const amrex::MultiFab &mf_calc=amrex::MultiFab(), amrex::Vector< amrex::MultiFab * > const &mfs_crse_old={}, amrex::Vector< amrex::MultiFab * > const &mfs_crse_new={})
Fill a new MultiFab by copying in phi from valid region and filling ghost cells.
amrex::Vector< amrex::MultiFab * > cons_old
multilevel data container for last step's scalar data: temperature, salinity, passive tracer
void timeStep(int lev, amrex::Real time, int iteration)
advance a level by dt, includes a recursive call for finer levels
amrex::Vector< amrex::Real > t_old
old time at each level, in seconds since start_time
void scale_rhs_vars(int lev)
Scale RHS momentum variables by 1/cell area, needed before FillPatch to different levels.
amrex::Vector< amrex::Real > dt
time step at each level
static constexpr int t
cons component Temp_comp
static constexpr int null
CouplingType coupling_type