Neko
0.9.0
A portable framework for high-order spectral element flow simulations
|
Implements the logic to compute the time coefficients for the advection and diffusion operators in a transport equation. More...
Public Member Functions | |
procedure, pass(this) | init => time_scheme_controller_init |
Constructor. More... | |
procedure, pass(this) | free => time_scheme_controller_free |
Destructor. More... | |
procedure, pass(this) | set_coeffs => time_scheme_controller_set_coeffs |
Set the time coefficients. More... | |
Public Attributes | |
type(ext_time_scheme_t) | ext |
type(ab_time_scheme_t) | ab |
type(bdf_time_scheme_t) | bdf |
real(kind=rp), dimension(4) | advection_coeffs = 0 |
Time coefficients for the advection operator. More... | |
real(kind=rp), dimension(4) | diffusion_coeffs = 0 |
Time coefficients for the diffusion operator. More... | |
integer | ndiff = 0 |
Controls the actual order of the diffusion scheme, e.g. 1 at the first time-step. More... | |
integer | nadv = 0 |
Controls the actual order of the advection scheme, e.g. 1 at the first time-step. More... | |
integer | advection_time_order = 3 |
Order of the advection scheme. More... | |
integer | diffusion_time_order |
Order of the diffusion scheme. More... | |
type(c_ptr) | advection_coeffs_d = C_NULL_PTR |
Device pointer for advection_coeffs More... | |
type(c_ptr) | diffusion_coeffs_d = C_NULL_PTR |
Device pointer for diffusion_coeffs More... | |
Uses the BDF scheme for the diffusion, where as the term for advection the scheme depends on the orders of the BDF and advection schemes.
nadv
and ndiff
, which are initialized to 0, hold the current order of the respective scheme. Definition at line 71 of file time_scheme_controller.f90.
procedure, pass(this) time_scheme_controller::time_scheme_controller_t::free |
Definition at line 99 of file time_scheme_controller.f90.
procedure, pass(this) time_scheme_controller::time_scheme_controller_t::init |
Definition at line 97 of file time_scheme_controller.f90.
procedure, pass(this) time_scheme_controller::time_scheme_controller_t::set_coeffs |
Definition at line 101 of file time_scheme_controller.f90.
type(ab_time_scheme_t) time_scheme_controller::time_scheme_controller_t::ab |
Definition at line 73 of file time_scheme_controller.f90.
real(kind=rp), dimension(4) time_scheme_controller::time_scheme_controller_t::advection_coeffs = 0 |
Definition at line 77 of file time_scheme_controller.f90.
type(c_ptr) time_scheme_controller::time_scheme_controller_t::advection_coeffs_d = C_NULL_PTR |
Definition at line 91 of file time_scheme_controller.f90.
integer time_scheme_controller::time_scheme_controller_t::advection_time_order = 3 |
Definition at line 87 of file time_scheme_controller.f90.
type(bdf_time_scheme_t) time_scheme_controller::time_scheme_controller_t::bdf |
Definition at line 74 of file time_scheme_controller.f90.
real(kind=rp), dimension(4) time_scheme_controller::time_scheme_controller_t::diffusion_coeffs = 0 |
Definition at line 79 of file time_scheme_controller.f90.
type(c_ptr) time_scheme_controller::time_scheme_controller_t::diffusion_coeffs_d = C_NULL_PTR |
Definition at line 93 of file time_scheme_controller.f90.
integer time_scheme_controller::time_scheme_controller_t::diffusion_time_order |
Definition at line 89 of file time_scheme_controller.f90.
type(ext_time_scheme_t) time_scheme_controller::time_scheme_controller_t::ext |
Definition at line 72 of file time_scheme_controller.f90.
integer time_scheme_controller::time_scheme_controller_t::nadv = 0 |
Definition at line 85 of file time_scheme_controller.f90.
integer time_scheme_controller::time_scheme_controller_t::ndiff = 0 |
Definition at line 82 of file time_scheme_controller.f90.