|
Neko 1.99.2
A portable framework for high-order spectral element flow simulations
|
This source term adds the centrifugal force. More...


Public Member Functions | |
| procedure, pass(this) | init (this, json, fields, coef, variable_name) |
| The common constructor using a JSON object. | |
| procedure, pass(this) | init_from_compenents (this, fields, omega, ref_point, coef, start_time, end_time) |
| The costrucructor from type components. | |
| procedure, pass(this) | free (this) |
| Destructor. | |
| procedure, pass(this) | compute_ (this, time) |
Computes the source term and adds the result to fields. | |
| procedure, pass(this) | init_base (this, fields, coef, start_time, end_time) |
| Constructor for the source_term_t (base) type. | |
| procedure, pass(this) | free_base (this) |
| Destructor for the source_term_t (base) type. | |
| procedure, pass(this) | compute (this, time) |
Executes compute_ based on time conditions. | |
| procedure(source_term_init), deferred, pass | init (this, json, fields, coef, variable_name) |
| The common constructor using a JSON object. | |
| procedure(source_term_free), deferred, pass | free (this) |
| Destructor. | |
| procedure(source_term_compute), deferred, pass | compute_ (this, time) |
Computes the source term and adds the result to fields. | |
Public Attributes | |
| real(kind=rp), dimension(3) | omega |
| The rotation vector. | |
| real(kind=rp), dimension(3) | ref_point |
| The reference point. | |
| type(field_list_t) | fields |
| The fields to be updated with the source term values. | |
| type(coef_t), pointer | coef => null() |
| Coefficients for the SEM. | |
| real(kind=rp) | start_time = 0.0_rp |
| Start time for adding the source term. | |
| real(kind=rp) | end_time = huge(0.0_rp) |
| End time for adding the source term. | |
This forcing can be used to perform simulation in a rotating reference frame and adds a source term in the form \( - \Omega \times (\Omega \times r) \), where \( \Omega \) is the rotation vector and \( r \) is the position relative to the reference point, which is any point lying on the rotation axis. To perform simulation in the rotating reference frame one needs to use Coriolis source term as well, taking care of a consistent definition of \( \Omega \).
Definition at line 62 of file centrifugal_source_term.f90.
|
inherited |
| time | Time state. |
Definition at line 59 of file source_term.f90.
| procedure, pass(this) centrifugal_source_term::centrifugal_source_term_t::compute_ | ( | class(centrifugal_source_term_t), intent(inout) | this, |
| type(time_state_t), intent(in) | time | ||
| ) |
| time | The time state. |
Definition at line 76 of file centrifugal_source_term.f90.
|
pure virtualinherited |
Definition at line 65 of file source_term.f90.
| procedure, pass(this) centrifugal_source_term::centrifugal_source_term_t::free | ( | class(centrifugal_source_term_t), intent(inout) | this | ) |
Definition at line 74 of file centrifugal_source_term.f90.
|
pure virtualinherited |
Definition at line 63 of file source_term.f90.
|
inherited |
Definition at line 57 of file source_term.f90.
| procedure, pass(this) centrifugal_source_term::centrifugal_source_term_t::init | ( | class(centrifugal_source_term_t), intent(inout) | this, |
| type(json_file), intent(inout) | json, | ||
| type(field_list_t), intent(in), target | fields, | ||
| type(coef_t), intent(in), target | coef, | ||
| character(len=*), intent(in) | variable_name | ||
| ) |
| json | The JSON object for the source. |
| fields | A list of fields for adding the source values. |
| coef | The SEM coeffs. |
| variable_name | The name of the variable for this source term. |
Definition at line 69 of file centrifugal_source_term.f90.
|
pure virtualinherited |
Definition at line 61 of file source_term.f90.
|
inherited |
| fields | A list of pointers to fields to be updated by the source term. |
| coef | SEM coefs. |
| start_time | When to start adding the source term. |
| end_time | When to stop adding the source term. |
Definition at line 55 of file source_term.f90.
| procedure, pass(this) centrifugal_source_term::centrifugal_source_term_t::init_from_compenents | ( | class(centrifugal_source_term_t), intent(inout) | this, |
| class(field_list_t), intent(in), target | fields, | ||
| real(kind=rp), dimension(3), intent(in) | omega, | ||
| real(kind=rp), dimension(3), intent(in) | ref_point, | ||
| type(coef_t) | coef, | ||
| real(kind=rp), intent(in) | start_time, | ||
| real(kind=rp), intent(in) | end_time | ||
| ) |
| fields | A list of fields for adding the source values. |
| omega | The rotation vector. |
| ref_point | The reference point. |
| coef | The SEM coeffs. |
| start_time | When to start adding the source term. |
| end_time | When to stop adding the source term. |
Definition at line 71 of file centrifugal_source_term.f90.
Definition at line 48 of file source_term.f90.
Definition at line 52 of file source_term.f90.
|
inherited |
Definition at line 46 of file source_term.f90.
Definition at line 64 of file centrifugal_source_term.f90.
Definition at line 66 of file centrifugal_source_term.f90.
Definition at line 50 of file source_term.f90.