Loading [MathJax]/extensions/tex2jax.js
Neko 0.9.99
A portable framework for high-order spectral element flow simulations
All Classes Namespaces Files Functions Variables Typedefs Enumerator Macros Pages
les_model Module Reference

Implements les_model_t.

Data Types

type  allocator_entry
 Called in user modules to add an allocator for custom types. More...
 
interface  les_model_allocate
 LES model allocator. More...
 
interface  les_model_compute
 Compute eddy viscosity. More...
 
interface  les_model_free
 Destructor. More...
 
interface  les_model_init
 Common constructor. More...
 
type  les_model_t
 Base abstract type for LES models based on the Boussinesq approximation. More...
 

Functions/Subroutines

subroutine les_model_init_base (this, fluid, nut_name, delta_type, if_ext)
 Constructor for the les_model_t (base) class.
 
subroutine les_model_free_base (this)
 Destructor for the les_model_t (base) class.
 
subroutine les_model_compute_delta (this)
 Compute the LES lengthscale. For each GLL point, we take the distance between its neighbours in all 3 directions divided by 2 with the exception of face nodes, where only one neighbour exists. To form the lengthscale the distances along 3 directions are multiplied, and a cubic root is extracted from the result. This roughly corresponds to a cubic root of the cell volume in FVM computations.
 

Variables

character(len=20), dimension(3) delta_known_types = [character(len=20) :: "pointwise", "elementwise_average", "elementwise_max"]
 
type(allocator_entry), dimension(:), allocatable les_model_registry
 Registry of LES model allocators for user-defined types.
 
integer les_model_registry_size = 0
 The size of the les_model_registry
 

Function/Subroutine Documentation

◆ les_model_compute_delta()

subroutine les_model::les_model_compute_delta ( class(les_model_t), intent(inout this)
private

Definition at line 268 of file les_model.f90.

◆ les_model_free_base()

subroutine les_model::les_model_free_base ( class(les_model_t), intent(inout this)
private

Definition at line 251 of file les_model.f90.

◆ les_model_init_base()

subroutine les_model::les_model_init_base ( class(les_model_t), intent(inout this,
class(fluid_scheme_base_t), intent(inout), target  fluid,
character(len=*), intent(in nut_name,
character(len=*), intent(in delta_type,
logical, intent(in if_ext 
)
private
Parameters
fluidThe fluid_scheme_t object.
nu_nameThe name of the turbulent viscosity field.
delta_typeThe type of filter size.
if_extWhether trapolate the velocity.

Definition at line 202 of file les_model.f90.

Here is the call graph for this function:

Variable Documentation

◆ delta_known_types

character(len=20), dimension(3) les_model::delta_known_types = [character(len=20) :: "pointwise", "elementwise_average", "elementwise_max"]
private

Definition at line 59 of file les_model.f90.

◆ les_model_registry

type(allocator_entry), dimension(:), allocatable les_model::les_model_registry

Definition at line 187 of file les_model.f90.

◆ les_model_registry_size

integer les_model::les_model_registry_size = 0
private

Definition at line 190 of file les_model.f90.