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

Base abstract type for artificial viscosity models. More...

Inheritance diagram for artificial_viscosity_model::avm_t:
Collaboration diagram for artificial_viscosity_model::avm_t:

Public Member Functions

procedure, pass(this) init_base (this, dof, coef, reg_coeff_name)
 Constructor for the avm_t (base) class.
 
procedure, pass(this) free_base (this)
 Destructor for the avm_t (base) class.
 
procedure(avm_init), deferred, pass init (this, case, json)
 The common constructor.
 
procedure(avm_free), deferred, pass free (this)
 Destructor.
 
procedure(avm_preprocess), deferred, pass preprocess (this, time)
 Perform artificial viscosity related computations before the time step.
 
procedure(avm_compute), deferred, pass compute (this, time)
 Perform artificial viscosity related computations after the time step.
 
procedure, pass(this) restart (this, time)
 Restore model state after loading a checkpoint.
 

Public Attributes

type(field_t), pointer reg_coeff => null()
 Artificial viscosity.
 
type(coef_t), pointer coef => null()
 SEM coefficients.
 
type(dofmap_t), pointer dof => null()
 SEM dofmap.
 
integer les_model_registry_size = 0
 Number of custom artificial viscosity model allocators.
 

Detailed Description

Definition at line 48 of file avm.f90.

Member Function/Subroutine Documentation

◆ compute()

procedure(avm_compute), deferred, pass artificial_viscosity_model::avm_t::compute ( class(avm_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
pure virtual

Definition at line 69 of file avm.f90.

◆ free()

procedure(avm_free), deferred, pass artificial_viscosity_model::avm_t::free ( class(avm_t), intent(inout)  this)
pure virtual

Definition at line 65 of file avm.f90.

◆ free_base()

procedure, pass(this) artificial_viscosity_model::avm_t::free_base ( class(avm_t), intent(inout)  this)
Parameters
thisThe artificial viscosity model.

Definition at line 61 of file avm.f90.

◆ init()

procedure(avm_init), deferred, pass artificial_viscosity_model::avm_t::init ( class(avm_t), intent(inout)  this,
class(case_t), intent(inout), target  case,
type(json_file), intent(inout)  json 
)
pure virtual

Definition at line 63 of file avm.f90.

◆ init_base()

procedure, pass(this) artificial_viscosity_model::avm_t::init_base ( class(avm_t), intent(inout)  this,
class(dofmap_t), intent(in), target  dof,
class(coef_t), intent(in), target  coef,
character(len=*), intent(in)  reg_coeff_name 
)
Parameters
objectThe object to be allocated.
type_nameThe name of the artificial viscosity model.
caseThe case_t object.
jsonA dictionary with parameters. Constructor for the avm_t (base) class.
thisThe artificial viscosity model.
dofMap of degrees of freedom.
coefThe SEM coefficients.
reg_coeff_nameThe name of the artificial viscosity field.

Definition at line 59 of file avm.f90.

◆ preprocess()

procedure(avm_preprocess), deferred, pass artificial_viscosity_model::avm_t::preprocess ( class(avm_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
pure virtual

Definition at line 67 of file avm.f90.

◆ restart()

procedure, pass(this) artificial_viscosity_model::avm_t::restart ( class(avm_t), intent(inout)  this,
type(time_state_t), intent(in)  time 
)
Parameters
thisThe artificial viscosity model.
timeThe restored time state.

Definition at line 71 of file avm.f90.

Member Data Documentation

◆ coef

type(coef_t), pointer artificial_viscosity_model::avm_t::coef => null()

Definition at line 52 of file avm.f90.

◆ dof

type(dofmap_t), pointer artificial_viscosity_model::avm_t::dof => null()

Definition at line 54 of file avm.f90.

◆ les_model_registry_size

integer artificial_viscosity_model::avm_t::les_model_registry_size = 0

Definition at line 56 of file avm.f90.

◆ reg_coeff

type(field_t), pointer artificial_viscosity_model::avm_t::reg_coeff => null()

Definition at line 50 of file avm.f90.


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