|
Neko 0.9.1
A portable framework for high-order spectral element flow simulations
|
Bouyancy source term accroding to the Boussinesq approximation. More...


Public Member Functions | |
| procedure, pass(this) | init (this, json, fields, coef) |
| The common constructor using a JSON object. | |
| procedure, pass(this) | init_from_compenents (this, fields, scalar_name, ref_value, g, beta, coef, start_time, end_time) |
| The constructor from type components. | |
| procedure, pass(this) | free (this) |
| Destructor. | |
| procedure, pass(this) | compute_ (this, t, tstep) |
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, t, tstep) |
Executes compute_ based on time conditions. | |
| procedure(source_term_init), deferred, pass | init (this, json, fields, coef) |
| The common constructor using a JSON object. | |
| procedure(source_term_free), deferred, pass | free (this) |
| Destructor. | |
| procedure(source_term_compute), deferred, pass | compute_ (this, t, tstep) |
Computes the source term and adds the result to fields. | |
Public Attributes | |
| type(field_t), pointer | s => null() |
| The scalar field used to drive the source term, typically temperature. | |
| real(kind=rp) | ref_value = 0 |
| The reference value of the scalar field. | |
| real(kind=rp), dimension(3) | g |
| Gravity vector. | |
| real(kind=rp) | beta |
| Thermal expantion coefficient. | |
| 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. | |
Called "boussinesq" in the JSON. Controlled by the following parameters:
1/ref_value. Definition at line 59 of file boussinesq_source_term.f90.
|
inherited |
| t | Time value. |
| tstep | Current time step. |
Definition at line 58 of file source_term.f90.
| procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::compute_ | ( | class(boussinesq_source_term_t), intent(inout) | this, |
| real(kind=rp), intent(in) | t, | ||
| integer, intent(in) | tstep | ||
| ) |
| t | The time value. |
| tstep | The current time-step. |
Definition at line 77 of file boussinesq_source_term.f90.
|
pure virtualinherited |
Definition at line 64 of file source_term.f90.
| procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::free | ( | class(boussinesq_source_term_t), intent(inout) | this | ) |
Definition at line 75 of file boussinesq_source_term.f90.
|
pure virtualinherited |
Definition at line 62 of file source_term.f90.
|
inherited |
Definition at line 56 of file source_term.f90.
| procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::init | ( | class(boussinesq_source_term_t), intent(inout) | this, |
| type(json_file), intent(inout) | json, | ||
| type(field_list_t), intent(inout), target | fields, | ||
| type(coef_t), intent(inout), target | coef | ||
| ) |
| json | The JSON object for the source. |
| fields | A list of fields for adding the source values. |
| coef | The SEM coeffs. |
Definition at line 70 of file boussinesq_source_term.f90.
|
pure virtualinherited |
Definition at line 60 of file source_term.f90.
|
inherited |
| json | JSON object initializing the source term. |
| fields | The list of fields updated by the source term. |
| coef | The SEM coefficients. Constructor for the source_term_t (base) type. |
| 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 54 of file source_term.f90.
| procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::init_from_compenents | ( | class(boussinesq_source_term_t), intent(inout) | this, |
| class(field_list_t), intent(inout), target | fields, | ||
| character(len=*), intent(in) | scalar_name, | ||
| real(kind=rp), intent(in) | ref_value, | ||
| real(kind=rp), dimension(3), intent(in) | g, | ||
| real(kind=rp), intent(in) | beta, | ||
| 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. |
| scalar_name | The name of the scalar field driving the source. |
| ref_value | The reference value of the scalar field. |
| g | The gravity vector. |
| beta | The thermal expansion coefficient. |
| 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 72 of file boussinesq_source_term.f90.
Definition at line 67 of file boussinesq_source_term.f90.
Definition at line 47 of file source_term.f90.
Definition at line 51 of file source_term.f90.
|
inherited |
Definition at line 45 of file source_term.f90.
Definition at line 65 of file boussinesq_source_term.f90.
Definition at line 63 of file boussinesq_source_term.f90.
Definition at line 61 of file boussinesq_source_term.f90.
Definition at line 49 of file source_term.f90.