Version 3 (modified by mguimberteau, 6 years ago) (diff) |
---|
Guides
Spinup Carbon MICT simulations (libIGCM configuration)
This guide is written by Matthieu Guimberteau:
Spinup run in MICT-V6 (r3266)
This guide is written by Ana Bastos. It works for revision 3266.
In the folder /modipsl/config/ORCHIDEE_OL:
cp -r SPINUP MY_SPINUP_DIR
In MY_SPINUP_DIR you should find the following files/folders:
- config.card
- COMP
- PARAM
- SUBJOB
1. CONFIG.CARD
In config.card change:
JobName=My.Spinup.experiment PeriodLength= 1Y JobNumProcTot=NPROC # number of processors for simulation ARCHIVE = /some/path/to/
Make sure to verify: SpaceName?
The spin-up (as far as I understand) does not work if it does not restart from a transient simulation. So first one needs to have restart files from the transient.
#D-- SRF options passed to SuRFace (SECHIBA) subjobs [SRF] WriteFrequency="1Y" Restart=y #-- Last day of the experience used as restart RestartDate=2011-12-31 # Define restart simulation name RestartJobName=transient.my.experiment RestartPath=${ARCHIVE}/IGCM_OUT/OL2/...[DEVT/PROD]/secsto # Old component name for restart (if empty, use new name) OldName= #D-- Surface BioGeochemistry ( STOMATE ) subjobs [SBG] WriteFrequency= 1Y Restart= y #-- Last day of the experience used as restart RestartDate= 2011-12-31 # Define restart simulation name RestartJobName= transient.my.experiment RestartPath=${ARCHIVE}/IGCM_OUT/OL2/...[DEVT/PROD]/secsto
Run the command:
../../../libIGCM/ins_job
Verify number of processors in Job_My.Spinup.experiment. It does not seem to update automatically.
- In CURIE:
#MSUB -n 16 # Number of MPI tasks (SPMD case) or cores (MPMD case)
- In OBELIX:
#PBS -v BATCH_NUM_PROC_TOT=16 # example #PBS -l nodes=4:ppn=4 # example
Add, if desired, specify a run dir path folder:
RUN_DIR_PATH = /to/some/folder/
Check, if desired/necessary:
PeriodNb = SOMEVALUE
2. COMP/
2.1. In spinup.card change/verify:
# If you want to use the same forcing file DRIVER_NORESTART=y ## set to no because of in config.card periodlength=1yr # If you want use config.card PeriodLength for TIME_LENGTH DRIVER_TIMELENGTH=n ## NO for MICT! # Should we start the analytic resolution of the spinup? SPINUP_ANALYTIC=n #(number of years to put C in soil - default is 100) duree_carbonsol=X n_iter=X # Boundary Files for ORCHIDEE subjobs : List= (/.../.../.../.../my.forcing.file.nc, forcing_file.nc)
Verifiy other flags, eg:
- impose_veg
- land_use
- new_hydrol
- ...
2.2 - In spinup.driver
Below line 320:
# Nb years for forcing FORCESOIL ORCHIDEE_def FORCESOIL_STEP_PER_YEAR 12 ORCHIDEE_def WRITELEVEL_FORCESOIL 3
Modify line 840:
IGCM_card_WriteOption ${New_SUBMIT_DIR}/COMP/stomate.card BoundaryFiles ListNonDel \ "(${config_SBG_RestartPath}/${LastJobName}/SBG/Restart/${LastJobName}_${output_PreviousStage_LastRestartDate}_stomate_Cforcing.nc, stomate_Cforcing.nc), \\"
to:
IGCM_card_WriteOption ${New_SUBMIT_DIR}/COMP/stomate.card BoundaryFiles ListNonDel \ "(${config_SBG_RestartPath}/${LastJobName}/SBG/Restart/${LastJobName}_${output_PreviousStage_LastRestartDate}_stomate_Cforcing_permafrost.nc, stomate_Cforcing_permafrost.nc), \\"
Add below:
# Nb years for forcing FORCESOIL ORCHIDEE_def FORCESOIL_STEP_PER_YEAR 12 ORCHIDEE_def TIME_LENGTH X ### equal to duree carbon sols ####
3 - PARAM/
Use the same run.def as used for the whole experiment (see MICT run.def example)
4 - SUBJOB/
4.1 SUBJOB/FORCESOIL
4.1.1 - in config.card:
PeriodLength=X # (same as duree_carbonsol in spinup.card) ARCHIVE = /.../.../.../ - archive folder SBG= (forcesoil, forcesoil, NPROCMPI) # verify that number of processors matches between Spinup and subjobs #D-- SRF - STOMATE [SBG] WriteFrequency="XY" # same as PeriodLength
4.1.2 - in Job_AUTO
Verify number of processors (as for the main job)
4.1.3 - in COMP/
4.1.3.1 - stomate.card update boundary file for Cforcing_permafrost
[BoundaryFiles] List= () ListNonDel= (${config_SBG_RestartPath}/${config_SBG_RestartJobName}/SBG/Restart/${config_SBG_RestartJobName}_${Date_Restarts}_stomate_Cforcing_permafrost.nc, stomate_Cforcing_permafrost.nc)\ (${R_BC}/SRF/${config_UserChoices_TagName}/reftemp.nc, .)
4.1.3.2 - stomate.driver
ORCHIDEE_def STOMATE_RESTART_FILEIN stomate_rest_in.nc ORCHIDEE_def STOMATE_CFORCING_NAME stomate_Cforcing.nc ORCHIDEE_def STOMATE_CFORCING_PF_NM stomate_Cforcing_permafrost.nc # ADD THIS LINE
4.1.2 - in PARAM:
Add TIME_LENGTH=XY to run.def #(is empty)
4.2 SUBJOB/OOL_SEC_STO
4.2.1 - in SUBJOB/OOL_SEC_STO/config.card
#D- For each component, Real name of executable, Name of executable for oasis OOL= (orchidee_ol, orchidee_ol, NPROCMPI) ##!!! Verify the it matches the main Job #D-- SRF - SECHIBA [SRF] WriteFrequency="1Y" Restart=n #D-- SRF - STOMATE [SBG] WriteFrequency="1Y" Restart=n
4.2.2 - in SUBJOB/OOL_SEC_STO/Job_AUTO
Verify number of processors (as for the main job)
4.2.3 - in SUBJOB/OOL_SEC_STO/COMP/
4.2.3.1 - orchidee_ol.card
[BoundaryFiles] List= (/.../.../.../.../my.forcing.file.nc, forcing_file.nc)
4.2.3.2 - sechiba.card
Verify flags and add vegetation map (example):
LAIMAP=n IMPOSE_VEG=n LAND_USE=y VEGET_UPDATE=0Y OLD_VEGET=n ROUTING=n NEWHYDROL=y OKCO2=y sechiba_LEVEL=11 [InitialStateFiles] List=(${R_INIT}/SRF/${config_UserChoices_TagName}/routing.nc, .), \ (${R_INIT}/SRF/${config_UserChoices_TagName}/soils_param.nc, .), \ (${R_INIT}/SRF/${config_UserChoices_TagName}/cartepente2d_15min.nc, .), \ (${R_INIT}/SRF/${config_UserChoices_TagName}/floodplains.nc, .), \ (/.../.../.../.../my.PFT.file.nc, PFTmap.nc)
4.2.3.3 - in stomate.driver
ORCHIDEE_def STOMATE_FORCING_NAME stomate_forcing.nc ORCHIDEE_def STOMATE_CFORCING_NAME stomate_Cforcing.nc ORCHIDEE_def STOMATE_CFORCING_PF_NM stomate_Cforcing_permafrost.nc ## ADD THIS LINE if [ $( IGCM_date_DaysBetweenGregorianDate ${PeriodDateEnd} ${DateEnd} ) -ge 0 ] ; then IGCM_sys_Put_Out stomate_Cforcing.nc ${R_OUT_SBG_R}/${config_UserChoices_JobName}_${PeriodDateEnd}_stomate_Cforcing.nc IGCM_sys_Put_Out stomate_forcing.nc ${R_OUT_SBG_R}/${config_UserChoices_JobName}_${PeriodDateEnd}_stomate_forcing.nc IGCM_sys_Put_Out stomate_Cforcing_permafrost.nc ${R_OUT_SBG_R}/${config_UserChoices_JobName}_${PeriodDateEnd}_stomate_Cforcing_permafrost.nc ### ADD THIS LINE rm -f stomate_Cforcing.nc rm -f stomate_forcing.nc rm -f stomate_Cforcing_permafrost.nc #### ADD THIS LINE fi
4.2.4 - in SUBJOB/OOL_SEC_STO/PARAM/run.def
# Use same run.def as the experiment, but add:
FORCESOIL_STEP_PER_YEAR=12 STOMATE_CFORCING_PF_NM = stomate_Cforcing_permafrost.nc
Attachments (1)
-
20180409_guimberteau_spinup_MICTv8.6.pdf
(98.0 KB) -
added by mguimberteau 6 years ago.
Spinup procedure for MICT v8.6
Download all attachments as: .zip