wiki:CarbonCyclePage

Version 39 (modified by nbouttes, 4 years ago) (diff)

--

Description of the Carbon Cycle procedures to use the iLOVECLIM carbon cycle version


1. Preindustrial run with the carbon cycle (PI-CC)

Things to do / check:

1) In general the run is started from the pre-indutrial control simulation with carbon, it is thus a restart simulation.

In ocycc/sources/loveclim_transfer_mod.f90 : change KLSR to 1 to have a restart (KLRS=0 for a fresh start)

2) In veccarb/sources/carbone_co2.f90: new_run_c should be set to 0 (if run without c13 values for the vegetation-> set to 1)

3) In ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h), most flags should be kept at 0, except (as of february 2020):

By default:

IMSK 1
COMATM 1
ROUTEAU 1
EVAPTRS 1
EVAPSI 1
F_PALAEO 0

For the carbon cycle:

CYCC 2 -> to activate the atmospheric carbon cycle
OCYCC 1 -> to activate the oceanic carbon cycle
OLDC14 0
KC14 1
KC14P 0
OXNITREUX 0
WINDINCC 0
O2ATM 0
N2OATM 0
MEDUSA 0
PATH 1
LGMSWITCH 0

Note: PaTh? is now activated by default, but you could deactivate it if you wish (PATH 0).

4) To activate the vegetation code:

T VECODE

in ecbilt_clio/parameters/emic.param

5) To modify the ocean outputs: in clio/parameters/netcdfout.param
Beware! for the carbon cycle: output set to 100 per file!!

6) For the PaTh?:

  • Set restart_path = .TRUE. in iloveclim/ocycc/sources/path_mod.f90
  • Check that the four Pa-Th outputs are set to T in ludus-code/clio/parameters/netcdfout.param-scal17

7) Restart

PREVIOUS:

  • With Pa/Th? the restart from L. Missiaen: -s 67800 -S /home/acclimate/lmissi/iloveclim_lr/wkdir/preind_eq_2ky_v1_15Mar18_ecbilt_clio/run/restartdata/res067800

For example: ./bin/loveclim-new-run -l PI-CC -n 500 -r 250 -k -s 67800 -S /home/acclimate/lmissi/iloveclim_lr/wkdir/preind_eq_2ky_v1_15Mar18_ecbilt_clio/run/restartdata/res067800

or newer restart from F. Lhardy (revision 897):
/home/acclimate/flhardy/iloveclim/data/PI_oldmask_ecbilt_clio/ic071800

  • OR without Pa/Th? add: -s 65800 and -S /home/acclimate/smoreira/_PROJS_/004_iLOVECLIM_MED/20171211_iloveclim_parallel/trunk/wkdir/op02_NOMED_5ky_ecbilt_clio/run/restartdata/res065800

The previous initial state was: data/default/ic50800


NEWEST (recommanded, includes rest_cc.dat, with Pa/Th?):

-s 72802 -S /home/acclimate/nbouttes/iloveclim/wkdir/PI-test-CC-restart_ecbilt_clio/run/restartdata/res072802


2. LGM (and other periods)


2.1. To start an LGM run (LGM):

  • In ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h):

F_PALAEO 1 (or 0, to be discussed)
LGMSWITCH 1

  • Set the palaeo_year to 21000 in ludus-code/ecbilt/parameters/palaeo_transient_parameters.dat
  • Specify the parameters, inputdata and restart from scenario with something like:

./bin/loveclim-new-run -l lgm_nath -s 10000 -n 3000 -r 1000 –P scenario/lgm-pmip2-reb/parameters -I scenario/lgm-pmip2-reb/inputdata –S data/restart_lgm_Nath/ic010000

Note: at the moment restart from PI run instead of the given (old) LGM simulation


2.2. Other past periods:

  • change the GHG in GHG.dat (scenario/default/GHG.dat)
  • change the orbital parameters in namelist file

and do as for a PI restart run


2.3. To start an LGM run with the carbon cycle (LGM-CC):

./bin/loveclim-new-run -l mon_joli_lgm_CC -s 65800 -n 1000 -r 250 –P scenario/lgm-pmip3-cc1/parameters -I scenario/lgm-pmip3-cc1/inputdata -S /home/acclimate/smoreira/_PROJS_/004_iLOVECLIM_MED/20171211_iloveclim_parallel/trunk/wkdir/op02_NOMED_5ky_ecbilt_clio/run/restartdata/res065800
-> instead use restart with CC and PaTh? below

2.4. To start a LGM run with the carbon cycle and Pa-Th (LGM-CC-PaTh?):

  • In ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h):

PATH 1

  • Set restart_path = .TRUE. in iloveclim/ocycc/sources/path_mod.f90
  • Check that the four Pa-Th outputs are set to T in ludus-code/clio/parameters/netcdfout.param-scal17

Old restart:

./bin/loveclim-new-run -l testLGM_CC_PaTh -s 67800 -n 1000 -r 250 –P scenario/lgm-pmip2-CC-PATH/parameters -I scenario/lgm-pmip2-CC-PATH/inputdata -S /home/acclimate/lmissi/iloveclim_lr/wkdir/preind_eq_2ky_v1_15Mar18_ecbilt_clio/run/restartdata/res067800

New restart (July 2018):

