- Timestamp:
- 10/28/09 17:06:17 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v2/EXP00/COMP/orchidee.driver
r700 r763 1 1 #!/bin/ksh 2 2 3 #D- Driver du script pour ORCHIDEE_OL (off-line) 3 #D- Driver du script pour ORCHIDEE 4 5 function ORCHIDEE_sed 6 { 7 IGCM_debug_PushStack "ORCHIDEE_sed" 8 9 sed -e "s/^${1}\ *=.*/${1}= ${2}/" \ 10 orchidee.def > orchidee.def.tmp 11 RET=$? 12 echo "ORCHIDEE_sed : ${1} ${2}" 13 \mv orchidee.def.tmp orchidee.def 14 15 IGCM_debug_PopStack "ORCHIDEE_sed" 16 return $RET 17 } 4 18 5 19 #----------------------------------------------------------------- … … 8 22 IGCM_debug_PushStack "SRF_Initialize" 9 23 10 RESOL_SRF=$( echo $RESOL | awk "-Fx" '{print $2}' | awk "-F-" '{print $1}' ) 11 12 ##--Variables used by ORCHIDEE -- 13 PAT_WRI_STEP=$( grep 'WRITE_STEP=' ${SUBMIT_DIR}/PARAM/orchidee.def ) 24 RESOL_SRF=ALL 14 25 15 26 IGCM_debug_PopStack "SRF_Initialize" … … 21 32 IGCM_debug_PushStack "SRF_Update" 22 33 23 (( SECH_WRI_STEP=PeriodLengthInDays * 86400 )) 34 typeset SECHIBA_WRITE_STEP 35 36 case ${config_SRF_WriteFrequency} in 37 *Y|*y) 38 WriteInYears=$( echo ${1} | awk -F '[yY]' "{print ${config_SRF_WriteFrequency}}" ) 39 PeriodLengthInYears=$( echo ${1} | awk -F '[yY]' "{print ${config_UserChoices_PeriodLength}}" ) 40 (( SECHIBA_WRITE_STEP = PeriodLengthInDays * WriteInYears / PeriodLengthInYears * 86400 )) ;; 41 *M|*m) 42 WriteInMonths=$( echo ${1} | awk -F '[mM]' "{print ${config_SRF_WriteFrequency}}" ) 43 case ${config_UserChoices_PeriodLength} in 44 *Y|*y) 45 PeriodLengthInYears=$( echo ${1} | awk -F '[yY]' "{print ${config_UserChoices_PeriodLength}}" ) 46 (( SECHIBA_WRITE_STEP = PeriodLengthInDays * 86400 / PeriodLengthInYears / 12 )) 47 ;; 48 *M|*m) 49 PeriodLengthInMonths=$( echo ${1} | awk -F '[mM]' "{print ${config_UserChoices_PeriodLength}}" ) 50 (( SECHIBA_WRITE_STEP = PeriodLengthInDays * WriteInMonths * 86400 / PeriodLengthInMonths )) 51 ;; 52 *) 53 (( SECHIBA_WRITE_STEP = $( IGCM_date_DaysInMonth $year $month ) * 86400 )) 54 ;; 55 esac 56 ;; 57 5D|5d) 58 (( SECHIBA_WRITE_STEP = 5 * 86400 )) ;; 59 1D|1d) 60 (( SECHIBA_WRITE_STEP = 86400 )) ;; 61 *s) 62 WriteInSeconds=$( echo ${1} | awk -F '[s]' "{print ${config_SRF_WriteFrequency}}" ) 63 (( SECHIBA_WRITE_STEP = WriteInSeconds )) ;; 64 *) 65 IGCM_debug_Exit "SRF_Update " ${config_SRF_WriteFrequency} " invalid WriteFrequency : choose in 1Y, 1M, 5D, 1D." 66 IGCM_debug_Verif_Exit ;; 67 esac 68 69 ORCHIDEE_sed WRITE_STEP ${SECHIBA_WRITE_STEP} 70 71 ## if [ ${year} -eq 1950 ] ; then 72 # ORCHIDEE_sed SECHIBA_HISTFILE2 y 73 # ORCHIDEE_sed SECHIBA_HISTLEVEL2 10 74 # ORCHIDEE_sed WRITE_STEP2 86400.0 75 ## fi 24 76 25 77 if ( [ ${CumulPeriod} -eq 1 ] && [ "${config_SRF_Restart}" = "n" ] ) ; then 26 sed -e "s/_start_sech_/default/" \ 27 -e "s/${PAT_WRI_STEP}/WRITE_STEP=${SECH_WRI_STEP}/" \ 28 orchidee.def > orchidee.def.tmp 78 ORCHIDEE_sed SECHIBA_reset_time y 29 79 else 30 sed -e "s/_start_sech_/start_sech.nc/" \ 31 -e "s/${PAT_WRI_STEP}/WRITE_STEP=${SECH_WRI_STEP}/" \ 32 orchidee.def > orchidee.def.tmp 80 ORCHIDEE_sed SECHIBA_restart_in start_sech.nc.nc 81 ORCHIDEE_sed SECHIBA_reset_time y 33 82 fi 34 35 IGCM_sys_Mv orchidee.def.tmp orchidee.def36 83 37 84 #IGCM_sys_Cp ${RUN_DIR}/orchidee.def ${RUN_DIR}/run.def
Note: See TracChangeset
for help on using the changeset viewer.