Neko
0.9.0
A portable framework for high-order spectral element flow simulations
|
A source-term for the fluid, with procedure pointers pointing to the actual implementation in the user file. More...
Public Member Functions | |
procedure, pass(this) | init => fluid_user_source_term_init |
Constructor from JSON (will throw!). More... | |
procedure, pass(this) | init_from_components => fluid_user_source_term_init_from_components |
Constructor from components. More... | |
procedure, pass(this) | free => fluid_user_source_term_free |
Destructor. More... | |
procedure, pass(this) | compute_ => fluid_user_source_term_compute |
Computes the source term and adds the result to fields . More... | |
procedure, pass(this) | init_base => source_term_init_base |
Constructor for the source_term_t (base) type. More... | |
procedure, pass(this) | free_base => source_term_free_base |
Destructor for the source_term_t (base) type. More... | |
procedure, pass(this) | compute => source_term_compute_wrapper |
Executes compute_ based on time conditions. More... | |
Public Attributes | |
type(dofmap_t), pointer | dm |
Pointer to the dofmap of the right-hand-side fields. More... | |
real(kind=rp), dimension(:, :, :, :), allocatable | u |
x-component of source term. More... | |
real(kind=rp), dimension(:, :, :, :), allocatable | v |
y-component of source term. More... | |
real(kind=rp), dimension(:, :, :, :), allocatable | w |
z-component of source term. More... | |
type(c_ptr) | u_d = C_NULL_PTR |
Device pointer for u . More... | |
type(c_ptr) | v_d = C_NULL_PTR |
Device pointer for v . More... | |
type(c_ptr) | w_d = C_NULL_PTR |
Device pointer for w . More... | |
procedure(fluid_source_compute_pointwise), pointer, nopass | compute_pw_ => null() |
Compute the source term for a single point. More... | |
procedure(fluid_source_compute_vector), pointer, nopass | compute_vector_ => null() |
Compute the source term for the entire boundary. More... | |
type(field_list_t) | fields |
The fields to be updated with the source term values. More... | |
type(coef_t), pointer | coef => null() |
Coefficients for the SEM. More... | |
real(kind=rp) | start_time = 0.0_rp |
Start time for adding the source term. More... | |
real(kind=rp) | end_time = huge(0.0_rp) |
End time for adding the source term. More... | |
The user source term can be applied either pointiwse or acting on the whole array in a single call, which is referred to as "vector" application.
Definition at line 60 of file fluid_user_source_term.f90.
|
inherited |
Definition at line 58 of file source_term.f90.
procedure, pass(this) fluid_user_source_term::fluid_user_source_term_t::compute_ |
Definition at line 91 of file fluid_user_source_term.f90.
procedure, pass(this) fluid_user_source_term::fluid_user_source_term_t::free |
Definition at line 89 of file fluid_user_source_term.f90.
|
inherited |
Definition at line 56 of file source_term.f90.
procedure, pass(this) fluid_user_source_term::fluid_user_source_term_t::init |
Definition at line 84 of file fluid_user_source_term.f90.
|
inherited |
Definition at line 54 of file source_term.f90.
procedure, pass(this) fluid_user_source_term::fluid_user_source_term_t::init_from_components |
Definition at line 86 of file fluid_user_source_term.f90.
|
inherited |
Definition at line 47 of file source_term.f90.
procedure(fluid_source_compute_pointwise), pointer, nopass fluid_user_source_term::fluid_user_source_term_t::compute_pw_ => null() |
Definition at line 77 of file fluid_user_source_term.f90.
procedure(fluid_source_compute_vector), pointer, nopass fluid_user_source_term::fluid_user_source_term_t::compute_vector_ => null() |
Definition at line 80 of file fluid_user_source_term.f90.
type(dofmap_t), pointer fluid_user_source_term::fluid_user_source_term_t::dm |
Definition at line 62 of file fluid_user_source_term.f90.
|
inherited |
Definition at line 51 of file source_term.f90.
|
inherited |
Definition at line 45 of file source_term.f90.
|
inherited |
Definition at line 49 of file source_term.f90.
real(kind=rp), dimension(:, :, :, :), allocatable fluid_user_source_term::fluid_user_source_term_t::u |
Definition at line 64 of file fluid_user_source_term.f90.
type(c_ptr) fluid_user_source_term::fluid_user_source_term_t::u_d = C_NULL_PTR |
Definition at line 71 of file fluid_user_source_term.f90.
real(kind=rp), dimension(:, :, :, :), allocatable fluid_user_source_term::fluid_user_source_term_t::v |
Definition at line 66 of file fluid_user_source_term.f90.
type(c_ptr) fluid_user_source_term::fluid_user_source_term_t::v_d = C_NULL_PTR |
Definition at line 73 of file fluid_user_source_term.f90.
real(kind=rp), dimension(:, :, :, :), allocatable fluid_user_source_term::fluid_user_source_term_t::w |
Definition at line 68 of file fluid_user_source_term.f90.
type(c_ptr) fluid_user_source_term::fluid_user_source_term_t::w_d = C_NULL_PTR |
Definition at line 75 of file fluid_user_source_term.f90.