Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CTSM5.3 spinup and hist at f09 #65

Open
3 tasks done
wwieder opened this issue Aug 21, 2024 · 28 comments
Open
3 tasks done

CTSM5.3 spinup and hist at f09 #65

wwieder opened this issue Aug 21, 2024 · 28 comments

Comments

@wwieder
Copy link
Collaborator

wwieder commented Aug 21, 2024

Lot's of moving pieces to get a 5.3 spinup started. I'll take notes here.

Description:

5.3 surface data (just f09 for now), including:

  • Bill's glacier changes
  • Fang's new fire datasets
    /glade/derecho/scratch/fangli/firedata/abm_0.5x0.5_simyr2000.c240821.nc for peak month of crop fires based on GFED5 for Li2024
    /glade/derecho/scratch/fangli/firedata/peatf_0.5x0.5_simyr2000.c240821.nc for new peatland fraction map for Li2024 based on Gumbricht et al. (2017) for regions south of 40ºN and Hugelius et al. (2020) for other areas

Code:

Parameter file that combines:. @samsrabin has this done

  • Li2024 from the fire PR
  • Linnia's hand tuned parameter file /glade/u/home/linnia/clm5ppe/pyth/CLM6_dev_handtuning/final_paramfiles/ctsm60_params.c240208_lh.nc
  • B4B dev parameter changes, for PPE (not critical for spinup, but needed for the 5.3.0 tag)

Case directory:
Locally:
/glade/u/home/slevis/cases_LMWG_dev/ctsm52026_f09_AD DONE
/glade/u/home/slevis/cases_LMWG_dev/ctsm52026_f09_SASU DONE
/glade/u/home/slevis/cases_LMWG_dev/ctsm52026_f09_pSASU DONE
/glade/u/home/slevis/cases_LMWG_dev/ctsm52026_f09_hist DONE


Sandbox:
Locally:
/glade/work/slevis/git/ans_chging_tag_1 (sorry if the directory name is confusing)
git branch: new_rawpftlai
git describe: ctsm5.2.026-28-g40aacf6e9 (before making and pushing new branch tag)
git describe: branch_tags/ctsm5.3.n01_ctsm5.2.026


user_nl_ changes:
AD

use_init_interp = .true.
finidat = '/glade/derecho/scratch/slevis/archive/ctsm52018_f09_xsiceON_acON_pSASU/rest/0201-01-01-00000/ctsm52018_f09_xsiceON_acON_pSASU.clm2.r.0201-01-01-00000.nc'
fsurdat = '/glade/work/slevis/git/mksurfdata_toolchain/tools/mksurfdata_esmf/surfdata_0.9x1.25_hist_1850_78pfts_c240826.nc'
paramfile = '/glade/work/samrabin/ctsm_fire-li2024-pr2_paramfiles/ctsm60_params.c240822.nc'

! turn off shifting cultivation
do_grossunrep = .false.

! do this for spinup
reseed_dead_plants = .true.

! do this for isotopes
use_c13 = .true.
use_c14 = .true.
use_c13_timeseries = .true.
use_c14_bombspike = .true.

SASU difference from AD

20c20,21
< finidat = '/glade/derecho/scratch/slevis/archive/ctsm52026_f09_AD/rest/0041-01-01-00000/ctsm52026_f09_AD.clm2.r.0041-01-01-00000.nc'
---
> use_init_interp = .true.
> finidat = '/glade/derecho/scratch/slevis/archive/ctsm52018_f09_xsiceON_acON_pSASU/rest/0201-01-01-00000/ctsm52018_f09_xsiceON_acON_pSASU.clm2.r.0201-01-01-00000.nc'

pSASU diff from SASU

20c20
< finidat = '/glade/derecho/scratch/slevis/archive/ctsm52026_f09_SASU/rest/0161-01-01-00000/ctsm52026_f09_SASU.clm2.r.0161-01-01-00000.nc'
---
> finidat = '/glade/derecho/scratch/slevis/archive/ctsm52026_f09_AD/rest/0041-01-01-00000/ctsm52026_f09_AD.clm2.r.0041-01-01-00000.nc'

hist diff from pSASU

