From 1d28819690093faa411d56f1d36d93a21866e9f0 Mon Sep 17 00:00:00 2001 From: Anna Shestakova <shestakova.aa.92@gmail.com> Date: Wed, 30 Oct 2024 14:11:02 +0300 Subject: [PATCH] check of zeta=0 in pbldia is added --- diag/pbldia_new_sfx.f90 | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/diag/pbldia_new_sfx.f90 b/diag/pbldia_new_sfx.f90 index 4a645f1..684d89d 100755 --- a/diag/pbldia_new_sfx.f90 +++ b/diag/pbldia_new_sfx.f90 @@ -53,6 +53,7 @@ use sfx_sheba, only: & TSTAR = AR2(9) * ARDIN(2) QSTAR = AR2(9) * ARDIN(3) + if(zeta.ne.0)then if(zeta.gt.zetalim) zeta=zetalim L = HIN/zeta @@ -60,10 +61,17 @@ use sfx_sheba, only: & call get_psi_sheba(psi_m_hs,psi_h_hs,HIN/L) call get_psi_sheba(psi_m,psi_h,HWIND/L) UFWIND = ALOG(hwind/HIN) - (psi_m - psi_m_hs) - WIND = (USTAR/kappa) * UFWIND call get_psi_sheba(psi_m,psi_h,HTEMP/L) - UFTEMP = ALOG(HTEMP/HIN) - (psi_h - psi_h_hs) + UFTEMP = ALOG(HTEMP/HIN) - (psi_h - psi_h_hs) + + else + + UFWIND = ALOG(HWIND/HIN) + UFTEMP = ALOG(HTEMP/HIN) + + endif + WIND = (USTAR/kappa) * UFWIND DTETA = (TSTAR/kappa) * UFTEMP DQ = (QSTAR/kappa) * UFTEMP @@ -96,16 +104,25 @@ use sfx_most, only: & TSTAR = AR2(9) * ARDIN(2) QSTAR = AR2(9) * ARDIN(3) + if(zeta.ne.0)then + if(zeta.gt.zetalim) zeta=zetalim L = HIN/zeta call get_psi_most(psi_m_hs,psi_h_hs,HIN/L) call get_psi_most(psi_m,psi_h,HWIND/L) UFWIND = ALOG(hwind/HIN) - (psi_m - psi_m_hs) - WIND = (USTAR/kappa) * UFWIND call get_psi_most(psi_m,psi_h,HTEMP/L) UFTEMP = ALOG(HTEMP/HIN) - (psi_h - psi_h_hs) + else + + UFWIND = ALOG(HWIND/HIN) + UFTEMP = ALOG(HTEMP/HIN) + + endif + + WIND = (USTAR/kappa) * UFWIND DTETA = (TSTAR/kappa) * UFTEMP DQ = (QSTAR/kappa) * UFTEMP @@ -134,16 +151,24 @@ subroutine pbldia_new_esm(AR2,ARDIN,ARDOUT) TSTAR = AR2(9) * ARDIN(2) QSTAR = AR2(9) * ARDIN(3) + if(zeta.ne.0)then + if(zeta.gt.zetalim) zeta=zetalim L = HIN/zeta - call get_psi_esm1(psi_m,psi_h,HIN,HWIND,L) UFWIND = psi_m - WIND = (USTAR/kappa) * UFWIND call get_psi_esm1(psi_m,psi_h,HIN,HTEMP,L) - UFTEMP = psi_h + UFTEMP = psi_h + + else + + UFWIND = ALOG(HWIND/HIN) + UFTEMP = ALOG(HTEMP/HIN) + + endif + WIND = (USTAR/kappa) * UFWIND DTETA = (TSTAR/kappa) * UFTEMP DQ = (QSTAR/kappa) * UFTEMP -- GitLab