Neko 0.9.99
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
brinkman_source_term::brinkman_source_term_t Type Referenceabstract

A Brinkman source term. The region and strength are controlled by assigning regions types and brinkman limits to the source term. More...

Inheritance diagram for brinkman_source_term::brinkman_source_term_t:
Collaboration diagram for brinkman_source_term::brinkman_source_term_t:

Public Member Functions

procedure, pass(this), public init (this, json, fields, coef)
 The common constructor using a JSON object.
 
procedure, pass(this), public free (this)
 Destructor.
 
procedure, pass(this), public compute_ (this, t, tstep)
 Computes the source term and adds the result to fields.
 
procedure, pass(thisinit_boundary_mesh (this, json)
 Initializes the source term from a boundary mesh.
 
procedure, pass(thisinit_point_zone (this, json)
 Initializes the source term from a point zone.
 
procedure, pass(thisinit_base (this, fields, coef, start_time, end_time)
 Constructor for the source_term_t (base) type.
 
procedure, pass(thisfree_base (this)
 Destructor for the source_term_t (base) type.
 
procedure, pass(thiscompute (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_tbrinkman
 Brinkman permeability field.
 
type(field_list_tfields
 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.
 

Private Attributes

type(field_tindicator
 The value of the source term.
 

Detailed Description

Definition at line 64 of file brinkman_source_term.f90.

Member Function/Subroutine Documentation

◆ compute()

procedure, pass(this) source_term::source_term_t::compute ( class(source_term_t), intent(inout this,
real(kind=rp), intent(in t,
integer, intent(in tstep 
)
inherited
Parameters
tTime value.
tstepCurrent time step.

Definition at line 58 of file source_term.f90.

◆ compute_() [1/2]

procedure, pass(this), public brinkman_source_term::brinkman_source_term_t::compute_ ( class(brinkman_source_term_t), intent(inout this,
real(kind=rp), intent(in t,
integer, intent(in tstep 
)
Parameters
tThe time value.
tstepThe current time-step.

Definition at line 78 of file brinkman_source_term.f90.

◆ compute_() [2/2]

procedure(source_term_compute), deferred, pass source_term::source_term_t::compute_ ( class(source_term_t), intent(inout this,
real(kind=rp), intent(in t,
integer, intent(in tstep 
)
pure virtualinherited

Definition at line 64 of file source_term.f90.

◆ free() [1/2]

procedure, pass(this), public brinkman_source_term::brinkman_source_term_t::free ( class(brinkman_source_term_t), intent(inout this)

Definition at line 76 of file brinkman_source_term.f90.

◆ free() [2/2]

procedure(source_term_free), deferred, pass source_term::source_term_t::free ( class(source_term_t), intent(inout this)
pure virtualinherited

Definition at line 62 of file source_term.f90.

◆ free_base()

procedure, pass(this) source_term::source_term_t::free_base ( class(source_term_t), intent(inout this)
inherited

Definition at line 56 of file source_term.f90.

◆ init() [1/2]

procedure, pass(this), public brinkman_source_term::brinkman_source_term_t::init ( class(brinkman_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 
)
Parameters
jsonThe JSON object for the source.
fieldsA list of fields for adding the source values.
coefThe SEM coeffs.

Definition at line 73 of file brinkman_source_term.f90.

◆ init() [2/2]

procedure(source_term_init), deferred, pass source_term::source_term_t::init ( class(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 
)
pure virtualinherited

Definition at line 60 of file source_term.f90.

◆ init_base()

procedure, pass(this) source_term::source_term_t::init_base ( class(source_term_t), intent(inout this,
type(field_list_t fields,
type(coef_t), intent(in), target  coef,
real(kind=rp), intent(in start_time,
real(kind=rp), intent(in end_time 
)
inherited
Parameters
jsonJSON object initializing the source term.
fieldsThe list of fields updated by the source term.
coefThe SEM coefficients. Constructor for the source_term_t (base) type.
fieldsA list of pointers to fields to be updated by the source term.
coefSEM coefs.
start_timeWhen to start adding the source term.
end_timeWhen to stop adding the source term.

Definition at line 54 of file source_term.f90.

◆ init_boundary_mesh()

procedure, pass(this) brinkman_source_term::brinkman_source_term_t::init_boundary_mesh ( class(brinkman_source_term_t), intent(inout this,
type(json_file), intent(inout json 
)

Definition at line 82 of file brinkman_source_term.f90.

◆ init_point_zone()

procedure, pass(this) brinkman_source_term::brinkman_source_term_t::init_point_zone ( class(brinkman_source_term_t), intent(inout this,
type(json_file), intent(inout json 
)

Definition at line 83 of file brinkman_source_term.f90.

Member Data Documentation

◆ brinkman

type(field_t) brinkman_source_term::brinkman_source_term_t::brinkman

Definition at line 70 of file brinkman_source_term.f90.

◆ coef

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

Definition at line 47 of file source_term.f90.

◆ end_time

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

Definition at line 51 of file source_term.f90.

◆ fields

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

Definition at line 45 of file source_term.f90.

◆ indicator

type(field_t) brinkman_source_term::brinkman_source_term_t::indicator
private

Definition at line 68 of file brinkman_source_term.f90.

◆ start_time

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

Definition at line 49 of file source_term.f90.


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