From 27259b14110cf03f87b73974c1f5ef5f66d614f1 Mon Sep 17 00:00:00 2001 From: Samuel Levis Date: Thu, 5 Jun 2025 18:05:04 -0600 Subject: [PATCH 1/5] Update paths in gen_mksurfdata_namelist.xml and get mods from #3224 --- .../gen_mksurfdata_namelist.xml | 36 +++++++++---------- .../src/mkagfirepkmonthMod.F90 | 30 +++++++++------- 2 files changed, 35 insertions(+), 31 deletions(-) diff --git a/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml b/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml index 007be2e8bb..279c92308b 100644 --- a/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml +++ b/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml @@ -10,7 +10,7 @@ - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histMKSRFDeg025_250417/mksrf_landuse_ctsm53_pftlai_CLIM.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histMKSRFDeg025_250417/mksrf_landuse_ctsm53_pftlai_CLIM.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc @@ -21,7 +21,7 @@ - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histMKSRFDeg025_250417/mksrf_landuse_ctsm53_soilcolor_CLIM.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histMKSRFDeg025_250417/mksrf_landuse_ctsm53_soilcolor_CLIM.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc @@ -213,31 +213,31 @@ version of the raw dataset will probably go away. - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_1700.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_1700.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_1850.cdf5.c20220325.nc - /glade/campaign/cgd/tss/people/oleson/Dynamic_Urban_Data/CMIP7/urban_properties_CMIP7_ThreeClass_1700_c250423.nc + lnd/clm2/rawdata/CTSM54RawData/urban_properties/urban_properties_CMIP7_ThreeClass_1700_c250423.nc - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_1850.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_1850.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_1850.cdf5.c20220325.nc - /glade/campaign/cgd/tss/people/oleson/Dynamic_Urban_Data/CMIP7/urban_properties_CMIP7_ThreeClass_1850_c250423.nc + lnd/clm2/rawdata/CTSM54RawData/urban_properties/urban_properties_CMIP7_ThreeClass_1850_c250423.nc - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_2000.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_2000.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_2000.cdf5.c20220325.nc - /glade/campaign/cgd/tss/people/oleson/Dynamic_Urban_Data/CMIP7/urban_properties_CMIP7_ThreeClass_2000_c250423.nc + lnd/clm2/rawdata/CTSM54RawData/urban_properties/urban_properties_CMIP7_ThreeClass_2000_c250423.nc - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_2005.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_2005.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_2005.cdf5.c20220325.nc - /glade/campaign/cgd/tss/people/oleson/Dynamic_Urban_Data/CMIP7/urban_properties_CMIP7_ThreeClass_2005_c250423.nc + lnd/clm2/rawdata/CTSM54RawData/urban_properties/urban_properties_CMIP7_ThreeClass_2005_c250423.nc @@ -252,10 +252,10 @@ version of the raw dataset will probably go away. - /glade/campaign/cesm/development/lmwg/landuse_source_data/CTSM53CMIP7RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_%y.c250417.nc + lnd/clm2/rawdata/CTSM54RawData/globalctsm53histCMIP7Deg025_250417/mksrf_landuse_ctsm53_histCMIP7_%y.c250417.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc - /glade/campaign/cgd/tss/people/oleson/Dynamic_Urban_Data/CMIP7/urban_properties_CMIP7_ThreeClass_%y_c250423.nc + lnd/clm2/rawdata/CTSM54RawData/urban_properties/urban_properties_CMIP7_ThreeClass_%y_c250423.nc @@ -267,7 +267,7 @@ version of the raw dataset will probably go away. - /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP126Deg025_240728/mksrf_landuse_ctsm53_TRSSP126_%y.c240728.nc + lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP126Deg025_240728/mksrf_landuse_ctsm53_TRSSP126_%y.c240728.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc lnd/clm2/rawdata/gao_oneill_urban/ssp1/urban_properties_GaoOneil_05deg_ThreeClass_ssp1_%y_cdf5_c20220910.nc @@ -280,21 +280,21 @@ version of the raw dataset will probably go away. - /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP119Deg025_240728/mksrf_landuse_ctsm53_TRSSP119_%y.c240728.nc + lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP119Deg025_240728/mksrf_landuse_ctsm53_TRSSP119_%y.c240728.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc lnd/clm2/rawdata/gao_oneill_urban/ssp1/urban_properties_GaoOneil_05deg_ThreeClass_ssp1_%y_cdf5_c20220910.nc - /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP245Deg025_240728/mksrf_landuse_ctsm53_TRSSP245_%y.c240728.nc + lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP245Deg025_240728/mksrf_landuse_ctsm53_TRSSP245_%y.c240728.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc lnd/clm2/rawdata/gao_oneill_urban/ssp2/urban_properties_GaoOneil_05deg_ThreeClass_ssp2_%y_cdf5_c20220910.nc - /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP370Deg025_240728/mksrf_landuse_ctsm53_TRSSP370_%y.c240728.nc + lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP370Deg025_240728/mksrf_landuse_ctsm53_TRSSP370_%y.c240728.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc lnd/clm2/rawdata/gao_oneill_urban/ssp3/urban_properties_GaoOneil_05deg_ThreeClass_ssp3_%y_cdf5_c20220910.nc @@ -308,14 +308,14 @@ version of the raw dataset will probably go away. - /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP460Deg025_240728/mksrf_landuse_ctsm53_TRSSP460_%y.c240728.nc + lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP460Deg025_240728/mksrf_landuse_ctsm53_TRSSP460_%y.c240728.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc lnd/clm2/rawdata/gao_oneill_urban/ssp4/urban_properties_GaoOneil_05deg_ThreeClass_ssp4_%y_cdf5_c20220910.nc - /glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP585Deg025_240728/mksrf_landuse_ctsm53_TRSSP585_%y.c240728.nc + lnd/clm2/rawdata/CTSM53RawData/globalctsm53TRSSP585Deg025_240728/mksrf_landuse_ctsm53_TRSSP585_%y.c240728.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.25x0.25_nomask_cdf5_c200129.nc lnd/clm2/rawdata/lake_area/mksurf_lake_0.05x0.05_hist_clm5_hydrolakes_%y.cdf5.c20220325.nc lnd/clm2/rawdata/gao_oneill_urban/ssp5/urban_properties_GaoOneil_05deg_ThreeClass_ssp5_%y_cdf5_c20220910.nc diff --git a/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 b/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 index 6115e813f9..47caf70a69 100644 --- a/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 +++ b/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 @@ -20,9 +20,8 @@ module mkagfirepkmonthMod public :: mkagfirepkmon ! Set agricultural fire peak month - integer , parameter :: min_valid = 1 - integer , parameter :: max_valid = 12 - integer , parameter :: unsetmon = 13 + integer , parameter :: min_valid = 1 ! month value for January + integer , parameter :: max_valid = 13 ! value for no agricultural fire type(ESMF_DynamicMask) :: dynamicMask @@ -36,6 +35,10 @@ module mkagfirepkmonthMod subroutine mkagfirepkmon(file_mesh_i, file_data_i, mesh_o, pioid_o, rc) ! ! Make agricultural fire peak month data from higher resolution data + ! by selecting the dominant value from values 1 through 13 + ! where 13 means no agricultural fire. + ! + ! The relevant subroutine is get_dominant_indices. ! ! input/output variables character(len=*) , intent(in) :: file_mesh_i ! input mesh file name @@ -54,9 +57,9 @@ subroutine mkagfirepkmon(file_mesh_i, file_data_i, mesh_o, pioid_o, rc) integer :: k integer :: ni,no integer :: ns_i, ns_o - integer , allocatable :: mask_i(:) - real(r4), allocatable :: rmask_i(:) - real(r8), allocatable :: frac_o(:) + integer , allocatable :: mask_i(:) ! input grid: mesh file landmask + real(r4), allocatable :: rmask_i(:) ! input grid: raw dataset landmask + real(r8), allocatable :: frac_o(:) ! output grid: agricultural fire peak month integer , allocatable :: idata_i(:) ! input grid: agricultural fire peak month integer , allocatable :: agfirepkmon_o(:) ! agricultural fire peak month real(r4), pointer :: dataptr(:) @@ -142,6 +145,7 @@ subroutine mkagfirepkmon(file_mesh_i, file_data_i, mesh_o, pioid_o, rc) ! Create a dynamic mask object ! The dynamic mask object further holds a pointer to the routine that will be called in order to ! handle dynamically masked elements - in this case its DynMaskProc (see below) + ! This calls subroutine get_dominant_indices call ESMF_DynamicMaskSetR4R8R4(dynamicMask, dynamicMaskRoutine=get_dominant_indices, & handleAllElements=.true., rc=rc) if (chkerr(rc,__LINE__,u_FILE_u)) return @@ -163,8 +167,8 @@ subroutine mkagfirepkmon(file_mesh_i, file_data_i, mesh_o, pioid_o, rc) ! Check validity of output data if (min_bad(agfirepkmon_o, min_valid, 'agfirepkmon') .or. & - max_bad(agfirepkmon_o, unsetmon , 'agfirepkmon')) then - call shr_sys_abort() + max_bad(agfirepkmon_o, max_valid, 'agfirepkmon')) then + call shr_sys_abort(subname//" error in agfirepkmon_o value range; min_valid, max_valid are "//min_valid//", "//max_valid) end if ! Close the file @@ -178,7 +182,7 @@ subroutine mkagfirepkmon(file_mesh_i, file_data_i, mesh_o, pioid_o, rc) ! Output diagnostics comparing global area of each peak month on input and output grids call output_diagnostics_index(mesh_i, mesh_o, mask_i, frac_o, & - 1, 13, idata_i, agfirepkmon_o, 'peak fire month', ndiag, rc) + min_valid, max_valid, idata_i, agfirepkmon_o, 'peak fire month', ndiag, rc) if (chkerr(rc,__LINE__,u_FILE_u)) call shr_sys_abort() ! Release memory @@ -206,9 +210,9 @@ subroutine get_dominant_indices(dynamicMaskList, dynamicSrcMaskValue, dynamicDst ! input/output arguments type(ESMF_DynamicMaskElementR4R8R4) , pointer :: dynamicMaskList(:) - real(ESMF_KIND_R4) , intent(in), optional :: dynamicSrcMaskValue - real(ESMF_KIND_R4) , intent(in), optional :: dynamicDstMaskValue - integer , intent(out) :: rc + real(ESMF_KIND_R4) , intent(in), optional :: dynamicSrcMaskValue ! Source (i.e. input) grid mask + real(ESMF_KIND_R4) , intent(in), optional :: dynamicDstMaskValue ! Destination (i.e. output) grid mask + integer , intent(out) :: rc ! error status ! local variables integer :: ni, no, n @@ -239,7 +243,7 @@ subroutine get_dominant_indices(dynamicMaskList, dynamicSrcMaskValue, dynamicDst maxindex = maxloc(wts_o(:)) dynamicMaskList(no)%dstElement = real(maxindex(1), kind=r4) else - dynamicMaskList(no)%dstElement = real(unsetmon, kind=r4) + call shr_sys_abort(subname//" error: hasdata needs to be true") end if end do end if From f84e650f61f48326da2c82059680aef82c2b85f1 Mon Sep 17 00:00:00 2001 From: Samuel Levis Date: Tue, 17 Jun 2025 18:07:12 -0600 Subject: [PATCH 2/5] Update Makefile and .cfg file to accommodate changes in subset_data --- tools/mksurfdata_esmf/Makefile | 2 +- tools/mksurfdata_esmf/modify_1x1_urbanc_alpha.cfg | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/mksurfdata_esmf/Makefile b/tools/mksurfdata_esmf/Makefile index 835f732a02..b30f2abc3d 100644 --- a/tools/mksurfdata_esmf/Makefile +++ b/tools/mksurfdata_esmf/Makefile @@ -81,7 +81,7 @@ URBALPHA_TMP2_FNAME := surfdata_1x1_urbanc_alpha_hist_2000_78pfts_tmp.nc URBALPHA_FNAME := surfdata_1x1_urbanc_alpha_hist_2000_78pfts_c$(CDATE).nc SUBSETDATA_1X1_MEXICOCITY := --lat 19.5 --lon 260.5 --site 1x1_mexicocityMEX --out-surface $(MEXICOCITY_TMP_FNAME) SUBSETDATA_1X1_VANCOUVER := --lat 49.5 --lon 236.5 --site 1x1_vancouverCAN --out-surface $(VANCOUVER_TMP_FNAME) -SUBSETDATA_1X1_URBALPHA := --lat -37.7308 --lon 0 --site 1x1_urbanc_alpha --out-surface $(URBALPHA_TMP_FNAME) +SUBSETDATA_1X1_URBALPHA := --lat -37.7308 --lon 360 --site 1x1_urbanc_alpha --out-surface $(URBALPHA_TMP_FNAME) # ne120np4 and hi-res are for high resolution, ne16np4 is for mid-resolution testing # low-res is for low resolutions for testing diff --git a/tools/mksurfdata_esmf/modify_1x1_urbanc_alpha.cfg b/tools/mksurfdata_esmf/modify_1x1_urbanc_alpha.cfg index bdb27ac43d..1e509ccb8f 100644 --- a/tools/mksurfdata_esmf/modify_1x1_urbanc_alpha.cfg +++ b/tools/mksurfdata_esmf/modify_1x1_urbanc_alpha.cfg @@ -32,6 +32,8 @@ lnd_lat_2 = 90 lnd_lon_1 = 0 # easternmost longitude for rectangle lnd_lon_2 = 360 +# Upper limit of longitudes, from format being either [-180, 180] or [0, 360] +lon_type = 360 # user-defined mask in a file, as alternative to setting lat/lon values landmask_file = UNSET From c106c33e6aeb43e8d3c2bd33d3812bf500246757 Mon Sep 17 00:00:00 2001 From: Samuel Levis Date: Wed, 18 Jun 2025 14:38:47 -0600 Subject: [PATCH 3/5] Correct inadvertent conflict that crept in with one of the merges --- tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 b/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 index 3d6211ffe6..417658245c 100644 --- a/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 +++ b/tools/mksurfdata_esmf/src/mkagfirepkmonthMod.F90 @@ -250,7 +250,7 @@ subroutine get_dominant_indices(dynamicMaskList, dynamicSrcMaskValue, dynamicDst maxindex = maxloc(wts_o(:)) dynamicMaskList(no)%dstElement = real(maxindex(1), kind=r4) else - call shr_sys_abort(subname//" error: hasdata needs to be true") + dynamicMaskList(no)%dstElement = real(unsetmon, kind=r4) end if end do end if From f6a903e3200b31c85d8d233297f29ad8bdcbe992 Mon Sep 17 00:00:00 2001 From: Samuel Levis Date: Tue, 15 Jul 2025 11:09:49 -0600 Subject: [PATCH 4/5] Update to new abm raw dataset provided today by Fang Li --- tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml b/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml index 279c92308b..cd9a5b058a 100644 --- a/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml +++ b/tools/mksurfdata_esmf/gen_mksurfdata_namelist.xml @@ -168,7 +168,7 @@ version of the raw dataset will probably go away. - lnd/clm2/rawdata/mksrf_abm_0.5x0.5_simyr2000.c240821.nc + lnd/clm2/rawdata/mksrf_abm_0.5x0.5_simyr2000.c250715.nc lnd/clm2/mappingdata/grids/UNSTRUCTgrid_0.5x0.5_nomask_cdf5_c200129.nc From d3cf177e3c942eef92c06c1118cdecb7ca0dbfc2 Mon Sep 17 00:00:00 2001 From: Samuel Levis Date: Tue, 22 Jul 2025 17:54:16 -0600 Subject: [PATCH 5/5] Update default popdens stream file --- bld/namelist_files/namelist_defaults_ctsm.xml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/bld/namelist_files/namelist_defaults_ctsm.xml b/bld/namelist_files/namelist_defaults_ctsm.xml index 50e3cf68ad..fe10078c71 100644 --- a/bld/namelist_files/namelist_defaults_ctsm.xml +++ b/bld/namelist_files/namelist_defaults_ctsm.xml @@ -2168,15 +2168,14 @@ lnd/clm2/surfdata_esmf/NEON/ctsm5.3.0/surfdata_1x1_NEON_TOOL_hist_2000_78pfts_c2 2000 2000 -lnd/clm2/firedata/clmforc.Li_2017_HYDEv3.2_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2016_c180202.nc +lnd/clm2/firedata/clmforc.Li_2025_CMIP7_SSP3CMIP6_hdm_0.5x0.5_simyr1850-2100_c250717.nc lnd/clm2/firedata/clmforc.Li_2018_SSP1_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc lnd/clm2/firedata/clmforc.Li_2018_SSP1_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc lnd/clm2/firedata/clmforc.Li_2018_SSP2_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc -lnd/clm2/firedata/clmforc.Li_2018_SSP3_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc - +lnd/clm2/firedata/clmforc.Li_2025_CMIP7_SSP3CMIP6_hdm_0.5x0.5_simyr1850-2100_c250717.nc lnd/clm2/firedata/clmforc.Li_2018_SSP4_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc lnd/clm2/firedata/clmforc.Li_2018_SSP4_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc @@ -2186,15 +2185,14 @@ lnd/clm2/surfdata_esmf/NEON/ctsm5.3.0/surfdata_1x1_NEON_TOOL_hist_2000_78pfts_c2 lnd/clm2/firedata/clmforc.Li_2018_SSP5_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc -lnd/clm2/firedata/clmforc.Li_2017_HYDEv3.2_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2016_c180202.nc +lnd/clm2/firedata/clmforc.Li_2025_CMIP7_SSP3CMIP6_hdm_0.5x0.5_simyr1850-2100_c250717.nc lnd/clm2/firedata/clmforc.Li_2018_SSP1_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc lnd/clm2/firedata/clmforc.Li_2018_SSP1_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc lnd/clm2/firedata/clmforc.Li_2018_SSP2_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc -lnd/clm2/firedata/clmforc.Li_2018_SSP3_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc - +lnd/clm2/firedata/clmforc.Li_2025_CMIP7_SSP3CMIP6_hdm_0.5x0.5_simyr1850-2100_c250717.nc lnd/clm2/firedata/clmforc.Li_2018_SSP4_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc lnd/clm2/firedata/clmforc.Li_2018_SSP4_CMIP6_hdm_0.5x0.5_AVHRR_simyr1850-2100_c181205.nc