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 to run with the carbon cycle:
1) 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 (nothing to do):
IMSK 1 COMATM 1 ROUTEAU 1 EVAPTRS 1 EVAPSI 1 F_PALAEO 0 OLDC14 0 KC14P 0 OXNITREUX 0 WINDINCC 0 O2ATM 0 N2OATM 0 MEDUSA 0 PATH 0 LGMSWITCH 0
For the carbon cycle:
CYCC 2 -> to activate the atmospheric carbon cycle OCYCC 1 -> to activate the oceanic carbon cycle KC14 1 -> for C14
2) Optionnal: to modify the ocean outputs: in ludus-code/clio/parameters/netcdfout.param-scal13 (of no carbon cycle: clio/parameters/netcdfout.param)
Beware! for the carbon cycle: output set to 100 per file!!
Also to modify the atmosphere outputs: in ecbilt/outp_atmos.param
3) Optionnal: to add the Pa/Th?:
In ecbilt_clio/global_flags/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
4) Restart (-s date -S Restart)
- NEWEST
03/07/2023 with standard bathymetry:
/home/climwork/nbouttes/iloveclim_remin/data/PI-CC17_ecbilt_clio/ic028500
- PREVIOUS versions:
22/11/2022 (Revision: 1627)
with standard bathymetry:
/home/climwork/nbouttes/iloveclim_coral/data/data/PI-CC7_ecbilt_clio/ic022500
with etopo1 bathymetry with standard paramaters:
/home/climwork/nbouttes/iloveclim_bathy/data/PI-CC_bathy_10_ecbilt_clio/ic027500
with etopo1 bathymetry with sediment paramaters:
/home/climwork/ncolle/iloveclim/data/sed_2000y_v2_ecbilt_clio/ic028500
25/10/2022
with standard bathymetry:/home/acclimate/nbouttes/iloveclim_CC/data/PI-CC35_ecbilt_clio/ic021500
06/10/2020
with standard bathymetry: /home/clim01/nbouttes/iloveclim_coastal/data/PI-CC_r1309_2_ecbilt_clio/ic023000
with etopo1 bathymetry:/home/acclimate/nbouttes/iloveclim_degla2/data/bathy_P_0yr_CC_3_ecbilt_clio/ic026001[[BR]]
Exemple: ./bin/run-iloveclim -l PI-CC -n 1 -r 1 -v 1 -s 23000 -S /home/clim01/nbouttes/iloveclim_coastal/data/PI-CC_r1309_2_ecbilt_clio/ic023000
03/2020 restart, with new OCYCC:
-s 19000 -S /home/acclimate/roche/tmp/OCYCC_0612_03_ecbilt_clio/startdata
- 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/run-iloveclim -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
Then restart was: (includes rest_cc.dat, with Pa/Th?):
-s 72802 -S /home/acclimate/nbouttes/iloveclim/wkdir/PI-test-CC-restart_ecbilt_clio /run/restartdata/res072802
Things you might want to change:
Things that are now by default, which you might want to change:
- 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 : KLSR is set to 1 to have a restart, you can change to KLRS=0 for a fresh start.
- In veccarb/sources/carbone_co2.f90: new_run_c should is set to 0 (if run without c13 values for the vegetation-> set to 1)
- The vegetation code is activated in ecbilt_clio/parameters/emic.param (set to F not to have it):
T VECODE
2. Past periods (including LGM)
2.1. To start an LGM run (LGM):
Using the ice sheets from Ganopolski anf Calov, orbital parameters from Berger and GHG from ice cores.
- In ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h):
F_PALAEO 1 (or 0, to be discussed)[[BR]] 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/run-iloveclim -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
2.2. Other past periods:
Method 1:
- 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
Method 2:
Or you can use F_PALAEO 1:
- In ecbilt_clio/global_flags/choixcomposantes.h (previously lbm/sources/choixcomposantes.h):
F_PALAEO 1 LGMSWITCH 0
- Set the palaeo_year to your date in ludus-code/ecbilt/parameters/palaeo_transient_parameters.dat
- gammat=0 in thersf.f
- comment LGMSWITCH in landmodel0
In addition, modify salinity, alk and nutrients according to change of ocean volume.
2.4. To add 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. To add fresh water fluxes
- create new scenario directory with FWF scenario in clio/inputdata/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
3.5. With ice sheet reconstruction and/or new bathymetry (Last Deglaciation)
see: http://forge.ipsl.jussieu.fr/ludus/wiki/Bathy
3.6. With corals
Beware: for now only with 13 tracers (no PaTh?) for the outputs + only annual outputs (no monthly)
- Activate the carbon cycle as in section 1.
- Activate the flag for corals in ecbilt_clio/global_flags/choixcomposantes.h:
CORAL 1
Restart:
./bin/run-iloveclim -l PI-corals -n 5 -r 5 -z -k -v 1 -s 23000 -S /home/clim01/nbouttes/iloveclim_coastal/data/PI-CC_r1309_2_ecbilt_clio/ic023000
Outputs:
- in carbon/Coral_output.txt:
NYR in years, total_area_an in km2, total_prod_coral_an in Pmol/year, total_mass_coral_and in Pg/year
- in ocean/CLIOxxx:
coral_prod in Pmol/year
coral_area in m2
CO32- in mol/kg? (to be verified)
Omega
3.7. With CO2 emissions
in ecbilt_clio/global_flags/choixcomposantes.h:
CEMIS=1
Needs file carbon_emission.dat in inputdata
file contains: year, CO2 emission for each year in Mt CO2/yr
3.8. Interactive carbon cycle
in ecbilt_clio/global_flags/choixcomposantes.h:
INTERACT_CYCC 1
3.9. Transient CO2 concentration historic and futur (with corals)
see:
http://forge.ipsl.jussieu.fr/ludus/wiki/palaeo_transient
3.10. Diffusion
Modified files: engtur.f and difftur.f in clio/sources
scenario: pi_tidemix
To run with tidemix=1 use:
-P scenario/pi-tidemix/parameters -I scenario/pi-tidemix/inputdata -F scenario/pi-tidemix/sources
To be done: second case with flag TIDEMIX=2
3.11. BIOMES
CLM_INDICES 2 BIOM_GEN 1
3.12. Sediments
Utiliser New_install_ludus.sh avec l'option -A
MEDUSA 1
Et mettre bottom_remin a 0 dans maphot.f !!
Pour faire un equilibre avec les sédiments, le plus rapide est d'effectuer une série d'aller - retour entre iLOVECLIM et MEDUSA avec :
- 1 000 ans de simulations couplée iLOVECLIM-MEDUSA
- Récupération des flux à l'interface, équilibre de MEDUSA en offline avec ncbdry
- répéter la procédure jusqu'à équilibre
Pour offline : avec ncbdry
Besoin de recompiler : modifier le Makefile
fichiers sauvegardes dans les deux tar
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. Carbon outputs
C_reservoirs.txt
1=year
2=CO2
4=C13atm
5=ocean carbon
7=veget carbon
9=total carbon
C_ocean.txt : ecrit dans mbiota.f
1=phyto
2=zoo
3=doc
4=sdoc
5=total poc
6=total carbon
7=ALK
8=NO3
9=PO4