Neko 1.99.9
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
viscous_regularization::viscous_regularization_t Type Referenceabstract

Base abstract type for viscous regularization methods. More...

Inheritance diagram for viscous_regularization::viscous_regularization_t:
Collaboration diagram for viscous_regularization::viscous_regularization_t:

Public Member Functions

procedure, pass(this) init_base (this, json, coef, dof)
 Initialize state shared by all regularization methods.
 
procedure, pass(this) free_base (this)
 Free state shared by all regularization methods.
 
procedure(reg_init), deferred, pass init (this, json, coef, dof)
 Initialize a regularization method.
 
procedure(reg_free), deferred, pass free (this)
 Free a regularization method.
 
procedure(reg_update), deferred, pass update (this, effective_visc, mu)
 Update the effective viscosity field.
 

Public Attributes

type(field_t), pointer reg_coeff => null()
 Spatially varying regularization coefficient.
 
character(len=:), allocatable reg_coeff_name
 Name of the regularization coefficient field.
 
type(coef_t), pointer coef => null()
 SEM coefficients.
 
type(dofmap_t), pointer dof => null()
 SEM map of degrees of freedom.
 

Detailed Description

Definition at line 45 of file viscous_regularization.f90.

Member Function/Subroutine Documentation

◆ free()

procedure(reg_free), deferred, pass viscous_regularization::viscous_regularization_t::free ( class(viscous_regularization_t), intent(inout)  this)
pure virtual

Definition at line 62 of file viscous_regularization.f90.

◆ free_base()

procedure, pass(this) viscous_regularization::viscous_regularization_t::free_base ( class(viscous_regularization_t), intent(inout)  this)
Parameters
thisThe viscous regularization method.

Definition at line 58 of file viscous_regularization.f90.

◆ init()

procedure(reg_init), deferred, pass viscous_regularization::viscous_regularization_t::init ( class(viscous_regularization_t), intent(inout)  this,
type(json_file), intent(inout)  json,
type(coef_t), intent(in), target  coef,
type(dofmap_t), intent(in), target  dof 
)
pure virtual

Definition at line 60 of file viscous_regularization.f90.

◆ init_base()

procedure, pass(this) viscous_regularization::viscous_regularization_t::init_base ( class(viscous_regularization_t), intent(inout)  this,
type(json_file), intent(inout)  json,
type(coef_t), intent(in), target  coef,
type(dofmap_t), intent(in), target  dof 
)
Parameters
objectThe regularization object to allocate.
type_nameThe regularization type name.
jsonThe regularization configuration.
coefThe SEM coefficients.
dofThe SEM map of degrees of freedom. Initialize state shared by all viscous regularization methods.
thisThe viscous regularization method.
jsonThe regularization configuration.
coefThe SEM coefficients.
dofThe SEM map of degrees of freedom.

Definition at line 56 of file viscous_regularization.f90.

◆ update()

procedure(reg_update), deferred, pass viscous_regularization::viscous_regularization_t::update ( class(viscous_regularization_t), intent(inout)  this,
type(field_t), intent(inout)  effective_visc,
type(field_t), intent(in), optional  mu 
)
pure virtual

Definition at line 64 of file viscous_regularization.f90.

Member Data Documentation

◆ coef

type(coef_t), pointer viscous_regularization::viscous_regularization_t::coef => null()

Definition at line 51 of file viscous_regularization.f90.

◆ dof

type(dofmap_t), pointer viscous_regularization::viscous_regularization_t::dof => null()

Definition at line 53 of file viscous_regularization.f90.

◆ reg_coeff

type(field_t), pointer viscous_regularization::viscous_regularization_t::reg_coeff => null()

Definition at line 47 of file viscous_regularization.f90.

◆ reg_coeff_name

character(len=:), allocatable viscous_regularization::viscous_regularization_t::reg_coeff_name

Definition at line 49 of file viscous_regularization.f90.


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