Skip to content

Commit

Permalink
MODIS snow cover fraction assimilation
Browse files Browse the repository at this point in the history
  • Loading branch information
biljanaorescanin authored Mar 1, 2024
2 parents ba4c406 + 7bb6a84 commit 970dbb8
Show file tree
Hide file tree
Showing 8 changed files with 1,489 additions and 162 deletions.
172 changes: 122 additions & 50 deletions src/Applications/LDAS_App/LDASsa_DEFAULT_inputs_ensupd.nml
Original file line number Diff line number Diff line change
Expand Up @@ -93,8 +93,8 @@ fcsterr_inflation_fac = -9999.
! 1 = horizontal
! 2 = vertical
! 3 = ...
! %N_ang = # angles in species
! %ang = vector of angles
! %N_ang = # satellite viewing angles in species (radiance obs only)
! %ang = vector of satellite viewing angles
! %freq = frequency [Hz]
! %FOV = field-of-view *radius*, see NOTES below
! (if FOV==0. equate obs footprint w/ tile)
Expand Down Expand Up @@ -239,8 +239,7 @@ fcsterr_inflation_fac = -9999.
obs_param_nml( 1)%descr = 'ae_l2_sm_a'
obs_param_nml( 1)%orbit = 1
obs_param_nml( 1)%pol = 0
obs_param_nml( 1)%N_ang = 1
obs_param_nml( 1)%ang(1) = 55.
obs_param_nml( 1)%N_ang = 0
obs_param_nml( 1)%freq = 10.65e9
obs_param_nml( 1)%FOV = 20.
obs_param_nml( 1)%FOV_units = 'km'
Expand Down Expand Up @@ -277,8 +276,7 @@ obs_param_nml( 1)%adapt = 0
obs_param_nml( 2)%descr = 'ae_l2_sm_d'
obs_param_nml( 2)%orbit = 2
obs_param_nml( 2)%pol = 0
obs_param_nml( 2)%N_ang = 1
obs_param_nml( 2)%ang(1) = 55.
obs_param_nml( 2)%N_ang = 0
obs_param_nml( 2)%freq = 10.65e9
obs_param_nml( 2)%FOV = 20.
obs_param_nml( 2)%FOV_units = 'km'
Expand Down Expand Up @@ -537,8 +535,7 @@ obs_param_nml( 8)%adapt = 0
obs_param_nml( 9)%descr = 'ae_sm_LPRM_a_C'
obs_param_nml( 9)%orbit = 1
obs_param_nml( 9)%pol = 0
obs_param_nml( 9)%N_ang = 1
obs_param_nml( 9)%ang(1) = 55.
obs_param_nml( 9)%N_ang = 0
obs_param_nml( 9)%freq = 6.925e9
obs_param_nml( 9)%FOV = 20.
obs_param_nml( 9)%FOV_units = 'km'
Expand Down Expand Up @@ -575,8 +572,7 @@ obs_param_nml( 9)%adapt = 0
obs_param_nml(10)%descr = 'ae_sm_LPRM_d_C'
obs_param_nml(10)%orbit = 2
obs_param_nml(10)%pol = 0
obs_param_nml(10)%N_ang = 1
obs_param_nml(10)%ang(1) = 55.
obs_param_nml(10)%N_ang = 0
obs_param_nml(10)%freq = 6.925e9
obs_param_nml(10)%FOV = 20.
obs_param_nml(10)%FOV_units = 'km'
Expand Down Expand Up @@ -613,8 +609,7 @@ obs_param_nml(10)%adapt = 0
obs_param_nml(11)%descr = 'ae_sm_LPRM_a_X'
obs_param_nml(11)%orbit = 1
obs_param_nml(11)%pol = 0
obs_param_nml(11)%N_ang = 1
obs_param_nml(11)%ang(1) = 55.
obs_param_nml(11)%N_ang = 0
obs_param_nml(11)%freq = 10.65e9
obs_param_nml(11)%FOV = 20.
obs_param_nml(11)%FOV_units = 'km'
Expand Down Expand Up @@ -651,8 +646,7 @@ obs_param_nml(11)%adapt = 0
obs_param_nml(12)%descr = 'ae_sm_LPRM_d_X'
obs_param_nml(12)%orbit = 2
obs_param_nml(12)%pol = 0
obs_param_nml(12)%N_ang = 1
obs_param_nml(12)%ang(1) = 55.
obs_param_nml(12)%N_ang = 0
obs_param_nml(12)%freq = 10.65e9
obs_param_nml(12)%FOV = 20.
obs_param_nml(12)%FOV_units = 'km'
Expand Down Expand Up @@ -1210,43 +1204,40 @@ obs_param_nml(24)%adapt = 0

