src.dycore.physics.gas_dynamics.recovery#
Functions
  | 
Reconstruct the limited slopes at the cell interfaces.  | 
  | 
Get advected (conservative) quantities at the left and right of the cell interfaces.  | 
  | 
Applies the limiter type specified in the initial conditions to recovery the slope.  | 
  | 
Reconstruct the piecewise linear slopes in the cells from the piecewise constants in the cell and its neighbours.  | 
- src.dycore.physics.gas_dynamics.recovery.do(Sol, flux, lmbda, ud, th, elem, split_step, tag)#
 Reconstruct the limited slopes at the cell interfaces.
Parameters#
- Sol
management.variable.Vars Solution data container on cell centers.
- flux
management.variable.States Flux data container on cell interfaces.
- lmbdafloat
 \(\frac{dt}{dx}\), where \(dx\) is the grid-size in the direction of the substep.
- ud
inputs.user_data.UserDataInit Class container for the initial condition.
- th
physics.gas_dynamics.thermodynamic.init Class container for the thermodynamical constants.
- elem
discretization.kgrid.ElemSpaceDiscr Class container for the cell-grid.
- split_stepint
 Tracks the substep in the Strang-splitting.
- tagNone or rk
 Default is None which uses a second-order Strang-splitting. rk toggles a first-order Runge-Kutta update for the advection scheme.
Returns#
management.variable.States,management.variable.StatesLefts, Rights are containers for the advected quantities at to the left and the right of the cell interfaces.
- Sol
 
- src.dycore.physics.gas_dynamics.recovery.slopes(Sol, Diffs, ud, elem)#
 Reconstruct the piecewise linear slopes in the cells from the piecewise constants in the cell and its neighbours.
Parameters#
- Sol
management.variable.Vars Solution data container
- Diffs
management.variable.States Data container for the difference in the quantities between adjacent cells, (right - left).
- ud
inputs.user_data.UserDataInit Data container for the initial conditions
- elem
discretization.kgrid.ElemSpaceDiscr Data container for the cell grid.
Returns#
management.variable.CharactersReconstructed piecewise linear slopes in the cell.
- Sol
 
- src.dycore.physics.gas_dynamics.recovery.limiters(limiter_type, al, ar)#
 Applies the limiter type specified in the initial conditions to recovery the slope.
Parameters#
- limiter_type
management.enumerator.LimiterType LimiterType list
- al
management.variable.States Left indices of the Diffs array for the respective quantities.
- ar
management.variable.States Right indices of the Diffs array for the respective quantities.
Returns#
management.variable.StatesThe reconstructed slope in the cell
Attention#
For now, only the limiter type NONE is supported. This takes \(\frac{(al + ar)}{2}\).
- limiter_type
 
- src.dycore.physics.gas_dynamics.recovery.get_conservatives(U, ud, th)#
 Get advected (conservative) quantities at the left and right of the cell interfaces.
Parameters#
- U
management.variable.States Lefts and Rights corresponding to the values at the cell interfaces.
- ud
inputs.user_data.UserDataInit Data container for the initial conditions
- th
physics.gas_dynamics.thermodynamic.init Class container for the thermodynamical constants.
- U