Skip to content
Snippets Groups Projects
Commit 938bf014 authored by Evgeny Mortikov's avatar Evgeny Mortikov
Browse files

minor code update: removing zeta from output parameters in neutral case

parent 1de9b15a
No related branches found
No related tags found
No related merge requests found
...@@ -212,8 +212,9 @@ contains ...@@ -212,8 +212,9 @@ contains
else if (Rib > -0.001) then else if (Rib > -0.001) then
! --- nearly neutral [-0.001, 0] block ! --- nearly neutral [-0.001, 0] block
call get_psi_neutral(psi_m, psi_h, zeta, h0_m, h0_t, B) call get_psi_neutral(psi_m, psi_h, h0_m, h0_t, B)
zeta = 0.0
phi_m = 1.0 phi_m = 1.0
phi_h = 1.0 / Pr_t_0_inv phi_h = 1.0 / Pr_t_0_inv
else else
...@@ -268,19 +269,18 @@ contains ...@@ -268,19 +269,18 @@ contains
! universal functions ! universal functions
! -------------------------------------------------------------------------------- ! --------------------------------------------------------------------------------
subroutine get_psi_neutral(psi_m, psi_h, zeta, h0_m, h0_t, B) subroutine get_psi_neutral(psi_m, psi_h, h0_m, h0_t, B)
!> @brief universal functions (momentum) & (heat): neutral case !> @brief universal functions (momentum) & (heat): neutral case
! ---------------------------------------------------------------------------- ! ----------------------------------------------------------------------------
real, intent(out) :: psi_m, psi_h !> universal functions real, intent(out) :: psi_m, psi_h !> universal functions
real, intent(out) :: zeta !> = z/L
real, intent(in) :: h0_m, h0_t !> = z/z0_m, z/z0_h real, intent(in) :: h0_m, h0_t !> = z/z0_m, z/z0_h
real, intent(in) :: B !> = log(z0_m / z0_h) real, intent(in) :: B !> = log(z0_m / z0_h)
! ---------------------------------------------------------------------------- ! ----------------------------------------------------------------------------
zeta = 0.0
psi_m = log(h0_m) psi_m = log(h0_m)
psi_h = log(h0_t) / Pr_t_0_inv psi_h = log(h0_t) / Pr_t_0_inv
!*: this looks redundant z0_t = z0_m in case |B| ~ 0
if (abs(B) < 1.0e-10) psi_h = psi_m / Pr_t_0_inv if (abs(B) < 1.0e-10) psi_h = psi_m / Pr_t_0_inv
end subroutine end subroutine
......
...@@ -99,7 +99,6 @@ contains ...@@ -99,7 +99,6 @@ contains
real u_dyn0 !> dynamic velocity in neutral conditions [m/s] real u_dyn0 !> dynamic velocity in neutral conditions [m/s]
real Re !> roughness Reynolds number = u_dyn0 * z0_m / nu [n/d] real Re !> roughness Reynolds number = u_dyn0 * z0_m / nu [n/d]
real zeta !> = z/L [n/d]
real Rib !> bulk Richardson number real Rib !> bulk Richardson number
real psi_m, psi_h !> universal functions (momentum) & (heat) [n/d] real psi_m, psi_h !> universal functions (momentum) & (heat) [n/d]
...@@ -172,7 +171,7 @@ contains ...@@ -172,7 +171,7 @@ contains
! --- get the fluxes ! --- get the fluxes
! ---------------------------------------------------------------------------- ! ----------------------------------------------------------------------------
call get_psi_neutral(psi_m, psi_h, zeta, h0_m, h0_t, B) call get_psi_neutral(psi_m, psi_h, h0_m, h0_t, B)
! ---------------------------------------------------------------------------- ! ----------------------------------------------------------------------------
phi_m = 1.0 phi_m = 1.0
...@@ -187,7 +186,7 @@ contains ...@@ -187,7 +186,7 @@ contains
Pr_t_inv = phi_m / phi_h Pr_t_inv = phi_m / phi_h
! --- setting output ! --- setting output
sfx = sfxDataType(zeta = zeta, Rib = Rib, & sfx = sfxDataType(zeta = 0.0, Rib = Rib, &
Re = Re, B = B, z0_m = z0_m, z0_t = z0_t, & Re = Re, B = B, z0_m = z0_m, z0_t = z0_t, &
Rib_conv_lim = 0.0, & Rib_conv_lim = 0.0, &
Cm = Cm, Ct = Ct, Km = Km, Pr_t_inv = Pr_t_inv) Cm = Cm, Ct = Ct, Km = Km, Pr_t_inv = Pr_t_inv)
...@@ -197,19 +196,18 @@ contains ...@@ -197,19 +196,18 @@ contains
! universal functions ! universal functions
! -------------------------------------------------------------------------------- ! --------------------------------------------------------------------------------
subroutine get_psi_neutral(psi_m, psi_h, zeta, h0_m, h0_t, B) subroutine get_psi_neutral(psi_m, psi_h, h0_m, h0_t, B)
!> @brief universal functions (momentum) & (heat): neutral case !> @brief universal functions (momentum) & (heat): neutral case
! ---------------------------------------------------------------------------- ! ----------------------------------------------------------------------------
real, intent(out) :: psi_m, psi_h !> universal functions real, intent(out) :: psi_m, psi_h !> universal functions
real, intent(out) :: zeta !> = z/L
real, intent(in) :: h0_m, h0_t !> = z/z0_m, z/z0_h real, intent(in) :: h0_m, h0_t !> = z/z0_m, z/z0_h
real, intent(in) :: B !> = log(z0_m / z0_h) real, intent(in) :: B !> = log(z0_m / z0_h)
! ---------------------------------------------------------------------------- ! ----------------------------------------------------------------------------
zeta = 0.0
psi_m = log(h0_m) psi_m = log(h0_m)
psi_h = log(h0_t) / Pr_t_0_inv psi_h = log(h0_t) / Pr_t_0_inv
!*: this looks redundant z0_t = z0_m in case |B| ~ 0
if (abs(B) < 1.0e-10) psi_h = psi_m / Pr_t_0_inv if (abs(B) < 1.0e-10) psi_h = psi_m / Pr_t_0_inv
end subroutine end subroutine
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment