Instructions to setup an equilibrium or transient run with iLOVECLIM using the palaeo_transient timer and the ISM == 3 flag

NOTE: the use of this capability is possible as of changeset:417


The method is based on the coherent use of four forcing parameters necessary for all transient runs.
What need to be prescribed are the insolation evolution, the ice-sheet height, the ice-sheet extent (or ice-sheet mask for the albedo) and the greenhouse gases. To ensure a coherent evolution of all three forcings, a palaeo timer was developed that controls all these aspects and refer it to a unique date Before Present.

  • Insolation is computed based on Berger (1978)([ Berger, A. L.: Long-term variations of caloric insolation resulting from earths orbital elements, Quaternary Res., 9, 139–167, 1978]) and is done in the celest subroutine of file source:trunk/ecbilt/sources/atmphys0.f where the only difficulty is to provide a consistent year (fixed in case of an equilibrium, changing in case of a transient, potentially accelerated if need be).
  • Orography and ice-mask needs a reconstruction with a time evolution. The standard package of the current version of the model is using the ice-sheet simulation of Ganopolski and Calov (2011)([Ganopolski, A. and Calov, R.: The role of orbital forcing, carbon dioxide and regolith in 100 kyr glacial cycles, Clim. Past, 7, 1415-1425, doi:10.5194/cp-7-1415-2011, 2011]).
  • Greenhouse gases is reconstructed using information from the ice-cores and interpolation / interpretation. NEEDS references here


The first file to change as usual is the source:trunk/lbm/sources/choixcomposantes.h file. Set the following (only the first two are mandatory) with respect to the default:

  • #define ISM 3
  • #define LGM_SWITCH 1 see below for detailed explanations
  • #define ROUTEAU 1 
  • #define EVAPSI 1

Following you want to make sure that the greenhouse gas forcing and the insolation are varying by setting the corresponding flags in source:trunk/ecbilt/default-namelist

  • iscencel = 1 ! 0> use orbitals below, 1> use celest routine (transient)
  • iscenghg = 1 ! 0>GHG 1st line,1> transient

the other corresponding flags like isghgstrt have no longer an effect with the palaeo_transient timer.

Then the most important is to set the flags in source:trunk/ludus-code/ecbilt/parameters/palaeo_transient_parameters.dat It shows as follow:

	## Date BP (>0 is BP !!) to force the insolation, ice-sheets and GHGs
	150000  palaeo_year
	## irunlabel that corresponds to that year
	##  could be the begining of the simulation or a previous coherent time
	8000 ref_irunlabel
	## Acceleration factor: 1 = realtime, >1 is accelerated for slow B.C.
	## Beware that the acceleration factor should not change between the ref_irunlabel and the point where you are in the simulation
	## In case you want to change it from your restarting file, use the first year of the next simulations as a reference point
	1 accel_rt
	## Transient or equilibrium: will each new computed year be a new B.C. year or should the B.C. be fixed
	##  0 is transient, 1 is equilibrium
	0 equil_flag

where the comments are self-explanatory.
As an example, for a 21 ka BP run starting from a restart with index 5000 (e.g. an ic005000 directory) run as an equilibrium, non accelerated, you would use:

21000  palaeo_year
5000 ref_irunlabel
1 accel_rt
1 equil_flag

and so on.

Finally, it should be noted that this method uses a specific GHG.dat file for the greenhouse gases that is not in the standard path. You must thus run your experiment commands using something like:

./bin/loveclim-new-run -l my_nice_run -s 5000 -n 2000 -I ludus-code/ecbilt/inputdata

the rest of the files needed being set automatically.


The LGMSWITCH is set for fixing a few inconsistencies when using a non-standard land-sea mask (e.g. LGM).

  • In the CLIO part of the model, LGMSWITCH:
    • Suppress the melting below the ice-shelves
    • Adds 1.0 per mil in 18O if fresh start
  • In the lbm part of the model, LGMSWITCH:
    • Fixes incorrect zero land albedo values due to land-sea mask changes
  • In the OCYCC part of the model, LGMSWITCH:
    • Changes the carbon cycle initial value for LGM sea-level change for fresh start

Happy transient palaeo simulations!

problems, bugs etc. report to dmr

Future simulations : Transient runs with CO2 concentration (historic and futur)

This is to run simulations wih forced CO2 concentration in the radiative code (with F_PALEO=2). It uses scenarios from CMIP6, combining historic forcings + ssp126 or ssp585. With this following configuration the orbital parameters also change (although not important for a few hundred years) but the ice sheets do not evolve.


1) set values in ludus-code/ecbilt/parameters/palaeo_transient_parameter.dat:
Note that the date is in BP (1850 AD= 100 BP)

palaeo_year= 100

2) use scenarios:

  • For 2 tracers (climate only)
    • For SSP126:
      -F scenario/ssp126/sources_concentration -I scenario/ssp126/inputdata_concentration
    • For SSP585:
      -F scenario/ssp585/sources_concentration -I scenario/ssp585/inputdata_concentration
  • For 13 tracers with the carbon cycle
    • For SSP126:
      -F scenario/ssp126/sources_concentration_CC -I scenario/ssp126/inputdata_concentration
    • For SSP585:
      -F scenario/ssp585/sources_concentration_CC -I scenario/ssp585/inputdata_concentration
  • For 13 tracers (carbon cycle) and corals
    • For SSP126:
      -F scenario/ssp126/sources_concentration_CC_corals -I scenario/ssp126/inputdata_concentration
    • For SSP585:
      -F scenario/ssp585/sources_concentration_CC_corals -I scenario/ssp585/inputdata_concentration

If you want to use GHG with only CO2 changing (CH4 and N2O fixed to 1850 values), use:

-I scenario/ssp126/inputdata_concentration_CO2_only


-I scenario/ssp585/inputdata_concentration_CO2_only

Exemple (with carbon cycle and corals):

./bin/run-iloveclim -l PI_ssp585_concentration -n 2 -r 2 -k -F scenario/ssp585/sources_concentration_CC_corals -I scenario/ssp585/inputdata_concentration -s 23000 -S /home/clim01/nbouttes/iloveclim_coastal/data/PI-CC_r1309_2_ecbilt_clio/ic023000 -v 1

This runs with F_PALAEO=2

Modifications have been made in:

  • comphys.f90: change ghgscen to the number of lines with values in GHG.dat (ghgscen=2501 for ssp)
  • paleo_timer_mod.f90:

change start_year_ghg with more recent (or future) value at top of GHG.dat (start_year_ghg=-550 for ssp; -550 BP = 2500 AD, by definition 0 BP=1950 AD))
change nb_year_ghg with number of values in GHG.dat (2501 for ssp, should be the same as ghgscen) (

  • GHG.dat:

starts with more recent value at line 2, and finishes with oldest value at last line
value on first line is the number of lines with data (same as ghgscen and nb_year_ghg)

Last modified 7 months ago Last modified on 03/15/21 17:56:35