! --------------------------------------------------------------------
!
! 21 = MODIS SCF
!
! TO DO: which platform?
! TO DO: figure out orbit (day!)

obs_param_nml(25)%descr = 'MODIS_SCF'
obs_param_nml(25)%orbit = 0
obs_param_nml(25)%pol = 0
obs_param_nml(25)%N_ang = 0
obs_param_nml(25)%freq = 0.
obs_param_nml(25)%FOV = 0.
obs_param_nml(25)%FOV_units = 'deg'
! 25 = [empty]

obs_param_nml(25)%descr = 'NULL'
obs_param_nml(25)%orbit = -9999
obs_param_nml(25)%pol = -9999
obs_param_nml(25)%N_ang = -9999
obs_param_nml(25)%freq = -9999.
obs_param_nml(25)%FOV = -9999.
obs_param_nml(25)%FOV_units = 'NULL'
obs_param_nml(25)%assim = .false.
obs_param_nml(25)%scale = .false.
obs_param_nml(25)%getinnov = .false.
obs_param_nml(25)%RTM_ID = 0
obs_param_nml(25)%bias_Npar = 0
obs_param_nml(25)%bias_trel = 864000
obs_param_nml(25)%bias_tcut = 432000
obs_param_nml(25)%RTM_ID = -9999
obs_param_nml(25)%bias_Npar = -9999
obs_param_nml(25)%bias_trel = -9999
obs_param_nml(25)%bias_tcut = -9999
obs_param_nml(25)%nodata = -9999.
obs_param_nml(25)%varname = 'asnow'
obs_param_nml(25)%units = 'm2/m2'
obs_param_nml(25)%path = ''
obs_param_nml(25)%name = ''
obs_param_nml(25)%maskpath = ''
obs_param_nml(25)%maskname = ''
obs_param_nml(25)%scalepath = ''
obs_param_nml(25)%scalename = ''
obs_param_nml(25)%flistpath = ''
obs_param_nml(25)%flistname = ''
obs_param_nml(25)%errstd = .0
obs_param_nml(25)%std_normal_max = 2.5
obs_param_nml(25)%zeromean = .true.
obs_param_nml(25)%varname = 'NULL'
obs_param_nml(25)%units = 'NULL'
obs_param_nml(25)%path = 'NULL'
obs_param_nml(25)%name = 'NULL'
obs_param_nml(25)%maskpath = 'NULL'
obs_param_nml(25)%maskname = 'NULL'
obs_param_nml(25)%scalepath = 'NULL'
obs_param_nml(25)%scalename = 'NULL'
obs_param_nml(25)%flistpath = 'NULL'
obs_param_nml(25)%flistname = 'NULL'
obs_param_nml(25)%errstd = -9999.
obs_param_nml(25)%std_normal_max = -9999.
obs_param_nml(25)%zeromean = .false.
obs_param_nml(25)%coarsen_pert = .false.
obs_param_nml(25)%xcorr = 0.
obs_param_nml(25)%ycorr = 0.
obs_param_nml(25)%adapt = 0
obs_param_nml(25)%xcorr = -9999.
obs_param_nml(25)%ycorr = -9999.
obs_param_nml(25)%adapt = -9999

! --------------------------------------------------------------------
!
Expand Down Expand Up @@ -1770,8 +1761,7 @@ obs_param_nml(38)%adapt = 0
obs_param_nml(39)%descr = 'SMAP_L2AP_FT_A'
obs_param_nml(39)%orbit = 1
obs_param_nml(39)%pol = 0
obs_param_nml(39)%N_ang = 1
obs_param_nml(39)%ang(1) = 40.
obs_param_nml(39)%N_ang = 0
obs_param_nml(39)%freq = 1.26e9
obs_param_nml(39)%FOV = 5.
obs_param_nml(39)%FOV_units = 'km'
Expand Down Expand Up @@ -1808,8 +1798,7 @@ obs_param_nml(39)%adapt = 0
obs_param_nml(40)%descr = 'SMAP_L2AP_FT_D'
obs_param_nml(40)%orbit = 2
obs_param_nml(40)%pol = 0
obs_param_nml(40)%N_ang = 1
obs_param_nml(40)%ang(1) = 40.
obs_param_nml(40)%N_ang = 0
obs_param_nml(40)%freq = 1.26e9
obs_param_nml(40)%FOV = 5.
obs_param_nml(40)%FOV_units = 'km'
Expand Down Expand Up @@ -2282,6 +2271,89 @@ obs_param_nml(51)%xcorr = 0.25
obs_param_nml(51)%ycorr = 0.25
obs_param_nml(51)%adapt = 0

! --------------------------------------------------------------------
!
! 52 = MODIS Aqua snow cover area fraction (SCF)
!
! MOD10C1.*.061: MODIS Aqua SCF, 0.05deg CMG, daytime (01:30pm local) ascending overpass, version V61
!
! for rule-based snow cover analysis (no obs error/pert specs)

