@@ -1342,7 +1342,7 @@ subroutine update_atmos_chemistry(state, rc)
1342
1342
real (ESMF_KIND_R8 ), dimension (:,:), pointer :: aod, area, canopy, cmm, &
1343
1343
dqsfc, dtsfc, fice, flake, focn, fsnow, hpbl, nswsfc, oro, psfc, &
1344
1344
q2m, rain, rainc, rca, shfsfc, slmsk, stype, swet, t2m, tsfc, &
1345
- u10m, uustar, v10m, vfrac, xlai, zorl
1345
+ u10m, uustar, v10m, vfrac, xlai, zorl, vtype
1346
1346
1347
1347
! logical, parameter :: diag = .true.
1348
1348
@@ -1600,6 +1600,10 @@ subroutine update_atmos_chemistry(state, rc)
1600
1600
if (ESMF_LogFoundError(rcToCheck= localrc, msg= ESMF_LOGERR_PASSTHRU, &
1601
1601
line= __LINE__, file= __FILE__, rcToReturn= rc)) return
1602
1602
1603
+ call cplFieldGet(state,' vegetation_type' , farrayPtr2d= vtype, rc= localrc)
1604
+ if (ESMF_LogFoundError(rcToCheck= localrc, msg= ESMF_LOGERR_PASSTHRU, &
1605
+ line= __LINE__, file= __FILE__, rcToReturn= rc)) return
1606
+
1603
1607
else
1604
1608
1605
1609
call cplFieldGet(state,' inst_liq_nonconv_tendency_levels' , &
@@ -1725,6 +1729,7 @@ subroutine update_atmos_chemistry(state, rc)
1725
1729
! stype(i,j) = real(int( GFS_Data(nb)%Sfcprop%stype(ix)+0.5 ), kind=ESMF_KIND_R8)
1726
1730
! endif
1727
1731
stype = real (int (reshape (GFS_Sfcprop% stype, shape (stype))+ 0.5 ), kind= ESMF_KIND_R8 )
1732
+ vtype = real (int (reshape (GFS_Sfcprop% vtype, shape (vtype))+ 0.5 ), kind= ESMF_KIND_R8 )
1728
1733
if (GFS_Control% isot == 1 ) then
1729
1734
where (slmsk == 2 ) stype = 16._ESMF_KIND_R8
1730
1735
else
@@ -1811,6 +1816,7 @@ subroutine update_atmos_chemistry(state, rc)
1811
1816
write (6 ,' ("update_atmos: vfrac - min/max/avg",3g16.6)' ) minval (vfrac), maxval (vfrac), sum (vfrac)/ size (vfrac)
1812
1817
write (6 ,' ("update_atmos: xlai - min/max/avg",3g16.6)' ) minval (xlai), maxval (xlai), sum (xlai)/ size (xlai)
1813
1818
write (6 ,' ("update_atmos: stype - min/max/avg",3g16.6)' ) minval (stype), maxval (stype), sum (stype)/ size (stype)
1819
+ write (6 ,' ("update_atmos: vtype - min/max/avg",3g16.6)' ) minval (vtype), maxval (vtype), sum (vtype)/ size (vtype)
1814
1820
else
1815
1821
write (6 ,' ("update_atmos: flake - min/max/avg",3g16.6)' ) minval (flake), maxval (flake), sum (flake)/ size (flake)
1816
1822
write (6 ,' ("update_atmos: focn - min/max/avg",3g16.6)' ) minval (focn), maxval (focn), sum (focn)/ size (focn)
@@ -3344,7 +3350,7 @@ subroutine setup_exportdata(rc)
3344
3350
!- -- Instantaneous quantities
3345
3351
! Instantaneous mean layer pressure (Pa)
3346
3352
case (' inst_pres_levels' )
3347
- call block_data_copy_or_fill(datar8 3d, GFS_statein% prsl, zeror8 , Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
3353
+ call block_data_copy_or_fill(datar8 3d, GFS_statein% prsl, zeror8 , Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
3348
3354
! Instantaneous geopotential at model layer centers (m2 s-2)
3349
3355
case (' inst_geop_levels' )
3350
3356
call block_data_copy_or_fill(datar8 3d, GFS_statein% phil, zeror8 , Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
@@ -3356,7 +3362,7 @@ subroutine setup_exportdata(rc)
3356
3362
call block_data_copy_or_fill(datar8 3d, GFS_statein% vgrs, zeror8 , Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
3357
3363
! Instantaneous surface roughness length (cm)
3358
3364
case (' inst_surface_roughness' )
3359
- call block_data_copy(datar8 2d, GFS_sfcprop% zorl, Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
3365
+ call block_data_copy(datar8 2d, GFS_sfcprop% zorl, Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
3360
3366
! Instantaneous u wind (m/s) 10 m above ground
3361
3367
case (' inst_zonal_wind_height10m' )
3362
3368
call block_data_copy(datar8 2d, GFS_coupling% u10mi_cpl, Atm_block, nb, offset= GFS_Control% chunk_begin(nb), rc= localrc)
0 commit comments