Neko  0.8.1
A portable framework for high-order spectral element flow simulations
boussinesq_source_term::boussinesq_source_term_t Type Reference

Bouyancy source term accroding to the Boussinesq approximation. More...

Inheritance diagram for boussinesq_source_term::boussinesq_source_term_t:
Collaboration diagram for boussinesq_source_term::boussinesq_source_term_t:

Public Member Functions

procedure, pass(this) init => boussinesq_source_term_init_from_json
 The common constructor using a JSON object. More...
 
procedure, pass(this) init_from_compenents => boussinesq_source_term_init_from_components
 The constructor from type components. More...
 
procedure, pass(this) free => boussinesq_source_term_free
 Destructor. More...
 
procedure, pass(this) compute_ => boussinesq_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(field_t), pointer s => null()
 The scalar field used to drive the source term, typically temperature. More...
 
real(kind=rp) ref_value = 0
 The reference value of the scalar field. More...
 
real(kind=rp), dimension(3) g
 Gravity vector. More...
 
real(kind=rp) beta
 Thermal expantion coefficient. More...
 
type(field_list_tfields
 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...
 

Detailed Description

Bouyancy source term accroding to the Boussinesq approximation.

Called "boussinesq" in the JSON. Controlled by the following parameters:

  • "scalar_field": The name of the scalar that drives the source term, defaults to "s".
  • "ref_value": The reference value of the scalar.
  • "g": The gravity vector.
  • "beta": The the thermal expansion coefficeint, defaults to 1/ref_value.

Definition at line 58 of file boussinesq_source_term.f90.

Member Function/Subroutine Documentation

◆ compute()

procedure, pass(this) source_term::source_term_t::compute
inherited

Executes compute_ based on time conditions.

Definition at line 59 of file source_term.f90.

◆ compute_()

procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::compute_

Computes the source term and adds the result to fields.

Definition at line 76 of file boussinesq_source_term.f90.

◆ free()

procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::free

Destructor.

Definition at line 74 of file boussinesq_source_term.f90.

◆ free_base()

procedure, pass(this) source_term::source_term_t::free_base
inherited

Destructor for the source_term_t (base) type.

Definition at line 57 of file source_term.f90.

◆ init()

procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::init

The common constructor using a JSON object.

Definition at line 69 of file boussinesq_source_term.f90.

◆ init_base()

procedure, pass(this) source_term::source_term_t::init_base
inherited

Constructor for the source_term_t (base) type.

Definition at line 55 of file source_term.f90.

◆ init_from_compenents()

procedure, pass(this) boussinesq_source_term::boussinesq_source_term_t::init_from_compenents

The constructor from type components.

Definition at line 71 of file boussinesq_source_term.f90.

Member Data Documentation

◆ beta

real(kind=rp) boussinesq_source_term::boussinesq_source_term_t::beta

Thermal expantion coefficient.

Definition at line 66 of file boussinesq_source_term.f90.

◆ coef

type(coef_t), pointer source_term::source_term_t::coef => null()
inherited

Coefficients for the SEM.

Definition at line 48 of file source_term.f90.

◆ end_time

real(kind=rp) source_term::source_term_t::end_time = huge(0.0_rp)
inherited

End time for adding the source term.

Definition at line 52 of file source_term.f90.

◆ fields

type(field_list_t) source_term::source_term_t::fields
inherited

The fields to be updated with the source term values.

Definition at line 46 of file source_term.f90.

◆ g

real(kind=rp), dimension(3) boussinesq_source_term::boussinesq_source_term_t::g

Gravity vector.

Definition at line 64 of file boussinesq_source_term.f90.

◆ ref_value

real(kind=rp) boussinesq_source_term::boussinesq_source_term_t::ref_value = 0

The reference value of the scalar field.

Definition at line 62 of file boussinesq_source_term.f90.

◆ s

type(field_t), pointer boussinesq_source_term::boussinesq_source_term_t::s => null()

The scalar field used to drive the source term, typically temperature.

Definition at line 60 of file boussinesq_source_term.f90.

◆ start_time

real(kind=rp) source_term::source_term_t::start_time = 0.0_rp
inherited

Start time for adding the source term.

Definition at line 50 of file source_term.f90.


The documentation for this type was generated from the following file: