Skip to content

Commit 0ff86ac

Browse files
committed
use radiative temp as skin temp to the atmosphere
1 parent 14d0aad commit 0ff86ac

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

physics/SFC_Models/Land/Noahmp/noahmpdrv.F90

+7-4
Original file line numberDiff line numberDiff line change
@@ -658,6 +658,7 @@ subroutine noahmpdrv_run &
658658
real (kind=kind_phys) :: precip_freeze_frac_in ! used for penman calculation
659659

660660
real (kind=kind_phys) :: virtfac1 ! virtual factor
661+
real (kind=kind_phys) :: tflux ! surface flux temp
661662
real (kind=kind_phys) :: tvs1 ! surface virtual temp
662663
real (kind=kind_phys) :: vptemp ! virtual potential temp
663664

@@ -934,7 +935,8 @@ subroutine noahmpdrv_run &
934935
t2mmp(i) = temperature_bare_2m
935936
q2mp(i) = spec_humidity_bare_2m
936937

937-
tskin(i) = temperature_ground
938+
tskin(i) = temperature_radiative
939+
tflux = temperature_ground
938940
surface_temperature = temperature_ground
939941
vegetation_fraction = vegetation_frac
940942
ch_vegetated = 0.0
@@ -1024,7 +1026,8 @@ subroutine noahmpdrv_run &
10241026
q2mp(i) = spec_humidity_veg_2m * vegetation_fraction + &
10251027
spec_humidity_bare_2m * (1-vegetation_fraction)
10261028

1027-
tskin(i) = surface_temperature
1029+
tskin(i) = temperature_radiative
1030+
tflux = surface_temperature
10281031

10291032
endif ! glacial split ends
10301033

@@ -1170,9 +1173,9 @@ subroutine noahmpdrv_run &
11701173
endif
11711174

11721175
if(thsfc_loc) then ! Use local potential temperature
1173-
tvs1 = tskin(i) * virtfac1
1176+
tvs1 = tflux * virtfac1
11741177
else ! Use potential temperature referenced to 1000 hPa
1175-
tvs1 = tskin(i)/prsik1(i) * virtfac1
1178+
tvs1 = tflux/prsik1(i) * virtfac1
11761179
endif
11771180

11781181
z0_total = max(min(z0_total,forcing_height),1.0e-6)

0 commit comments

Comments
 (0)