56 module subroutine advection_factory(object, json, coef, ulag, vlag, wlag, &
58 class(advection_t),
allocatable,
intent(inout) :: object
59 type(json_file),
intent(inout) :: json
60 type(coef_t),
intent(inout),
target :: coef
61 type(field_series_t),
intent(in),
target :: ulag, vlag, wlag
62 real(kind=rp),
intent(in),
target :: dtlag(10)
63 real(kind=rp),
intent(in),
target :: tlag(10)
64 type(time_scheme_controller_t),
intent(in),
target :: time_scheme
65 type(field_series_t),
target,
optional :: slag
67 logical :: dealias, oifs
68 real(kind=rp) :: ctarget
72 call json_get(json,
'case.numerics.dealias', dealias)
73 call json_get(json,
'case.numerics.polynomial_order', order)
77 lxd, ( 3 * (order + 1) ) / 2)
82 if (
allocated(object))
then
97 select type (adv => object)
99 call adv%init(lxd, coef)
103 if (
present(slag))
then
104 call adv%init(lxd, coef, ctarget, ulag, vlag, wlag, &
107 call adv%init(lxd, coef, ctarget, ulag, vlag, wlag, &
112 end subroutine advection_factory
115 end 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.
Type encapsulating advection routines with no dealiasing applied.