Neko  0.9.0
A portable framework for high-order spectral element flow simulations
rough_log_law::rough_log_law_t Type Reference

Wall model based on the log-law for a rough wall. The formula defining the law is \( u^+ = log(z/z_0)/\kappa + B \). Here, \( z \) is the wall-normal distance, as per tradition in atmospheric sciences, where this law is often used. More...

Inheritance diagram for rough_log_law::rough_log_law_t:
Collaboration diagram for rough_log_law::rough_log_law_t:

Public Member Functions

procedure, pass(this) init => rough_log_law_init
 Constructor from JSON. More...
 
procedure, pass(this) init_from_components => rough_log_law_init_from_components
 Constructor from components. More...
 
procedure, pass(this) free => rough_log_law_free
 Destructor. More...
 
procedure, pass(this) compute => rough_log_law_compute
 Compute the wall shear stress. More...
 
procedure, pass(this) init_base => wall_model_init_base
 Constructor for the wall_model_t (base) class. More...
 
procedure, pass(this) free_base => wall_model_free_base
 Destructor for the wall_model_t (base) class. More...
 
procedure, pass(this) find_points => wall_model_find_points
 Find the sampling points based on the value of h_index. More...
 

Public Attributes

real(kind=rp) kappa = 0.41_rp
 The von Karman coefficient. More...
 
real(kind=rp) b = 0.0_rp
 The log-law intercept. More...
 
real(kind=rp) z0 = 0.0_rp
 The roughness height. More...
 
type(coef_t), pointer coef => null()
 SEM coefficients. More...
 
type(dofmap_t), pointer dof => null()
 Map of degrees of freedom. More...
 
integer, dimension(:), pointer msk => null()
 The boundary condition mask. Stores the array size at index zero! More...
 
integer, dimension(:), pointer facet => null()
 The boundary condition facet ids. Stores the array size at index zero! More...
 
real(kind=rp), dimension(:), allocatable tau_x
 The x component of the shear stress. More...
 
real(kind=rp), dimension(:), allocatable tau_y
 The y component of the shear stress. More...
 
real(kind=rp), dimension(:), allocatable tau_z
 The z component of the shear stress. More...
 
type(vector_t) n_x
 The x component of the normal. More...
 
type(vector_t) n_y
 The y component of the normal. More...
 
type(vector_t) n_z
 The z component of the normal. More...
 
integer, dimension(:), allocatable ind_r
 The r indices of the sampling points. More...
 
integer, dimension(:), allocatable ind_s
 The s indices of the sampling points. More...
 
integer, dimension(:), allocatable ind_t
 The t indices of the sampling points. More...
 
integer, dimension(:), allocatable ind_e
 The element indices of the sampling points. More...
 
type(vector_t) h
 The sampling height. More...
 
integer h_index = 0
 Sampling index. More...
 
integer n_nodes = 0
 Number of nodes in the boundary. More...
 
real(kind=rp) nu = 0_rp
 Kinematic viscosity value. More...
 
type(field_t), pointer tau_field => null()
 The 3D field with the computed stress magnitude at the boundary. More...
 

Detailed Description

Definition at line 53 of file rough_log_law.f90.

Member Function/Subroutine Documentation

◆ compute()

procedure, pass(this) rough_log_law::rough_log_law_t::compute

Definition at line 70 of file rough_log_law.f90.

◆ find_points()

procedure, pass(this) wall_model::wall_model_t::find_points
inherited

Definition at line 105 of file wall_model.f90.

◆ free()

procedure, pass(this) rough_log_law::rough_log_law_t::free

Definition at line 68 of file rough_log_law.f90.

◆ free_base()

procedure, pass(this) wall_model::wall_model_t::free_base
inherited

Definition at line 97 of file wall_model.f90.

◆ init()

procedure, pass(this) rough_log_law::rough_log_law_t::init

Definition at line 63 of file rough_log_law.f90.

◆ init_base()

procedure, pass(this) wall_model::wall_model_t::init_base
inherited

Definition at line 95 of file wall_model.f90.

◆ init_from_components()

procedure, pass(this) rough_log_law::rough_log_law_t::init_from_components

Definition at line 65 of file rough_log_law.f90.

Member Data Documentation

◆ b

real(kind=rp) rough_log_law::rough_log_law_t::b = 0.0_rp

Definition at line 58 of file rough_log_law.f90.

◆ coef

type(coef_t), pointer wall_model::wall_model_t::coef => null()
inherited

Definition at line 56 of file wall_model.f90.

◆ dof

type(dofmap_t), pointer wall_model::wall_model_t::dof => null()
inherited

Definition at line 58 of file wall_model.f90.

◆ facet

integer, dimension(:), pointer wall_model::wall_model_t::facet => null()
inherited

Definition at line 62 of file wall_model.f90.

◆ h

type(vector_t) wall_model::wall_model_t::h
inherited

Definition at line 84 of file wall_model.f90.

◆ h_index

integer wall_model::wall_model_t::h_index = 0
inherited

Definition at line 86 of file wall_model.f90.

◆ ind_e

integer, dimension(:), allocatable wall_model::wall_model_t::ind_e
inherited

Definition at line 82 of file wall_model.f90.

◆ ind_r

integer, dimension(:), allocatable wall_model::wall_model_t::ind_r
inherited

Definition at line 76 of file wall_model.f90.

◆ ind_s

integer, dimension(:), allocatable wall_model::wall_model_t::ind_s
inherited

Definition at line 78 of file wall_model.f90.

◆ ind_t

integer, dimension(:), allocatable wall_model::wall_model_t::ind_t
inherited

Definition at line 80 of file wall_model.f90.

◆ kappa

real(kind=rp) rough_log_law::rough_log_law_t::kappa = 0.41_rp

Definition at line 56 of file rough_log_law.f90.

◆ msk

integer, dimension(:), pointer wall_model::wall_model_t::msk => null()
inherited

Definition at line 60 of file wall_model.f90.

◆ n_nodes

integer wall_model::wall_model_t::n_nodes = 0
inherited

Definition at line 88 of file wall_model.f90.

◆ n_x

type(vector_t) wall_model::wall_model_t::n_x
inherited

Definition at line 70 of file wall_model.f90.

◆ n_y

type(vector_t) wall_model::wall_model_t::n_y
inherited

Definition at line 72 of file wall_model.f90.

◆ n_z

type(vector_t) wall_model::wall_model_t::n_z
inherited

Definition at line 74 of file wall_model.f90.

◆ nu

real(kind=rp) wall_model::wall_model_t::nu = 0_rp
inherited

Definition at line 90 of file wall_model.f90.

◆ tau_field

type(field_t), pointer wall_model::wall_model_t::tau_field => null()
inherited

Definition at line 92 of file wall_model.f90.

◆ tau_x

real(kind=rp), dimension(:), allocatable wall_model::wall_model_t::tau_x
inherited

Definition at line 64 of file wall_model.f90.

◆ tau_y

real(kind=rp), dimension(:), allocatable wall_model::wall_model_t::tau_y
inherited

Definition at line 66 of file wall_model.f90.

◆ tau_z

real(kind=rp), dimension(:), allocatable wall_model::wall_model_t::tau_z
inherited

Definition at line 68 of file wall_model.f90.

◆ z0

real(kind=rp) rough_log_law::rough_log_law_t::z0 = 0.0_rp

Definition at line 60 of file rough_log_law.f90.


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