Neko 1.99.9
A portable framework for high-order spectral element flow simulations
Loading...
Searching...
No Matches
richardson Module Reference

Implements richardson_t.

Data Types

type  richardson_t
 Wall model similar to the Monin-Obukhov Similarity Theory for atmospheric boundary layer flows, but which avoids the iterative computation of the Obukhov length, computing the Richardson number directly (Mauritsen, 2007) More...
 

Functions/Subroutines

subroutine richardson_init (this, scheme_name, coef, msk, facet, json)
 Constructor from JSON.
 
subroutine richardson_partial_init (this, coef, scheme_name, json)
 Constructor from JSON.
 
subroutine richardson_finalize (this, msk, facet, bc_name, user)
 Finalize the construction using the mask and facet arrays of the bc.
 
subroutine richardson_extract_properties (this)
 Extract the values of rho and mu at the boundary.
 
subroutine richardson_init_from_components (this, scheme_name, scalar_name, coef, msk, facet, sampler, kappa, g, pr, z0, z0h_in, bc_type, bc_value)
 Constructor from components.
 
subroutine richardson_validate_sampling_height (this)
 
subroutine richardson_free (this)
 Destructor for the richardson_t (base) class.
 
subroutine richardson_compute (this, t, tstep)
 Compute the wall shear stress.
 
subroutine richardson_log_diagnostics (ri_b, l_ob, utau, magu, ti, ts, q, n_nodes, bc_value)
 

Function/Subroutine Documentation

◆ richardson_compute()

subroutine richardson::richardson_compute ( class(richardson_t), intent(inout this,
real(kind=rp), intent(in t,
integer, intent(in tstep 
)
private
Parameters
tThe time value.
tstepThe time iteration.

Definition at line 409 of file richardson.f90.

Here is the call graph for this function:

◆ richardson_extract_properties()

subroutine richardson::richardson_extract_properties ( class(richardson_t), intent(inout this)
private

Definition at line 258 of file richardson.f90.

Here is the call graph for this function:

◆ richardson_finalize()

subroutine richardson::richardson_finalize ( class(richardson_t), intent(inout this,
integer, dimension(:), intent(in msk,
integer, dimension(:), intent(in facet,
character(len=*), intent(in), optional  bc_name,
type(user_t), intent(in), optional, target  user 
)
private
Parameters
mskThe boundary mask.
facetThe boundary facets.

Definition at line 230 of file richardson.f90.

Here is the call graph for this function:

◆ richardson_free()

subroutine richardson::richardson_free ( class(richardson_t), intent(inout this)
private

Definition at line 376 of file richardson.f90.

◆ richardson_init()

subroutine richardson::richardson_init ( class(richardson_t), intent(inout this,
character(len=*), intent(in scheme_name,
type(coef_t), intent(in coef,
integer, dimension(:), intent(in msk,
integer, dimension(:), intent(in facet,
type(json_file), intent(inout json 
)
Parameters
scheme_nameThe name of the scheme for which the wall model is used.
coefSEM coefficients.
mskThe boundary mask.
facetThe boundary facets.
jsonA dictionary with parameters.

Definition at line 115 of file richardson.f90.

Here is the call graph for this function:

◆ richardson_init_from_components()

subroutine richardson::richardson_init_from_components ( class(richardson_t), intent(inout this,
character(len=*), intent(in scheme_name,
character(len=*), intent(in scalar_name,
type(coef_t), intent(in coef,
integer, dimension(:), intent(in msk,
integer, dimension(:), intent(in facet,
class(wall_sampler_t), intent(inout), allocatable  sampler,
real(kind=rp), intent(in kappa,
real(kind=rp), dimension(3), intent(in g,
real(kind=rp), intent(in pr,
real(kind=rp), intent(in z0,
real(kind=rp), intent(in z0h_in,
character(len=*), intent(in bc_type,
real(kind=rp), intent(in bc_value 
)
private
Parameters
scheme_nameThe name of the scheme for which the wall model is used.
coefSEM coefficients.
mskThe boundary mask.
facetThe boundary facets.
samplerThe sampling strategy. Ownership is transferred.
kappaThe von Karman coefficient.
gThe gravity vector.
z0The roughness height.
z0h_inThe thermal roughness height. If negative, set automatically from Zilitinkevich, 1995.
bc_typeThe type of bc set for temperature in the case file.
scalar_nameThe name of the scalar field (temperature) for Richardson WM.
bc_valueThe heat flux at the surface boundary condition.

Check magnitude of g

Check alignment across all nodes (handling hills/slopes)

Definition at line 291 of file richardson.f90.

Here is the call graph for this function:

◆ richardson_log_diagnostics()

subroutine richardson::richardson_log_diagnostics ( type(vector_t), intent(in ri_b,
type(vector_t), intent(in l_ob,
type(vector_t), intent(in utau,
type(vector_t), intent(in magu,
type(vector_t), intent(in ti,
type(vector_t), intent(in ts,
type(vector_t), intent(in q,
integer, intent(in n_nodes,
real(kind=rp), intent(in bc_value 
)
private

Definition at line 475 of file richardson.f90.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ richardson_partial_init()

subroutine richardson::richardson_partial_init ( class(richardson_t), intent(inout this,
type(coef_t), intent(in coef,
character(len=*), intent(in scheme_name,
type(json_file), intent(inout json 
)
private
Parameters
coefSEM coefficients.
jsonA dictionary with parameters.

Definition at line 170 of file richardson.f90.

◆ richardson_validate_sampling_height()

subroutine richardson::richardson_validate_sampling_height ( class(richardson_t), intent(in this)
private

Definition at line 357 of file richardson.f90.

Here is the caller graph for this function: