Skip to content

Commit 71d3530

Browse files
committed
* In the Pleim surface layer scheme sourcecode, added minor changes:
-> in ./src/core_atmosphere/physics/mpas_atmphys_control.F, revised the "if" statement when checking the different options for config_sfclayer_scheme. -> in ./src/core_atmosphere/physics/mpas_atmphys_driver_sfclayer.F, removed lines with empty "case("sf_pxsfclay")" options; reorganized calls to pxsfclay.
1 parent 158f6a0 commit 71d3530

2 files changed

Lines changed: 48 additions & 55 deletions

File tree

src/core_atmosphere/physics/mpas_atmphys_control.F

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -278,7 +278,7 @@ subroutine physics_namelist_check(configs)
278278
write(mpas_err_message,'(A,A20)') 'illegal value for surface layer scheme: ', &
279279
trim(config_sfclayer_scheme)
280280
call physics_error_fatal(mpas_err_message)
281-
else if(config_sfclayer_scheme .ne. 'sf_pxsfclay') then
281+
else
282282
if(config_pbl_scheme == 'bl_mynn') then
283283
config_sfclayer_scheme = 'sf_mynn'
284284
elseif(config_pbl_scheme == 'bl_ysu') then

src/core_atmosphere/physics/mpas_atmphys_driver_sfclayer.F

Lines changed: 47 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -224,8 +224,6 @@ subroutine allocate_sfclayer(configs)
224224
if(.not.allocated(ch_sea)) allocate(ch_sea(ims:ime,jms:jme))
225225
endif
226226

227-
case("sf_pxsfclay")
228-
229227
case default
230228

231229
end select sfclayer_select
@@ -348,8 +346,6 @@ subroutine deallocate_sfclayer(configs)
348346
if(allocated(ch_sea)) deallocate(ch_sea)
349347
endif
350348

351-
case("sf_pxsfclay")
352-
353349
case default
354350

355351
end select sfclayer_select
@@ -593,8 +589,6 @@ subroutine sfclayer_from_MPAS(configs,mesh,diag_physics,sfc_input,its,ite)
593589
enddo
594590
enddo
595591

596-
case("sf_pxsfclay")
597-
598592
case default
599593

600594
end select sfclayer_select
@@ -799,8 +793,6 @@ subroutine sfclayer_to_MPAS(configs,sfc_input,diag_physics,its,ite)
799793
enddo
800794
endif
801795

802-
case("sf_pxsfclay")
803-
804796
case default
805797

806798
end select sfclayer_select
@@ -1092,57 +1084,58 @@ subroutine driver_sfclayer(itimestep,configs,mesh,diag_physics,sfc_input,its,ite
10921084
call mpas_timer_stop('sf_mynn')
10931085

10941086
case("sf_pxsfclay")
1095-
call mpas_timer_start('PX_sfclay')
1087+
call mpas_timer_start('sf_pxsfclay')
10961088
call pxsfclay( &
1097-
p3d = pres_hyd_p , psfc = psfc_p , t3d = t_p , &
1098-
u3d = u_p , v3d = v_p , qv3d = qv_p , &
1099-
dz8w = dz_p , cp = cp , g = gravity , &
1100-
rovcp = rcp , R = R_d , xlv = xlv , &
1101-
chs = chs_p , chs2 = chs2_p , cqs2 = cqs2_p , &
1102-
cpm = cpm_p , znt = znt_p , ust = ust_p , &
1103-
pblh = hpbl_p , mavail = mavail_p , zol = zol_p , &
1104-
mol = mol_p , regime = regime_p , psim = psim_p , &
1105-
psih = psih_p , th3d = th_p , &
1106-
xland = xland_p , hfx = hfx_p , qfx = qfx_p , &
1107-
lh = lh_p , tsk = tsk_p , flhc = flhc_p , &
1108-
ta2 = t2m_p , th2 = th2m_p , qa2 = q2_p , &
1109-
flqc = flqc_p , qgh = qgh_p , qsfc = qsfc_p , &
1110-
rmol = rmol_p , u10 = u10_p , v10 = v10_p , &
1111-
gz1oz0 = gz1oz0_p , wspd = wspd_p , br = br_p , &
1112-
isfflx = isfflx , dx = dx_p , svp1 = svp1 , &
1113-
svp2 = svp2 , svp3 = svp3 , svpt0 = svpt0 , &
1114-
ep1 = ep_1 , ep2 = ep_2 , karman = karman , &
1089+
p3d = pres_hyd_p , psfc = psfc_p , t3d = t_p , &
1090+
u3d = u_p , v3d = v_p , qv3d = qv_p , &
1091+
dz8w = dz_p , cp = cp , g = gravity , &
1092+
rovcp = rcp , R = R_d , xlv = xlv , &
1093+
chs = chs_p , chs2 = chs2_p , cqs2 = cqs2_p , &
1094+
cpm = cpm_p , znt = znt_p , ust = ust_p , &
1095+
pblh = hpbl_p , mavail = mavail_p , zol = zol_p , &
1096+
mol = mol_p , regime = regime_p , psim = psim_p , &
1097+
psih = psih_p , th3d = th_p , xland = xland_p , &
1098+
hfx = hfx_p , qfx = qfx_p , lh = lh_p , &
1099+
tsk = tsk_p , flhc = flhc_p , ta2 = t2m_p , &
1100+
th2 = th2m_p , qa2 = q2_p , flqc = flqc_p , &
1101+
qgh = qgh_p , qsfc = qsfc_p , rmol = rmol_p , &
1102+
u10 = u10_p , v10 = v10_p , gz1oz0 = gz1oz0_p , &
1103+
wspd = wspd_p , br = br_p , isfflx = isfflx , &
1104+
dx = dx_p , svp1 = svp1 , svp2 = svp2 , &
1105+
svp3 = svp3 , svpt0 = svpt0 , ep1 = ep_1 , &
1106+
ep2 = ep_2 , karman = karman , &
11151107
ids = ids , ide = ide , jds = jds , jde = jde , kds = kds , kde = kde , &
11161108
ims = ims , ime = ime , jms = jms , jme = jme , kms = kms , kme = kme , &
11171109
its = its , ite = ite , jts = jts , jte = jte , kts = kts , kte = kte &
11181110
)
1119-
! Note that fractional sea-ice is currently not supported by PX.
1120-
! if(config_frac_seaice) then
1121-
! call pxsfclay( &
1122-
! p3d = pres_hyd_p , psfc = psfc_p , t3d = t_p , &
1123-
! u3d = u_p , v3d = v_p , qv3d = qv_p , &
1124-
! dz8w = dz_p , cp = cp , g = gravity , &
1125-
! rovcp = rcp , R = R_d , xlv = xlv , &
1126-
! chs = chs_sea , chs2 = chs2_sea , cqs2 = cqs2_sea , &
1127-
! cpm = cpm_sea , znt = znt_sea , ust = ust_sea , &
1128-
! pblh = hpbl_p , mavail = mavail_sea , zol = zol_sea , &
1129-
! mol = mol_sea , regime = regime_sea , psim = psim_sea , &
1130-
! psih = psih_sea , th3d = th_p , &
1131-
! xland = xland_sea , hfx = hfx_sea , qfx = qfx_sea , &
1132-
! lh = lh_sea , tsk = tsk_sea , flhc = flhc_sea , &
1133-
! ta2 = t2m_sea , th2 = th2m_sea , qa2 = q2_sea , &
1134-
! flqc = flqc_sea , qgh = qgh_sea , qsfc = qsfc_sea , &
1135-
! rmol = rmol_sea , u10 = u10_sea , v10 = v10_sea , &
1136-
! gz1oz0 = gz1oz0_sea , wspd = wspd_sea , br = br_sea , &
1137-
! isfflx = isfflx , dx = dx_p , svp1 = svp1 , &
1138-
! svp2 = svp2 , svp3 = svp3 , svpt0 = svpt0 , &
1139-
! ep1 = ep_1 , ep2 = ep_2 , karman = karman , &
1140-
! ids = ids , ide = ide , jds = jds , jde = jde , kds = kds , kde = kde , &
1141-
! ims = ims , ime = ime , jms = jms , jme = jme , kms = kms , kme = kme , &
1142-
! its = its , ite = ite , jts = jts , jte = jte , kts = kts , kte = kte &
1143-
! )
1144-
! endif
1145-
call mpas_timer_stop('PX_sfclay')
1111+
1112+
! Note that fractional sea-ice is currently not supported by PX.
1113+
! if(config_frac_seaice) then
1114+
! call pxsfclay( &
1115+
! p3d = pres_hyd_p , psfc = psfc_p , t3d = t_p , &
1116+
! u3d = u_p , v3d = v_p , qv3d = qv_p , &
1117+
! dz8w = dz_p , cp = cp , g = gravity , &
1118+
! rovcp = rcp , R = R_d , xlv = xlv , &
1119+
! chs = chs_sea , chs2 = chs2_sea , cqs2 = cqs2_sea , &
1120+
! cpm = cpm_sea , znt = znt_sea , ust = ust_sea , &
1121+
! pblh = hpbl_p , mavail = mavail_sea , zol = zol_sea , &
1122+
! mol = mol_sea , regime = regime_sea , psim = psim_sea , &
1123+
! psih = psih_sea , th3d = th_p , xland = xland_sea , &
1124+
! hfx = hfx_sea , qfx = qfx_sea , lh = lh_sea , &
1125+
! tsk = tsk_sea , flhc = flhc_sea , ta2 = t2m_sea , &
1126+
! th2 = th2m_sea , qa2 = q2_sea , flqc = flqc_sea , &
1127+
! qgh = qgh_sea , qsfc = qsfc_sea , rmol = rmol_sea , &
1128+
! u10 = u10_sea , v10 = v10_sea , gz1oz0 = gz1oz0_sea , &
1129+
! wspd = wspd_sea , br = br_sea , isfflx = isfflx , &
1130+
! dx = dx_p , svp1 = svp1 , svp2 = svp2 , &
1131+
! svp3 = svp3 , svpt0 = svpt0 , ep1 = ep_1 , &
1132+
! ep2 = ep_2 , karman = karman , &
1133+
! ids = ids , ide = ide , jds = jds , jde = jde , kds = kds , kde = kde , &
1134+
! ims = ims , ime = ime , jms = jms , jme = jme , kms = kms , kme = kme , &
1135+
! its = its , ite = ite , jts = jts , jte = jte , kts = kts , kte = kte &
1136+
! )
1137+
! endif
1138+
call mpas_timer_stop('sf_pxsfclay')
11461139

11471140
case default
11481141

0 commit comments

Comments
 (0)