./bin/loveclim-new-run -l testLGM_CC_PaTh -s 75800 -n 1000 -r 250 –P scenario/lgm-pmip2-CC-PATH/parameters -I scenario/lgm-pmip2-CC-PATH/inputdata -S /home/acclimate/flhardy/iloveclim/wkdir/rec-LGM_ref_ecbilt_clio/run/restartdata/res075800


3. Other options in simulations


3.1. To simulate the sinking of brines:

  • OLD: Set use_brines to 1 in clio/sources/clio.f
    NEW: set BRINES to 1 in ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h)
  • Set frac to a value between 0 (no brines) and 1 (maximum effect) in clio/sources/brines.f.


3.2. To force the ice caps topography in LGM run using GRISLI:

  • In ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h):

F_PALAEO 2
ISM 3
LGMSWITCH 1

  • Check the choice of reference topography in /grisli/SOURCES/Fichiers-parametres/hemin40_param_list.dat
  • Check the path in iloveclim/config/config.obelix
  • To impose the LGM bathymetry, fractoc.dat, bath.om and mozaic.w are needed in inputdata/ directory
  • GRISLI needs to know the LGM bathymetry as well. Create a LGM.dat file in /grisli/INPUT/Forcage/ containing it

Beware! The option ISM 3 is not compatible with cold conditions in the model for now - unstable


3.3. To fix the vegetation to the PI
in emic.param set VECODE option to F instead of T


3.4. With new bathymetry

1) Modify/check choixcomposantes.h in scenario (scenario/deglaciation_pmip4_P_T/sources-2tr or scenario/deglaciation_pmip4_P_T/sources-17tr):
BATHY 2
F_PALAEO 3
ISM 3
SMB_TYP 1
CPLTYP 1
DOWNSTS 1
DOWNSCALING 1

Note: to have FWF on top:
APPLY_UNCORFWF 1
F_PALAEO_FWF 1

2) Specifify the date in ludus-code/ecbilt/parameters/palaeo_transient_parameters.dat (see LGM section earlier).

3) In ludus-code/ecbilt/inputdata/ point Gano_40k-0k_hemin40.nc towards ICE6G_26k-0k_hemin40_Aurelien.nc:
ln -s ICE6G_26k-0k_hemin40_Aurelien.nc Gano_40k-0k_hemin40.nc

4) In ludus-code/lbm/sources/routageEAU.f90: bricole_caspienne=.FALSE.

5) Change the path for GRISLI: in config/grisli.path change the line for:
/home/acclimate/aquiquet/GRISLI/GRISLI_iLoveclim

5) Specify inputdata, sources and restart (here from LGM):

With two tracers:
./bin/loveclim-new-run -l PI-bathy -n 10 -r 10 -k -z -I scenario/deglaciation_pmip4_P_T/inputdata_peltier -F scenario/deglaciation_pmip4_P_T/sources-2tr -P scenario/deglaciation_pmip4_P_T/parameters-2tr -s 97801 -S /home/acclimate/nbouttes/iloveclim_degla/data/bathy_P_21000yr_2_CC_FWF_17tr2_ecbilt_clio/ic097801 -v 1

With 17 tracers (Carbon cycle CC):
./bin/loveclim-new-run -l PI-CC-bathy -n 10 -r 10 -k -z -I scenario/deglaciation_pmip4_P_T/inputdata_peltier -F scenario/deglaciation_pmip4_P_T/sources-17tr -P scenario/deglaciation_pmip4_P_T/parameters-17tr -s 97801 -S /home/acclimate/nbouttes/iloveclim_degla/data/bathy_P_21000yr_2_CC_FWF_17tr2_ecbilt_clio/ic097801 -v 1


Restart from PI: -s 92801 -S /home/acclimate/flhardy/iloveclim/data/PI_20tr_t1.1_0.997_1.15_1.05_1.027_r25_ecbilt_clio/ic092801


Note : specify correct update_time_fism in input_subgrid2L.f90 (500 for Peltier, 100 for Tarasov)


3.5. With corals

  1. Activate the carbon cycle as in section 1.
  1. Activate the flag for corals in ecbilt_clio/global_flags/choixcomposantes.h:

CORAL 1


4. The different atmospheric CO2 concentrations in the model

  • PGACO2 = Radiative pCO2 for the atmosphere. In emic.f:
    !     Radiative:
                   IF(.NOT.lradCO2) PGACO2=PCO2ref
    


  • PCO2ref = constant to pre-industrial pCO2 levels...

in emic.f :

PCO2ref=277.4D0


  • patmCO2 is used to set the CO2 seen by the vegetation. In emic.f:
    !     Fertilization:
                   IF(lferCO2) then
                      patmCO2=PGACO2
                   ELSE
                      patmCO2=PCO2ref
                   ENDIF            ! lferCO2
    !
    
  • And used in VECODE as: (ccparam.f)
            nppt=npp*(1.0+(betat*LOG(co2ghg/280.)))
            nppg=npp*(1.0+(betag*LOG(co2ghg/280.)))
    
  • PA_C is the current CO2 in the carbon cycle for the atmosphere
  • PA0_C is the PA_C at restart
  • Link between CO2s: PGACO2 is reset in atmphy0.f from ghg(1), read in GHG.dat input file

5. Add fresh water fluxes

  • create new scenario directory with FWF scenario in fwf_input.dat
  • areas of FWF defined in: clio/inputdata/zonesOrmenfwf-data.dat (see Roche 2010)
  • in ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h):

#define UNCORFLUX 1
#define APPLY_UNCORFWF 1