Version 61 (modified by nbouttes, 3 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 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:
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 0 LGMSWITCH 0
2) To modify the ocean outputs: in clio/parameters/netcdfout.param
Beware! for the carbon cycle: output set to 100 per file!!
3) Optionnal: for 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
NEWEST
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
Exemple: ./bin/run-iloveclim -l PI-CC -n 1 -r 1 -s 23000 /home/clim01/nbouttes/iloveclim_coastal/data/PI-CC_r1309_2_ecbilt_clio/ic023000
PREVIOUS:
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/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
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. LGM (and other periods)
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)
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:
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
2.3. Restart for the LGM with the carbon cycle (LGM-CC) (old):
./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 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 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 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 LGMSWITCH 0
Note: to have uncorrected FWF from ice sheets on top (not to be done in equilibrirum runs, only transient, otherwise issue with salinity computation):
APPLY_UNCORFWF 1 F_PALAEO_FWF 1
Note 2: to have corrected FWF from ice sheets on top:
APPLY_UNCORFWF 0 F_PALAEO_FWF 1
2) Specifify the date in ludus-code/ecbilt/parameters/palaeo_transient_parameters.dat (see LGM section earlier).
3) Choose the correct ice sheet reconstruction for topography in ludus-code/ecbilt/inputdata/
- For Peltier: ICE6G_26k-0k_hemin40_Aurelien.nc:
ln -s ICE6G_26k-0k_hemin40_Aurelien.nc Gano_40k-0k_hemin40.nc
This file has 105 time slices, with a time step of 250 years, the first time slice is 26k and the last one is 0.
- For Tarasov: GLAC1D_26k-0k_hemin40_Aurelien.nc
ln -s GLAC1D_26k-0k_hemin40_Aurelien.nc Gano_40k-0k_hemin40.nc
This file has 261 time slices, with a time step of 100 years, the first time slice is 26k and the last one is 0.
You will also need to modify in palaeo_timer_mod.f90 and input_subgrid2L.f90 the values of :
- nb_steps_fism
- update_time_fism
- time_max_fism
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
6) If you want to use berg.nc instead of berg.dat (for ice sheets also in SO):
/ecbilt_clio/global_flags/BC_switches.h
7) Specify inputdata, sources and restart (here starting from LGM):
Options to run the simulation with the correct scenarios:
- 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
- Or 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)
Note 2: for salinity
- If no FWF from ice sheets: the global salt mass is conserverd when bathymetry is changed, which modifies the global mean salinity
- If FWF from ice sheet: the global mean salinity is changed by the fresh water flux from ice sheets, while the global mean salinity is conserved when the bathymetry is changed.
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/loveclim-new-run -l PI-corals -n 5 -r 5 -z -k -v 1 -s 19000 -S /home/acclimate/roche/tmp/OCYCC_0612_03_ecbilt_clio/startdata
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.6. 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.7. 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
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