obs_param_nml(52)%descr = 'MYD10C1'
obs_param_nml(52)%orbit = 1
obs_param_nml(52)%pol = 0
obs_param_nml(52)%N_ang = 0
obs_param_nml(52)%freq = 0.
obs_param_nml(52)%FOV = 0.
obs_param_nml(52)%FOV_units = 'deg'
obs_param_nml(52)%assim = .false.
obs_param_nml(52)%scale = .false.
obs_param_nml(52)%getinnov = .false.
obs_param_nml(52)%RTM_ID = 0
obs_param_nml(52)%bias_Npar = 0
obs_param_nml(52)%bias_trel = 864000
obs_param_nml(52)%bias_tcut = 432000
obs_param_nml(52)%nodata = -9999.
obs_param_nml(52)%varname = 'asnow'
obs_param_nml(52)%units = 'm2/m2'
obs_param_nml(52)%path = '/discover/nobackup/projects/S2SHMA/MODIS/MYD10C1_V61/'
obs_param_nml(52)%name = 'MYD10C1.Ayyyyddd.061.hdf'
obs_param_nml(52)%maskpath = ''
obs_param_nml(52)%maskname = ''
obs_param_nml(52)%scalepath = ''
obs_param_nml(52)%scalename = ''
obs_param_nml(52)%flistpath = ''
obs_param_nml(52)%flistname = ''
obs_param_nml(52)%errstd = -9999.
obs_param_nml(52)%std_normal_max = -9999.
obs_param_nml(52)%zeromean = .false.
obs_param_nml(52)%coarsen_pert = .false.
obs_param_nml(52)%xcorr = 0.
obs_param_nml(52)%ycorr = 0.
obs_param_nml(52)%adapt = 0

! --------------------------------------------------------------------
!
! 53 = MODIS Terra snow cover area fraction (SCF)
!
! MOD10C1.*.061: MODIS Terra SCF, 0.05deg CMG, daytime (10:30am local) descending overpass, version V61
!
! for rule-based snow cover analysis (no obs error/pert specs)

obs_param_nml(53)%descr = 'MOD10C1'
obs_param_nml(53)%orbit = 2
obs_param_nml(53)%pol = 0
obs_param_nml(53)%N_ang = 0
obs_param_nml(53)%freq = 0.
obs_param_nml(53)%FOV = 0.
obs_param_nml(53)%FOV_units = 'deg'
obs_param_nml(53)%assim = .false.
obs_param_nml(53)%scale = .false.
obs_param_nml(53)%getinnov = .false.
obs_param_nml(53)%RTM_ID = 0
obs_param_nml(53)%bias_Npar = 0
obs_param_nml(53)%bias_trel = 864000
obs_param_nml(53)%bias_tcut = 432000
obs_param_nml(53)%nodata = -9999.
obs_param_nml(53)%varname = 'asnow'
obs_param_nml(53)%units = 'm2/m2'
obs_param_nml(53)%path = '/discover/nobackup/projects/S2SHMA/MODIS/MOD10C1_V61/'
obs_param_nml(53)%name = 'MOD10C1.Ayyyyddd.061.hdf'
obs_param_nml(53)%maskpath = ''
obs_param_nml(53)%maskname = ''
obs_param_nml(53)%scalepath = ''
obs_param_nml(53)%scalename = ''
obs_param_nml(53)%flistpath = ''
obs_param_nml(53)%flistname = ''
obs_param_nml(53)%errstd = -9999.
obs_param_nml(53)%std_normal_max = -9999.
obs_param_nml(53)%zeromean = .false.
obs_param_nml(53)%coarsen_pert = .false.
obs_param_nml(53)%xcorr = 0.
obs_param_nml(53)%ycorr = 0.
obs_param_nml(53)%adapt = 0


! --------------------------------------------------------------------

/
Expand Down
2 changes: 1 addition & 1 deletion src/Applications/LDAS_App/tile_bin2nc4.F90
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ FUNCTION getAttribute (SHORT_NAME, LNAME, UNT) result (str_atr)
case ('TB_LAND_1410MHZ_40DEG_VPOL'); LONG_NAME = 'brightness_temperature_land_1410MHz_40deg_Vpol'; UNITS = 'K'

! Done for SM_L4

case ('Tair'); LONG_NAME = 'air_temperature_at_RefH'; UNITS = 'K'
case ('TA'); LONG_NAME = 'air_temperature_at_RefH'; UNITS = 'K'
case ('Qair'); LONG_NAME = 'specific_humidity_at_RefH'; UNITS = 'kg kg-1'
Expand Down
Loading

0 comments on commit 970dbb8

Please sign in to comment.