Changeset 2814 for CONFIG/UNIFORM/v6/NEMO_v6/GENERAL/DRIVER/opa9.driver
- Timestamp:
- 04/26/16 13:23:31 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
CONFIG/UNIFORM/v6/NEMO_v6/GENERAL/DRIVER/opa9.driver
r2719 r2814 30 30 #----------------------------------------------------------------- 31 31 function OCE_Update 32 { 32 33 33 IGCM_debug_PushStack "OCE_Update" 34 35 36 ##-- 37 if [ X"${opa9_UserChoices_Online}" = Xy ] ; then 38 OCE_Online_Update 39 else 40 OCE_Offline_Update 41 fi 42 43 # Period Length In Days between DateBegin and first day of calendar 0001 01 01 44 # Needed by OPA namelist to compute correct file names 45 (( PeriodDaysSinceJC = $( IGCM_date_DaysSinceJC ${PeriodDateBegin} ) + 1 )) 46 47 ## Count of number of time steps from begin of OPA job 48 (( OPA_NIT000 = ( PeriodDaysSinceJC - DaysSinceJC ) * OPA_NDT_DAY + 1 )) 49 (( OPA_NDT = PeriodLengthInDays * OPA_NDT_DAY )) 50 (( OPA_NITEND = OPA_NIT000 + OPA_NDT - 1)) 51 52 ## Forcing to write one restart file at the end of period 53 OPA_NSTOCK="${OPA_NITEND}" 54 55 ## Verification of number of time steps per day 56 (( NB_SEC_DAY_MODEL = OPA_NDT_DAY * OPA_RDT )) 57 (( NB_SEC_DAY = 60 * 60 * 24 )) 58 59 if [ ${NB_SEC_DAY_MODEL} -ne ${NB_SEC_DAY} ] 60 then 61 echo " NB_SEC_DAY_MODEL "${NB_SEC_DAY_MODEL} "NB_SEC_DAY" ${NB_SEC_DAY} "OPA_NDT_DAY" ${OPA_NDT_DAY} "OPA_RDT" ${OPA_RDT} 62 echo " VERIFY OPA_NDT_DAY in opa9.card " 63 exit 64 fi 65 66 67 ## nleapy configuration 68 case ${config_UserChoices_CalendarType} in 69 leap) 70 OPA_NLEAPY=1;; 71 noleap) 72 OPA_NLEAPY=0;; 73 360d) 74 OPA_NLEAPY=30;; 75 esac 76 77 78 typeset -r PRECIS=8 79 NEMO_END=$( echo $( awk "BEGIN { printf \"%0${PRECIS}d\",${OPA_NITEND} }" ) ) 80 81 IGCM_comp_modifyNamelist blocker namelist_cfg cn_exp ${config_UserChoices_JobName} 82 IGCM_comp_modifyNamelist blocker namelist_cfg nn_it000 ${OPA_NIT000} 83 IGCM_comp_modifyNamelist blocker namelist_cfg nn_itend ${OPA_NITEND} 84 IGCM_comp_modifyNamelist blocker namelist_cfg ln_rstart ${OPA_LRSTAR} 85 IGCM_comp_modifyNamelist blocker namelist_cfg nn_stock ${OPA_NSTOCK} 86 IGCM_comp_modifyNamelist blocker namelist_cfg nn_rstctl ${OPA_NRSTDT} 87 IGCM_comp_modifyNamelist blocker namelist_cfg nn_date0 ${PeriodDateBegin} 88 IGCM_comp_modifyNamelist nonblocker namelist_cfg nn_msh ${OPA_NMSH} 89 IGCM_comp_modifyNamelist blocker namelist_cfg nn_leapy ${OPA_NLEAPY} 90 91 # update domain_def.xml file 92 case ${RESOL_OCE} in 93 ( *ORCA2* ) 94 sed -e 's/<domain id="1point" zoom_ibegin="150" zoom_jbegin="150"/<domain id="1point" zoom_ibegin="10" zoom_jbegin="10"/' domain_def.xml > domain_def.xml.tmp 95 IGCM_sys_Mv domain_def.xml.tmp domain_def.xml ; 96 esac 97 98 99 IGCM_debug_PushStack "OCE_Update" 100 101 102 { 103 } 104 function OCE_Online_Update 105 { 106 IGCM_debug_PushStack "OCE_Online_Update" 34 107 35 108 # Interannual run … … 171 244 172 245 done 173 # Period Length In Days between DateBegin and first day of calendar 0001 01 01174 # Needed by OPA namelist to compute correct file names175 (( PeriodDaysSinceJC = $( IGCM_date_DaysSinceJC ${PeriodDateBegin} ) + 1 ))176 177 ## Count of number of time steps from begin of OPA job178 (( OPA_NIT000 = ( PeriodDaysSinceJC - DaysSinceJC ) * OPA_NDT_DAY + 1 ))179 (( OPA_NDT = PeriodLengthInDays * OPA_NDT_DAY ))180 (( OPA_NITEND = OPA_NIT000 + OPA_NDT - 1))181 182 ## Forcing to write one restart file at the end of period183 OPA_NSTOCK="${OPA_NITEND}"184 185 ## Verification of number of time steps per day186 (( NB_SEC_DAY_MODEL = OPA_NDT_DAY * OPA_RDT ))187 (( NB_SEC_DAY = 60 * 60 * 24 ))188 189 if [ ${NB_SEC_DAY_MODEL} -ne ${NB_SEC_DAY} ]190 then191 echo " NB_SEC_DAY_MODEL "${NB_SEC_DAY_MODEL} "NB_SEC_DAY" ${NB_SEC_DAY} "OPA_NDT_DAY" ${OPA_NDT_DAY} "OPA_RDT" ${OPA_RDT}192 echo " VERIFY OPA_NDT_DAY in opa9.card "193 exit194 fi195 246 196 247 ##-- Restart configuration … … 219 270 220 271 fi 221 222 ## nleapy configuration 223 case ${config_UserChoices_CalendarType} in 224 leap) 225 OPA_NLEAPY=1;; 226 noleap) 227 OPA_NLEAPY=0;; 228 360d) 229 OPA_NLEAPY=30;; 230 esac 231 232 233 typeset -r PRECIS=8 234 NEMO_END=$( echo $( awk "BEGIN { printf \"%0${PRECIS}d\",${OPA_NITEND} }" ) ) 235 236 IGCM_comp_modifyNamelist blocker namelist_cfg cn_exp ${config_UserChoices_JobName} 237 IGCM_comp_modifyNamelist blocker namelist_cfg nn_it000 ${OPA_NIT000} 238 IGCM_comp_modifyNamelist blocker namelist_cfg nn_itend ${OPA_NITEND} 239 IGCM_comp_modifyNamelist blocker namelist_cfg ln_rstart ${OPA_LRSTAR} 240 IGCM_comp_modifyNamelist blocker namelist_cfg nn_stock ${OPA_NSTOCK} 241 IGCM_comp_modifyNamelist blocker namelist_cfg nn_rstctl ${OPA_NRSTDT} 242 IGCM_comp_modifyNamelist blocker namelist_cfg nn_date0 ${PeriodDateBegin} 243 IGCM_comp_modifyNamelist nonblocker namelist_cfg nn_msh ${OPA_NMSH} 244 IGCM_comp_modifyNamelist blocker namelist_cfg nn_leapy ${OPA_NLEAPY} 245 246 # update domain_def.xml file 247 case ${RESOL_OCE} in 248 ( *ORCA2* ) 249 sed -e 's/<domain id="1point" zoom_ibegin="150" zoom_jbegin="150"/<domain id="1point" zoom_ibegin="10" zoom_jbegin="10"/' domain_def.xml > domain_def.xml.tmp 250 IGCM_sys_Mv domain_def.xml.tmp domain_def.xml ; 251 esac 252 253 IGCM_debug_PopStack "OCE_Update" 254 } 272 273 IGCM_debug_PopStack "OCE_Online_Update" 274 } 275 276 function OCE_offline_Update 277 { 278 IGCM_debug_PushStack "OCE_Offline_Update" 279 IGCM_debug_PopStack "OCE_Offline_Update" 280 281 } 282 255 283 256 284 #-----------------------------------
Note: See TracChangeset
for help on using the changeset viewer.