5c5,6
<  co2_type = 'diagnostic'
---
>  co2_ppmv = 284.7
>  co2_type = 'constant'
13c14
<  finidat = '/glade/derecho/scratch/slevis/ctsm52026_f09_pSASU/run/ctsm52026_f09_pSASU.clm2.r.0421-01-01-00000.nc'
---
>  finidat = '/glade/derecho/scratch/slevis/ctsm52026_f09_SASU/run/ctsm52026_f09_SASU.clm2.r.0271-01-01-00000.nc'
28c29
<  irrigate = .true.
---
>  irrigate = .false.
71d71
<  use_init_interp = .true.
86d85
<  model_year_align_ndep = 1850
90c89
<  stream_fldfilename_ndep = '/glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/ndepdata/fndep_clm_hist_b.e21.BWHIST.f09_g17.CMIP6-historical-WACCM.ensmean_1849-2015_monthly_0.9x1.25_c180926.nc'
---
>  stream_fldfilename_ndep = '/glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/ndepdata/fndep_clm_WACCM6_CMIP6piControl001_y21-50avg_1850monthly_0.95x1.25_c180802.nc'
93c92
<  stream_year_last_ndep = 2015
---
>  stream_year_last_ndep = 1850
96d94
<  model_year_align_popdens = 1850
101c99
<  stream_year_last_popdens = 2016
---
>  stream_year_last_popdens = 1850
104d101
<  model_year_align_urbantv = 1850
108c105
<  stream_year_last_urbantv = 2106
---
>  stream_year_last_urbantv = 1850
168,173d164
<  do_harvest = .true.
<  do_transient_crops = .true.
<  do_transient_lakes = .true.
<  do_transient_pfts = .true.
<  do_transient_urban = .true.
<  flanduse_timeseries = '/glade/work/slevis/git/mksurfdata_toolchain/tools/mksurfdata_esmf/landuse.timeseries_0.9x1.25_hist_1850-2023_78pfts_c240826.nc'
182d172
<  check_dynpft_consistency = .false.
185d174
<  init_interp_method = 'general'
331a321
>  reseed_dead_plants = .true.
361,364d350
<  stream_fldfilename_exice = '/glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/paramdata/exice_init_0.125x0.125_c20220516.nc'
<  stream_mapalgo_exice = 'bilinear'
<  stream_meshfile_exice = '/glade/campaign/cesm/cesmdata/inputdata/lnd/clm2/paramdata/exice_init_0.125x0.125_ESMFmesh_cdf5_c20220802.nc'
<  use_excess_ice_streams = .true.

SourceMods:
NONE


