Changeset 786 for trunk/libIGCM/libIGCM_post
- Timestamp:
- 02/04/13 17:03:47 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/libIGCM/libIGCM_post/libIGCM_post.ksh
r782 r786 70 70 if [ ${post_freq} = SeasonalFrequency ] ; then 71 71 if ( [ X${config_Post_SeasonalFrequencyOffset} = X${NULL_STR} ] || [ X${config_Post_SeasonalFrequencyOffset} = XNONE ] || [ X${config_Post_SeasonalFrequencyOffset} = X ] ) ; then 72 72 PeriodOffset=0 73 73 else 74 74 PeriodOffset=${config_Post_SeasonalFrequencyOffset} 75 75 fi 76 76 else … … 144 144 # 145 145 if [ X$( eval echo \${TimeSeries${Dimension}} ) = Xtrue ] ; then 146 147 148 146 # 147 IGCM_debug_Print 1 "TIME SERIES POST-PROCESSING ${Dimension} ACTIVATED" 148 echo 149 149 # 150 151 152 153 154 155 156 157 158 159 150 if [ X${Dimension} = X ] ; then 151 TsTask="empty" 152 Script_Post_Output=create_ts.${PeriodDateEnd} 153 else 154 TsTask=${Dimension} 155 Script_Post_Output=create_ts.${PeriodDateEnd}.${TsTask} 156 fi 157 # 158 if [ ${RebuildFrequency} = true ] ; then 159 # 160 160 if [ ${PackFrequency} = true ] ; then 161 161 FunctionPath=${R_BUFR}/FlushPost_${PeriodDateEnd}.ksh … … 164 164 fi 165 165 # 166 167 # 168 # 169 # 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 # 194 # 195 # 196 # 197 198 199 200 # 201 # 202 # 203 204 205 166 if [ -f ${FunctionPath} ] ; then 167 # if [ X${MASTER} = Xtitane ] ; then 168 # echo "IGCM_sys_RshPost <<-EOF" >> ${FunctionPath} 169 # fi 170 echo "export DEBUG_debug=${DEBUG_debug} " >> ${FunctionPath} 171 echo "export MODIPSL=${MODIPSL} " >> ${FunctionPath} 172 echo "export libIGCM_SX=${libIGCM} " >> ${FunctionPath} 173 echo "export libIGCM=${libIGCM_POST} " >> ${FunctionPath} 174 echo "export SUBMIT_DIR=${SUBMIT_DIR} " >> ${FunctionPath} 175 echo "export POST_DIR=${POST_DIR} " >> ${FunctionPath} 176 echo "export MASTER=${MASTER} " >> ${FunctionPath} 177 echo "export RebuildFrequency=${RebuildFrequency} " >> ${FunctionPath} 178 echo "export DateBegin=${DateBegin} " >> ${FunctionPath} 179 echo "export PeriodDateEnd=${PeriodDateEnd} " >> ${FunctionPath} 180 echo "export StandAlone=false " >> ${FunctionPath} 181 echo "export CompletedFlag=${CompletedFlag} " >> ${FunctionPath} 182 echo "export TsTask=${TsTask} " >> ${FunctionPath} 183 echo "unset CompToRead " >> ${FunctionPath} 184 echo "unset FlagToRead " >> ${FunctionPath} 185 echo "export RESOL_ATM=${RESOL_ATM} " >> ${FunctionPath} 186 echo "export RESOL_OCE=${RESOL_OCE} " >> ${FunctionPath} 187 echo "export RESOL_ICE=${RESOL_ICE} " >> ${FunctionPath} 188 echo "export RESOL_MBG=${RESOL_MBG} " >> ${FunctionPath} 189 echo "export RESOL_SRF=${RESOL_SRF} " >> ${FunctionPath} 190 echo "export RESOL_SBG=${RESOL_SBG} " >> ${FunctionPath} 191 echo "export listVarEnv=${listVarEnv} " >> ${FunctionPath} 192 echo "export Script_Post_Output=${Script_Post_Output}" >> ${FunctionPath} 193 # if [ X${MASTER} = Xtitane ] ; then 194 # echo ". ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh" >> ${FunctionPath} 195 # echo ". ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh" >> ${FunctionPath} 196 # fi 197 echo "IGCM_sys_MkdirWork ${POST_DIR} " >> ${FunctionPath} 198 echo "IGCM_debug_Verif_Exit_Post " >> ${FunctionPath} 199 echo "IGCM_sys_QsubPost create_ts " >> ${FunctionPath} 200 # if [ X${MASTER} = Xtitane ] ; then 201 # echo "EOF" >> ${FunctionPath} 202 # fi 203 fi 204 else 205 IGCM_sys_RshPost <<-EOF 206 206 export DEBUG_debug=${DEBUG_debug} 207 207 export MODIPSL=${MODIPSL} … … 218 218 export TsTask=${TsTask} 219 219 unset CompToRead 220 220 unset FlagToRead 221 221 export RESOL_ATM=${RESOL_ATM} 222 222 export RESOL_OCE=${RESOL_OCE} … … 233 233 IGCM_sys_QsubPost create_ts 234 234 EOF 235 235 fi 236 236 fi 237 237 # 238 238 if [ X$( eval echo \${TimeSeriesChunck${Dimension}} ) = Xtrue ] ; then 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 239 # 240 IGCM_debug_Print 1 "TIME SERIES POST-PROCESSING ${Dimension} WITH CHUNCK ACTIVATED" 241 echo 242 # Need to Remember This One 243 SavedDateBegin=${DateBegin} 244 # Kind of task create_ts will perform 245 TsTask=Chunck${Dimension} 246 # Number of chunck jobs to configure and submit 247 eval NbJob=\${#CHUNCK${Dimension}_COMP[@]} 248 typeset i 249 i=0 250 until [ $i -ge $NbJob ]; do 251 CompToRead=$( eval echo \${CHUNCK${Dimension}_COMP[\${i}]} ) 252 FlagToRead=$( eval echo \${CHUNCK${Dimension}_FLAG[\${i}]} ) 253 NameToRead=$( eval echo \${CHUNCK${Dimension}_NAME[\${i}]} ) 254 ChunckSize=$( eval echo \${CHUNCK${Dimension}_SIZE[\${i}]} ) 255 # Chunck Length (mandatory in Year) 256 YearsChunckLength=$( echo ${ChunckSize} | sed -e "s/[yY]//" ) 257 # 258 IGCM_date_GetYearMonth ${DateBegin} YearBegin MonthBegin 259 # 260 IGCM_date_GetYearMonth ${PeriodDateEnd} YearEnd MonthEnd 261 # How many chunck in total since simulation began 262 NbYearsChunckLoop=$(( ( ${YearEnd} - ${YearBegin} + 1 ) / ${YearsChunckLength} )) 263 # Tweak special case 264 [ $(( ( ${YearEnd} - ${YearBegin} + 1 ) % ${YearsChunckLength} )) = 0 ] && NbYearsChunckLoop=$(( ${NbYearsChunckLoop} - 1 )) 265 # Starting Year of the current chunck 266 ChunckTsYearBegin=$(( ${NbYearsChunckLoop} * ${YearsChunckLength} + ${YearBegin} )) 267 # Starting date of the current chunck 268 ChunckTsDateBegin=${ChunckTsYearBegin}${MonthBegin}01 269 # 270 Script_Post_Output=create_ts.${PeriodDateEnd}.${TsTask}.${CompToRead}.${NameToRead} 271 # 272 if [ ${RebuildFrequency} = true ] ; then 273 # 274 274 if [ ${PackFrequency} = true ] ; then 275 275 FunctionPath=${R_BUFR}/FlushPost_${PeriodDateEnd}.ksh … … 278 278 fi 279 279 # 280 281 # 282 # 283 # 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 # 308 # 309 # 310 # 311 312 313 314 # 315 # 316 # 317 318 319 280 if [ -f ${FunctionPath} ] ; then 281 # if [ X${MASTER} = Xtitane ] ; then 282 # echo "IGCM_sys_RshPost <<-EOF" >> ${FunctionPath} 283 # fi 284 echo "export DEBUG_debug=${DEBUG_debug} " >> ${FunctionPath} 285 echo "export MODIPSL=${MODIPSL} " >> ${FunctionPath} 286 echo "export libIGCM_SX=${libIGCM} " >> ${FunctionPath} 287 echo "export libIGCM=${libIGCM_POST} " >> ${FunctionPath} 288 echo "export SUBMIT_DIR=${SUBMIT_DIR} " >> ${FunctionPath} 289 echo "export POST_DIR=${POST_DIR} " >> ${FunctionPath} 290 echo "export MASTER=${MASTER} " >> ${FunctionPath} 291 echo "export RebuildFrequency=${RebuildFrequency} " >> ${FunctionPath} 292 echo "export DateBegin=${ChunckTsDateBegin} " >> ${FunctionPath} 293 echo "export PeriodDateEnd=${PeriodDateEnd} " >> ${FunctionPath} 294 echo "export StandAlone=false " >> ${FunctionPath} 295 echo "export CompletedFlag=${CompletedFlag} " >> ${FunctionPath} 296 echo "export TsTask=${TsTask} " >> ${FunctionPath} 297 echo "export CompToRead=${CompToRead} " >> ${FunctionPath} 298 echo "export FlagToRead=${FlagToRead} " >> ${FunctionPath} 299 echo "export RESOL_ATM=${RESOL_ATM} " >> ${FunctionPath} 300 echo "export RESOL_OCE=${RESOL_OCE} " >> ${FunctionPath} 301 echo "export RESOL_ICE=${RESOL_ICE} " >> ${FunctionPath} 302 echo "export RESOL_MBG=${RESOL_MBG} " >> ${FunctionPath} 303 echo "export RESOL_SRF=${RESOL_SRF} " >> ${FunctionPath} 304 echo "export RESOL_SBG=${RESOL_SBG} " >> ${FunctionPath} 305 echo "export listVarEnv=${listVarEnv} " >> ${FunctionPath} 306 echo "export Script_Post_Output=${Script_Post_Output}" >> ${FunctionPath} 307 # if [ X${MASTER} = Xtitane ] ; then 308 # echo ". ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh" >> ${FunctionPath} 309 # echo ". ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh" >> ${FunctionPath} 310 # fi 311 echo "IGCM_sys_MkdirWork ${POST_DIR} " >> ${FunctionPath} 312 echo "IGCM_debug_Verif_Exit_Post " >> ${FunctionPath} 313 echo "IGCM_sys_QsubPost create_ts " >> ${FunctionPath} 314 # if [ X${MASTER} = Xtitane ] ; then 315 # echo "EOF" >> ${FunctionPath} 316 # fi 317 fi 318 else 319 IGCM_sys_RshPost <<-EOF 320 320 export DEBUG_debug=${DEBUG_debug} 321 321 export MODIPSL=${MODIPSL} … … 347 347 IGCM_sys_QsubPost create_ts 348 348 EOF 349 350 351 352 353 354 355 356 349 # 350 fi 351 # 352 export DateBegin=${SavedDateBegin} 353 # 354 (( i=i+1 )) 355 # 356 done 357 357 fi 358 358 (( j=j+1 )) … … 379 379 # 380 380 if [ -f ${FunctionPath} ] ; then 381 382 # 383 # 384 # 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 # 405 # 406 # 407 # 408 409 410 411 # 412 # 413 # 381 # 382 # if [ X${MASTER} = Xtitane ] ; then 383 # echo "IGCM_sys_RshPost <<-EOF" >> ${FunctionPath} 384 # fi 385 echo "export DEBUG_debug=${DEBUG_debug} " >> ${FunctionPath} 386 echo "export MODIPSL=${MODIPSL} " >> ${FunctionPath} 387 echo "export libIGCM_SX=${libIGCM} " >> ${FunctionPath} 388 echo "export libIGCM=${libIGCM_POST} " >> ${FunctionPath} 389 echo "export SUBMIT_DIR=${SUBMIT_DIR} " >> ${FunctionPath} 390 echo "export POST_DIR=${POST_DIR} " >> ${FunctionPath} 391 echo "export MASTER=${MASTER} " >> ${FunctionPath} 392 echo "export RebuildFrequency=${RebuildFrequency} " >> ${FunctionPath} 393 echo "export DateBegin=${DateBegin} " >> ${FunctionPath} 394 echo "export PeriodDateEnd=${PeriodDateEnd} " >> ${FunctionPath} 395 echo "export StandAlone=false " >> ${FunctionPath} 396 echo "export RESOL_ATM=${RESOL_ATM} " >> ${FunctionPath} 397 echo "export RESOL_OCE=${RESOL_OCE} " >> ${FunctionPath} 398 echo "export RESOL_ICE=${RESOL_ICE} " >> ${FunctionPath} 399 echo "export RESOL_MBG=${RESOL_MBG} " >> ${FunctionPath} 400 echo "export RESOL_SRF=${RESOL_SRF} " >> ${FunctionPath} 401 echo "export RESOL_SBG=${RESOL_SBG} " >> ${FunctionPath} 402 echo "export listVarEnv=${listVarEnv} " >> ${FunctionPath} 403 echo "export Script_Post_Output=${Script_Post_Output}" >> ${FunctionPath} 404 # if [ X${MASTER} = Xtitane ] ; then 405 # echo ". ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh" >> ${FunctionPath} 406 # echo ". ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh" >> ${FunctionPath} 407 # fi 408 echo "IGCM_sys_MkdirWork ${POST_DIR} " >> ${FunctionPath} 409 echo "IGCM_debug_Verif_Exit_Post " >> ${FunctionPath} 410 echo "IGCM_sys_QsubPost create_se " >> ${FunctionPath} 411 # if [ X${MASTER} = Xtitane ] ; then 412 # echo "EOF" >> ${FunctionPath} 413 # fi 414 414 fi 415 415 else … … 417 417 export DEBUG_debug=${DEBUG_debug} 418 418 export MODIPSL=${MODIPSL} 419 419 export libIGCM_SX=${libIGCM} 420 420 export libIGCM=${libIGCM_POST} 421 421 export SUBMIT_DIR=${SUBMIT_DIR} … … 493 493 Script_Post_Output=${script}.${PeriodDateEnd} 494 494 # 495 IGCM_sys_RshPost <<-EOF496 export DEBUG_debug=${DEBUG_debug}497 export MODIPSL=${MODIPSL}498 export libIGCM_SX=${libIGCM}499 export libIGCM=${libIGCM_POST}500 export SUBMIT_DIR=${SUBMIT_DIR}501 export POST_DIR=${POST_DIR}502 export MASTER=${MASTER}503 export DateBegin=${PackDateBegin}504 export DateEnd=${PeriodDateEnd}505 export PeriodPack=${config_Post_PackFrequency}506 export StandAlone=false507 export listVarEnv=${listVarEnv}508 export Script_Post_Output=${Script_Post_Output}509 . ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh510 . ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh511 IGCM_sys_MkdirWork ${POST_DIR}512 IGCM_debug_Verif_Exit_Post513 IGCM_sys_QsubPost ${script}495 IGCM_sys_RshPost <<-EOF 496 export DEBUG_debug=${DEBUG_debug} 497 export MODIPSL=${MODIPSL} 498 export libIGCM_SX=${libIGCM} 499 export libIGCM=${libIGCM_POST} 500 export SUBMIT_DIR=${SUBMIT_DIR} 501 export POST_DIR=${POST_DIR} 502 export MASTER=${MASTER} 503 export DateBegin=${PackDateBegin} 504 export DateEnd=${PeriodDateEnd} 505 export PeriodPack=${config_Post_PackFrequency} 506 export StandAlone=false 507 export listVarEnv=${listVarEnv} 508 export Script_Post_Output=${Script_Post_Output} 509 . ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh 510 . ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh 511 IGCM_sys_MkdirWork ${POST_DIR} 512 IGCM_debug_Verif_Exit_Post 513 IGCM_sys_QsubPost ${script} 514 514 EOF 515 515 # … … 521 521 # 522 522 if [ -f ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh ] ; then 523 524 # 525 # 526 # 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 # 542 # 543 # 544 # 545 546 547 548 # 549 # 550 # 523 # 524 # if [ X${MASTER} = Xtitane ] ; then 525 # echo "IGCM_sys_RshPost <<-EOF" >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 526 # fi 527 echo "export DEBUG_debug=${DEBUG_debug} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 528 echo "export MODIPSL=${MODIPSL} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 529 echo "export libIGCM_SX=${libIGCM} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 530 echo "export libIGCM=${libIGCM_POST} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 531 echo "export SUBMIT_DIR=${SUBMIT_DIR} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 532 echo "export POST_DIR=${POST_DIR} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 533 echo "export MASTER=${MASTER} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 534 echo "export DateBegin=${PackDateBegin} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 535 echo "export DateEnd=${PeriodDateEnd} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 536 echo "export PeriodPack=${config_Post_PackFrequency} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 537 echo "export StandAlone=false " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 538 echo "export listVarEnv=${listVarEnv} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 539 echo "export Script_Post_Output=${Script_Post_Output}" >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 540 echo "export script=${script} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 541 # if [ X${MASTER} = Xtitane ] ; then 542 # echo ". ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh" >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 543 # echo ". ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh" >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 544 # fi 545 echo "IGCM_sys_MkdirWork ${POST_DIR} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 546 echo "IGCM_debug_Verif_Exit_Post " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 547 echo "IGCM_sys_QsubPost ${script} " >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 548 # if [ X${MASTER} = Xtitane ] ; then 549 # echo "EOF" >> ${RUN_DIR}/REBUILD_${PeriodDateBegin}/rebuild.ksh 550 # fi 551 551 fi 552 552 else 553 553 IGCM_sys_RshPost <<-EOF 554 export DEBUG_debug=${DEBUG_debug}555 export MODIPSL=${MODIPSL}556 export libIGCM_SX=${libIGCM}557 export libIGCM=${libIGCM_POST}558 export SUBMIT_DIR=${SUBMIT_DIR}559 export POST_DIR=${POST_DIR}560 export MASTER=${MASTER}561 export DateBegin=${PackDateBegin}562 export DateEnd=${PeriodDateEnd}563 export PeriodPack=${config_Post_PackFrequency}564 export StandAlone=false565 export listVarEnv=${listVarEnv}566 export Script_Post_Output=${Script_Post_Output}567 . ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh568 . ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh569 IGCM_sys_MkdirWork ${POST_DIR}570 IGCM_debug_Verif_Exit_Post571 IGCM_sys_QsubPost ${script}554 export DEBUG_debug=${DEBUG_debug} 555 export MODIPSL=${MODIPSL} 556 export libIGCM_SX=${libIGCM} 557 export libIGCM=${libIGCM_POST} 558 export SUBMIT_DIR=${SUBMIT_DIR} 559 export POST_DIR=${POST_DIR} 560 export MASTER=${MASTER} 561 export DateBegin=${PackDateBegin} 562 export DateEnd=${PeriodDateEnd} 563 export PeriodPack=${config_Post_PackFrequency} 564 export StandAlone=false 565 export listVarEnv=${listVarEnv} 566 export Script_Post_Output=${Script_Post_Output} 567 . ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh 568 . ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh 569 IGCM_sys_MkdirWork ${POST_DIR} 570 IGCM_debug_Verif_Exit_Post 571 IGCM_sys_QsubPost ${script} 572 572 EOF 573 export DateBegin=${SavedDateBegin}574 export DateEnd=${SavedDateEnd}573 export DateBegin=${SavedDateBegin} 574 export DateEnd=${SavedDateEnd} 575 575 fi 576 576 fi … … 609 609 listVarEnv="DEBUG_debug,MODIPSL,libIGCM,libIGCM_SX,SUBMIT_DIR,REBUILD_DIR,POST_DIR,MASTER,RebuildFromArchive,DateBegin,PeriodDateBegin,PeriodDateEnd,NbRebuildDir,StandAlone,RESOL_ATM,RESOL_OCE,RESOL_ICE,RESOL_MBG,RESOL_SRF,RESOL_SBG" 610 610 IGCM_sys_RshPost <<-EOF 611 export DEBUG_debug=${DEBUG_debug}612 export MODIPSL=${MODIPSL}613 export libIGCM_SX=${libIGCM}614 export libIGCM=${libIGCM_POST}615 export SUBMIT_DIR=${SUBMIT_DIR}616 export REBUILD_DIR=${REBUILD_DIR}617 export POST_DIR=${POST_DIR}618 export MASTER=${MASTER}619 export RebuildFromArchive=${config_Post_RebuildFromArchive}620 export DateBegin=${DateBegin}621 export PeriodDateBegin=${PeriodDateBegin}622 export PeriodDateEnd=${PeriodDateEnd}623 export NbRebuildDir=${NbRebuildDir}624 export StandAlone=false625 export RESOL_ATM=${RESOL_ATM}626 export RESOL_OCE=${RESOL_OCE}627 export RESOL_ICE=${RESOL_ICE}628 export RESOL_MBG=${RESOL_MBG}629 export RESOL_SRF=${RESOL_SRF}630 export RESOL_SBG=${RESOL_SBG}631 export listVarEnv=${listVarEnv}632 export Script_Post_Output=${Script_Post_Output}633 . ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh634 . ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh635 IGCM_sys_MkdirWork ${POST_DIR}636 IGCM_debug_Verif_Exit_Post637 IGCM_sys_QsubPost ${script}611 export DEBUG_debug=${DEBUG_debug} 612 export MODIPSL=${MODIPSL} 613 export libIGCM_SX=${libIGCM} 614 export libIGCM=${libIGCM_POST} 615 export SUBMIT_DIR=${SUBMIT_DIR} 616 export REBUILD_DIR=${REBUILD_DIR} 617 export POST_DIR=${POST_DIR} 618 export MASTER=${MASTER} 619 export RebuildFromArchive=${config_Post_RebuildFromArchive} 620 export DateBegin=${DateBegin} 621 export PeriodDateBegin=${PeriodDateBegin} 622 export PeriodDateEnd=${PeriodDateEnd} 623 export NbRebuildDir=${NbRebuildDir} 624 export StandAlone=false 625 export RESOL_ATM=${RESOL_ATM} 626 export RESOL_OCE=${RESOL_OCE} 627 export RESOL_ICE=${RESOL_ICE} 628 export RESOL_MBG=${RESOL_MBG} 629 export RESOL_SRF=${RESOL_SRF} 630 export RESOL_SBG=${RESOL_SBG} 631 export listVarEnv=${listVarEnv} 632 export Script_Post_Output=${Script_Post_Output} 633 . ${libIGCM_POST}/libIGCM_debug/libIGCM_debug.ksh 634 . ${libIGCM_POST}/libIGCM_sys/libIGCM_sys.ksh 635 IGCM_sys_MkdirWork ${POST_DIR} 636 IGCM_debug_Verif_Exit_Post 637 IGCM_sys_QsubPost ${script} 638 638 EOF 639 639 fi … … 671 671 PeriodSlaveYear=$( echo ${SlaveFrequency} | sed -e "s/[yY]//" ) 672 672 if ( [ ${PeriodSlaveYear} -gt ${PeriodMasterYear} ] || \ 673 674 675 676 673 [ $(( ${PeriodMasterYear} % ${PeriodSlaveYear} )) -ne 0 ] ); then 674 IGCM_debug_Print 1 "${SlaveName} frequency ${SlaveFrequency} not compatbile with" 675 IGCM_debug_Print 1 "${MasterName} frequency : ${MasterFrequency}" 676 IGCM_debug_Exit "Check your frequency" 677 677 else 678 678 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterYear} / ${PeriodSlaveYear} )) … … 681 681 PeriodSlaveMonth=$( echo ${SlaveFrequency} | sed -e "s/[mM]//" ) 682 682 if ( [ ${PeriodSlaveMonth} -gt $(( ${PeriodMasterYear} * 12 )) ] || \ 683 684 685 686 683 [ $(( ( ${PeriodMasterYear} * 12 ) % ${PeriodSlaveMonth} )) -ne 0 ] ) ; then 684 IGCM_debug_Print 1 "${SlaveName} frequency ${SlaveFrequency} not compatbile with" 685 IGCM_debug_Print 1 "${MasterName} frequency : ${MasterFrequency}" 686 IGCM_debug_Exit "Check your frequency" 687 687 else 688 688 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ( 12 * ${PeriodMasterYear} ) / ${PeriodSlaveMonth} )) … … 692 692 NbDays=$( IGCM_date_DaysInYear ${year} ) 693 693 if [ ${config_UserChoices_CalendarType} = 360d ] || [ ${config_UserChoices_CalendarType} = noleap ] ; then 694 695 696 697 698 699 694 if ( [ ${PeriodSlaveDay} -gt $(( ${PeriodMasterYear} * ${NbDays} )) ] || \ 695 [ $(( ( ${PeriodMasterYear} * ${NbDays} ) % ${PeriodSlaveDay} )) -ne 0 ] ; ) then 696 IGCM_debug_Print 1 "${SlaveName} frequency ${SlaveFrequency} not compatbile with" 697 IGCM_debug_Print 1 "${MasterName} frequency : ${MasterFrequency}" 698 IGCM_debug_Exit "Check your frequency" 699 fi 700 700 else 701 702 703 704 701 IGCM_debug_Print 1 "For ${MasterName} with leap calendar:" 702 IGCM_debug_Print 1 "We have a daily ${SlaveName} frequency and ${MasterName}=${MasterFrequency}" 703 IGCM_debug_Print 1 "No post-treatment. Case not properly handle at this moment by libIGCM. Sorry" 704 IGCM_debug_Exit "Check your frequency ${MasterName} and choose a daily frequency for this one too." 705 705 fi ;; 706 706 esac ;; … … 711 711 PeriodSlaveYear=$( echo ${SlaveFrequency} | sed -e "s/[yY]//" ) 712 712 if ( [ ${PeriodMasterMonth} -gt $(( ${PeriodSlaveYear} * 12 )) ] || \ 713 714 715 716 713 [ $(( ${PeriodMasterMonth} % ( ${PeriodSlaveYear} * 12 ) )) -ne 0 ] ) ; then 714 IGCM_debug_Print 1 "${SlaveName} frequency ${SlaveFrequency} not compatbile with" 715 IGCM_debug_Print 1 "${MasterName} frequency : ${MasterFrequency}" 716 IGCM_debug_Exit "Check your frequency" 717 717 else 718 718 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterMonth} / ( 12 * ${PeriodSlaveYear} ) )) … … 721 721 PeriodSlaveMonth=$( echo ${SlaveFrequency} | sed -e "s/[mM]//" ) 722 722 if ( [ ${PeriodSlaveMonth} -gt ${PeriodMasterMonth} ] || \ 723 [ $(( ${PeriodMasterMonth} % ${PeriodSlaveMonth} )) -ne 0 ] ) ; then 724 725 726 723 [ $(( ${PeriodMasterMonth} % ${PeriodSlaveMonth} )) -ne 0 ] ) ; then 724 IGCM_debug_Print 1 "${SlaveName} frequency ${SlaveFrequency} not compatbile with" 725 IGCM_debug_Print 1 "${MasterName} frequency : ${MasterFrequency}" 726 IGCM_debug_Exit "Check your frequency" 727 727 else 728 728 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterMonth} / ${PeriodSlaveMonth} )) … … 750 750 IGCM_debug_Print 1 "${SlaveName} frequency ${SlaveFrequency} not compatbile with" 751 751 IGCM_debug_Print 1 "${MasterName} frequency : ${MasterFrequency}" 752 752 IGCM_debug_Exit "Check your frequency" 753 753 else 754 754 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterDay} / ${PeriodSlaveDay} )) … … 797 797 PeriodSlaveYear=$( echo ${SlaveFrequency} | sed -e "s/[yY]//" ) 798 798 if [ $(( ( ${CumulPeriod} * ${PeriodSlaveYear} - ${PeriodOffset} ) % ${PeriodMasterYear} )) -eq 0 ] ; then 799 800 801 802 799 if [ $(( ${CumulPeriod} * ${PeriodSlaveYear} - ${PeriodOffset} )) -ne 0 ] ; then 800 eval ${post_freq}=true ; POST=true 801 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterYear} / ${PeriodSlaveYear} )) 802 fi 803 803 fi;; 804 804 *M|*m) 805 805 PeriodSlaveMonth=$( echo ${SlaveFrequency} | sed -e "s/[mM]//" ) 806 806 if [ $(( ( ${CumulPeriod} * ${PeriodSlaveMonth} - ${PeriodOffset} * 12 ) % ( ${PeriodMasterYear} * 12 ) )) -eq 0 ] ; then 807 808 809 810 807 if [ $(( ${CumulPeriod} * ${PeriodSlaveMonth} - ${PeriodOffset} * 12 )) -ne 0 ] ; then 808 eval ${post_freq}=true ; POST=true 809 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ( 12 * ${PeriodMasterYear} ) / ${PeriodSlaveMonth} )) 810 fi 811 811 fi;; 812 812 *D|*d) … … 814 814 NbDays=$( IGCM_date_DaysInYear ${year} ) 815 815 if [ $(( ( ${CumulPeriod} - ( ${PeriodOffset} * ${NbDays} / ${PeriodSlaveDay} ) ) % ( ${NbDays} * ${PeriodMasterYear} / ${PeriodSlaveDay} ) )) -eq 0 ] ; then 816 817 818 819 816 if [ $(( ${CumulPeriod} - ( ${PeriodOffset} * ${NbDays} / ${PeriodSlaveDay} ) )) -ne 0 ] ; then 817 eval ${post_freq}=true ; POST=true 818 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ( ${NbDays} * ${PeriodMasterYear} ) / ${PeriodSlaveDay} )) 819 fi 820 820 fi;; 821 821 esac ;; … … 826 826 PeriodSlaveYear=$( echo ${SlaveFrequency} | sed -e "s/[yY]//" ) 827 827 if [ $(( ( ${CumulPeriod} * ${PeriodSlaveYear} * 12 - ${PeriodOffset} ) % ( ${PeriodMasterMonth} ) )) -eq 0 ] ; then 828 829 830 831 828 if [ $(( ${CumulPeriod} * ${PeriodSlaveYear} * 12 - ${PeriodOffset} )) -ne 0 ] ; then 829 eval ${post_freq}=true ; POST=true 830 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterMonth} / ( 12 * ${PeriodSlaveYear} ) )) 831 fi 832 832 fi;; 833 833 *M|*m) 834 834 PeriodSlaveMonth=$( echo ${SlaveFrequency} | sed -e "s/[mM]//" ) 835 835 if [ $(( ( ${CumulPeriod} * ${PeriodSlaveMonth} - ${PeriodOffset} ) % ${PeriodMasterMonth} )) -eq 0 ] ; then 836 837 838 839 836 if [ $(( ${CumulPeriod} * ${PeriodSlaveMonth} - ${PeriodOffset} )) -ne 0 ] ; then 837 eval ${post_freq}=true ; POST=true 838 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterMonth} / ${PeriodSlaveMonth} )) 839 fi 840 840 fi;; 841 841 *D|*d) … … 856 856 if [ $(( ( ${CumulPeriod} * ${PeriodSlaveDay} - ${PeriodOffset} ) % ${PeriodMasterDay} )) -eq 0 ] ; then 857 857 if [ $(( ${CumulPeriod} * ${PeriodSlaveDay} - ${PeriodOffset} )) -ne 0 ] ; then 858 859 860 858 eval ${post_freq}=true ; POST=true 859 [ X${3} = XNbPeriodPerFrequency ] && NbPeriodPerFrequency=$(( ${PeriodMasterDay} / ${PeriodSlaveDay} )) 860 fi 861 861 fi;; 862 862 esac ;;
Note: See TracChangeset
for help on using the changeset viewer.