60 module subroutine advection_factory(object, json, coef, ulag, vlag, wlag, &
62 class(advection_t),
allocatable,
intent(inout) :: object
63 type(json_file),
intent(inout) :: json
64 type(coef_t),
intent(inout),
target :: coef
65 type(field_series_t),
intent(in),
target :: ulag, vlag, wlag
66 real(kind=rp),
intent(in),
target :: dtlag(10)
67 real(kind=rp),
intent(in),
target :: tlag(10)
68 type(time_scheme_controller_t),
intent(in),
target :: time_scheme
69 logical,
optional,
intent(in) :: use_dummy
70 type(field_series_t),
target,
optional,
intent(in) :: slag
72 logical :: dealias, oifs
73 real(kind=rp) :: ctarget
77 if (
allocated(object))
then
82 if (
present(use_dummy))
then
90 call json_get(json,
'dealias', dealias)
95 lxd, ( 3 * (order + 1) ) / 2)
110 select type (adv => object)
112 call adv%init(lxd, coef)
116 if (
present(slag))
then
117 call adv%init(lxd, coef, ctarget, ulag, vlag, wlag, &
120 call adv%init(lxd, coef, ctarget, ulag, vlag, wlag, &
125 end subroutine advection_factory
128end submodule advection_fctry
Retrieves a parameter by name or assigns a provided default value. In the latter case also adds the m...
Retrieves a parameter by name or throws an error.
Subroutines to add advection terms to the RHS of a transport equation.
Subroutines to add advection terms to the RHS of a transport equation.
Subroutines to add advection terms to the RHS of a transport equation.
Subroutines to add advection terms to the RHS of a transport equation.
Utilities for retrieving parameters from the case files.
Base class for time integration schemes.
Type encapsulating advection routines with dealiasing.
A zero-valued advection that can be used to kill the advection term.
Type encapsulating advection routines with no dealiasing applied.