Diagnostics:
Diagnostics for last 20 years of pSASU compared to last 20 years of pSASU for ctsm52018_f09_xsiceON_acON_pSASU (Issue #62 ):

https://webext.cgd.ucar.edu/I1850/ctsm52026_f09_pSASU/lnd/ctsm52026_f09_pSASU_401_420-ctsm52018_f09_xsiceON_acON_pSASUl_221_240/setsIndex.html

Standard diagnostics for historical compared to #62

https://webext.cgd.ucar.edu/I20TR/ctsm52026_f09_hist/lnd/ctsm52026_f09_hist_2004_2023-ctsm52018_f09_xsiceON_acON_hist_2004_2023/setsIndex.html

ILAMB diagnostics:

https://webext.cgd.ucar.edu/I20TR/ctsm52026_f09_hist/lnd/_build_ctsm52026_f09_hist/
Note that the labeling refers to issue number, e.g, this issue number, I65.

Also see this for survivability and max LAI:

https://docs.google.com/presentation/d/1m-9wXGc3Jh8J4Vi4VUjw4U-hI7YQe-5E/edit?usp=drive_link&ouid=104026900087612515425&rtpof=true&sd=true


Output:
Output (if still available):
/glade/scratch/$USER/archive/$CASE/


Contacts:
@slevis-lmwg


Extra details:
We will cycle 1901-1920 of datm, starting with finidat from #62, and completing this sequence:
AD 40 yrs --> SASU 270 yrs (~16% land area in disequilibrium in TOTECOSYSC) --> pSASU 420 yrs (3.43%) --> hist modeled after Daniel's approach described here:
We ran a long spinup for the default parameters and used that as initial conditions for all ensemble members. Then for each new parameter set we ran, 20year AD, 80 years SASU, 40 years postSASU cycling a ten year forcing dataset.

./create_newcase --case ~/cases_LMWG_dev/ctsm52026_f09_AD --compset I1850Clm60BgcCropCru --res f09_g17 --run-unsupported
./create_clone --clone ~slevis/cases_LMWG_dev/ctsm52026_f09_AD --case ~slevis/cases_LMWG_dev/ctsm52026_f09_SASU
./create_clone --clone ~slevis/cases_LMWG_dev/ctsm52026_f09_SASU --case ~slevis/cases_LMWG_dev/ctsm52026_f09_pSASU
./create_clone --clone ~slevis/cases_LMWG_dev/ctsm52018_f09_xsiceON_acON_hist/ --case ~slevis/cases_LMWG_dev/ctsm52026_f09_hist
@samsrabin

This comment was marked as resolved.

@wwieder
Copy link
Collaborator Author

wwieder commented Aug 21, 2024

Are the b4b parameter file changes the ones from this PR?

Yes, I'll link above too for clarity

@samsrabin samsrabin moved this to In progress - master/b4b-dev in CTSM: Upcoming tags Aug 22, 2024
@samsrabin
Copy link
Member

I made new ctsm60 parameter files , starting with @slevis-lmwg's most recent (ctsm60_params.c240814.nc), then applying Linnia's changes, then applying Fang's.

I checked for conflicts at both steps. Sam L. and Linnia modified different parameters, so nothing there. Linnia and Fang both modified froot_leaf, but fortunately different PFTs, so no conflicts there either.

The files are in /glade/work/samrabin/ctsm_fire-li2024-pr2_paramfiles/:

  1. ctsm60_params.c240822.li2021gswpfrc.nc: The version with just Linnia's changes added to Sam L.'s. This should be the default for clm6_0 runs with the li2021gswpfrc fire_method.
  2. ctsm60_params.c240822.li2024gswpfrc.nc: Applied Fang's new parameterizations for GSWP3 forcings onto the above paramfile. Should be the default for clm6_0 runs with the li2024gswpfrc fire_method.
  3. ctsm60_params.c240822.li2024crujra.nc: Applied Fang's new parameterizations for CRU-JRA forcings onto the above paramfile. Should be the default for all other clm6_0 runs.

I didn't think I should apply Linnia's and Fang's changes to any of the other paramfiles (clm45_params, clm50_params, ctsm51_params, ctsm60_params_cn30), but let me know if I'm wrong there. If I'm not, then the c240814 versions of those parameter files can just be copied to c240822 versions.

@wwieder
Copy link
Collaborator Author

wwieder commented Aug 23, 2024

Thanks for merging these, Sam. I'm curious what changes made to feoot_leaf (and for what reason)?

I don't think we want to change parameter files for older physics versions.

We'll likely have to discuss how best to handle options for different datm options, but that can happen over the fall.

@samsrabin
Copy link
Member

Left-hand side of <> gives the values Linnia and Fang started with; right gives their new values:

$ nccmp -dfs -v froot_leaf $linnia_base $linnia
DIFFER : VARIABLE : froot_leaf : POSITION : [1] : VALUES : 1.5 <> 1.7693
DIFFER : VARIABLE : froot_leaf : POSITION : [2] : VALUES : 1.5 <> 1.7945
DIFFER : VARIABLE : froot_leaf : POSITION : [11] : VALUES : 1.2 <> 1.7915
DIFFER : VARIABLE : froot_leaf : POSITION : [12] : VALUES : 1.2 <> 1.7924

$ nccmp -dfs -v froot_leaf $fang_base $fang_gswp
DIFFER : VARIABLE : froot_leaf : POSITION : [6] : VALUES : 1.5 <> 0.5
DIFFER : VARIABLE : froot_leaf : POSITION : [14] : VALUES : 1.5 <> 0.5

$ nccmp -dfs -v froot_leaf $fang_base $fang_crujra
DIFFER : VARIABLE : froot_leaf : POSITION : [6] : VALUES : 1.5 <> 0.5
DIFFER : VARIABLE : froot_leaf : POSITION : [14] : VALUES : 1.5 <> 0.5

My note from Fang says, "Changed froot_leaf of tropical BDT and C4 grass to 0.5, so more new carbon goes to the leaves to represent faster post-fire recovery as observed."

@wwieder
Copy link
Collaborator Author

wwieder commented Aug 23, 2024

Thanks. Let's see how things look in the initial 5.3 simulations and we can evaluate

@lifang0209
Copy link

@wwieder @samsrabin I modified froot_leaf for BDT tropical (PFT=6) and C4 grass (PFT=14) in the parameter file because in tropical savannas, where fires are frequent, observations show that root burning and damage during fires are much less than leaf burning for these two PFTs and leaves recover quickly after fires. This means new carbon should be allocated more to leaves than to roots for the 2 PFTs

@linniahawkins
Copy link
Collaborator

I expect Fang's reduction of froot_leaf in BDT tropical & C4 grass to actually help the low LAI bias in tropical savannas (independent of fire feedbacks). Our CLM5.1 LAI tuning suggested reductions for these two PFTs as well.

@slevis-lmwg
Copy link
Collaborator

slevis-lmwg commented Aug 26, 2024

I made new ctsm60 parameter files , starting with @slevis-lmwg's most recent (ctsm60_params.c240814.nc), then applying Linnia's changes, then applying Fang's.

I checked for conflicts at both steps. Sam L. and Linnia modified different parameters, so nothing there. Linnia and Fang both modified froot_leaf, but fortunately different PFTs, so no conflicts there either.

The files are in /glade/work/samrabin/ctsm_fire-li2024-pr2_paramfiles/:

  1. ctsm60_params.c240822.li2021gswpfrc.nc: The version with just Linnia's changes added to Sam L.'s. This should be the default for clm6_0 runs with the li2021gswpfrc fire_method.
  2. ctsm60_params.c240822.li2024gswpfrc.nc: Applied Fang's new parameterizations for GSWP3 forcings onto the above paramfile. Should be the default for clm6_0 runs with the li2024gswpfrc fire_method.
  3. ctsm60_params.c240822.li2024crujra.nc: Applied Fang's new parameterizations for CRU-JRA forcings onto the above paramfile. Should be the default for all other clm6_0 runs.

I didn't think I should apply Linnia's and Fang's changes to any of the other paramfiles (clm45_params, clm50_params, ctsm51_params, ctsm60_params_cn30), but let me know if I'm wrong there. If I'm not, then the c240814 versions of those parameter files can just be copied to c240822 versions.

@samsrabin I am looking in /glade/work/samrabin/ctsm_fire-li2024-pr2_paramfiles, and I do not see the crujra.nc param file, which is the one that I need for this simulation.

@samsrabin
Copy link
Member

Oh sorry, that one is just ctsm60_params.c240822.nc.

@lifang0209
Copy link

@slevis-lmwg @samsrabin I want to clarify that the new set of parameters I provided is specifically for CTSM6 and should not be used with earlier CLM versions.
The file located at /glade/derecho/scratch/fangli/firedata/ctsm60_params.fire.final-CRUJRA.nc is for CTSM6 when driven by CRUJRA data. The only difference from the one for GSWP3 is rswf_max because CRUJRA is around 15% wetter than GSWP3 during the fire season.

@olyson
Copy link
Collaborator

olyson commented Sep 4, 2024

Diagnostics for last 20 years of pSASU compared to last 20 years of pSASU for ctsm52018_f09_xsiceON_acON_pSASU (Issue #62 ):

https://webext.cgd.ucar.edu/I1850/ctsm52026_f09_pSASU/lnd/ctsm52026_f09_pSASU_401_420-ctsm52018_f09_xsiceON_acON_pSASUl_221_240/setsIndex.html

JJA TLAI for last 20 years of pSASU for ctsm52026_f09_pSASU and ctsm52018_f09_xsiceON_acON_pSASU:

ctsm52026_f09_pSASU JJA TLAI polar

ctsm52018_f09_xsiceON_acON_pSASU JJA TLAI polar

@linniahawkins
Copy link
Collaborator

Seems encouraging? LAI is reduced but not dead!

@olyson
Copy link
Collaborator

olyson commented Sep 4, 2024

Agreed!

@wwieder
Copy link
Collaborator Author

wwieder commented Sep 5, 2024

Even more encouraging are the TOTVEGC totals 758 vs 962 PgC with new vs. old parameterizations! Can likely even take this lower with a full PPE calibration, but the LAI values look much improved, which was the aim for coupled model initial conditions. Thanks @linniahawkins!

Fire C fluxes and burned area are much higher, especially in tropical Savannas, once we have historical runs maybe @lifang0209 or @samsrabin can help us evaluate the fire behavior we're seeing?

@lifang0209
Copy link

@wwieder sure, I could evaluate the fire simulations. In GFED5, burned area is double that of GFED4s, and fire carbon emissions are 50% higher.

@wwieder
Copy link
Collaborator Author

wwieder commented Sep 5, 2024

Thanks Fang, I like a factor of 2 uncertainty in different versions of the same observational product. Hopefully that is a target we can hit! My larger concern is if we fall well above gfed5 estimates

@slevis-lmwg
Copy link
Collaborator

slevis-lmwg commented Sep 5, 2024

@wwieder before I take off for the weekend... Status of the historical simulation:
Latest history written ctsm52026_f09_hist.clm2.h0.1900-02.nc
I currently have this stopping in 1919 BUT if I get around to it, I will stop it when it writes the next restart file in 1904, so that I can kick off the next phase before I go.

UPDATE: Simulation not progressing fast enough for me to start the next phase before I go. It will wait for Friday evening or Saturday morning.

@slevis-lmwg
Copy link
Collaborator

@wwieder do we want this run to include the extra output starting in 2000 for assessing pft survival? For now I will assume yes.

@wwieder
Copy link
Collaborator Author

wwieder commented Sep 5, 2024

Yes, let's add the additional history output for the 21st century.

@samsrabin
Copy link
Member

@wwieder:

Fire C fluxes and burned area are much higher, especially in tropical Savannas, once we have historical runs maybe @lifang0209 or @samsrabin can help us evaluate the fire behavior we're seeing?

The increased burned area in tropical savannas makes sense given the increased allocation to leaves for tropical BDT and C4 grass from @lifang0209's new parameters.

@slevis-lmwg slevis-lmwg changed the title CTSM5.3 spinup CTSM5.3 spinup and hist at f09 Sep 9, 2024
@slevis-lmwg
Copy link
Collaborator

This spin-up and hist have completed.

@olyson
Copy link
Collaborator

olyson commented Sep 13, 2024

Standard diagnostics for historical compared to #62

https://webext.cgd.ucar.edu/I20TR/ctsm52026_f09_hist/lnd/ctsm52026_f09_hist_2004_2023-ctsm52018_f09_xsiceON_acON_hist_2004_2023/setsIndex.html

ILAMB diagnostics:

https://webext.cgd.ucar.edu/I20TR/ctsm52026_f09_hist/lnd/_build_ctsm52026_f09_hist/
Note that the labeling refers to issue number, e.g, this issue number, I65.

NOTE: fire_method = li2024crujra not actually implemented in I65 due to namelist problem.

@wwieder
Copy link
Collaborator Author

wwieder commented Sep 13, 2024

This is great, thanks Keith. I'd be curious to look at dead pft's if we're able to at some point, but no rush.

Props to @linniahawkins and the rest of the PPE team. This hand tuned parameter set has big improvements on LAI, biomass C, and cumulative land source / sink, as intended.

@olyson
Copy link
Collaborator

olyson commented Sep 13, 2024

Please see this for polar plot of TLAI, and PFT survivability and max TLAI. Deciduous tropical tree TLAI is quite high. But maybe because froot_leaf was changed for the new fire model but the new fire model wasn't actually implemented here?

https://docs.google.com/presentation/d/1m-9wXGc3Jh8J4Vi4VUjw4U-hI7YQe-5E/edit?usp=drive_link&ouid=104026900087612515425&rtpof=true&sd=true

@samsrabin
Copy link
Member

samsrabin commented Sep 13, 2024

Please see this for polar plot of TLAI, and PFT survivability and max TLAI. Deciduous tropical tree TLAI is quite high. But maybe because froot_leaf was changed for the new fire model but the new fire model wasn't actually implemented here?

Yep, that'd be my guess @olyson

@wwieder
Copy link
Collaborator Author

wwieder commented Sep 13, 2024

These PFT plots kind of get bewildering, but I'm concerned that C4 grasses aren't growing in savannah regions. Maybe because the deciduous tropical trees are so productive?

Larches are also going crazy now, with global LAI's around 9.

Lots more to dive into in the PPE!

@samsrabin
Copy link
Member

Yeah @wwieder, I wouldn't worry about tropical savannas here—the new fire setup should make a big difference.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants