Changeset 622


Ignore:
Timestamp:
03/30/12 16:27:29 (12 years ago)
Author:
sdipsl
Message:
  • Hopefully end of the merge story
Location:
trunk/libIGCM
Files:
1 added
18 edited

Legend:

Unmodified
Added
Removed
  • trunk/libIGCM/AA_additionnal

    r616 r622  
    1010#-Q- cesium #MSUB -E "-j o" 
    1111#-Q- cesium #MSUB -E "-S /bin/ksh" 
     12#-Q- curie ###################### 
     13#-Q- curie ## CURIE   TGCC/CEA ## 
     14#-Q- curie ###################### 
     15#-Q- curie #MSUB -r TS             # Nom du job                
     16#-Q- curie #MSUB -eo 
     17#-Q- curie #MSUB -n 1              # Reservation du processus 
     18#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1219#-Q- platine #!/usr/bin/ksh 
    1320#-Q- platine ################## 
  • trunk/libIGCM/AA_atlas_LMDZ

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################## 
  • trunk/libIGCM/AA_atlas_ORCA_LIM

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################## 
  • trunk/libIGCM/AA_atlas_ORCHIDEE

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################## 
  • trunk/libIGCM/AA_atlas_PISCES

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################## 
  • trunk/libIGCM/AA_create_multi_se

    r620 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_create_se

    r620 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_create_ts

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_monitoring

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################## 
  • trunk/libIGCM/AA_pack_debug

    r617 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_pack_output

    r617 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_pack_restart

    r617 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_rebuild_fromArchive

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/AA_rebuild_fromWorkdir

    r616 r622  
    99#-Q- cesium #MSUB -E "-j o" 
    1010#-Q- cesium #MSUB -E "-S /bin/ksh" 
     11#-Q- curie ###################### 
     12#-Q- curie ## CURIE   TGCC/CEA ## 
     13#-Q- curie ###################### 
     14#-Q- curie #MSUB -r TS             # Nom du job                
     15#-Q- curie #MSUB -eo 
     16#-Q- curie #MSUB -n 1              # Reservation du processus 
     17#-Q- curie #MSUB -T 86400          # Limite de temps elapsed du job 
    1118#-Q- platine #!/usr/bin/ksh 
    1219#-Q- platine ################### 
  • trunk/libIGCM/libIGCM_comp/libIGCM_comp.ksh

    r615 r622  
    857857    eval ExeNameOut=\${config_Executable_${comp}[1]} 
    858858 
    859     # If missing executable then stop! 
    860     #if [ ! X${ExeNameIn} = X ] && [ ! -f ${R_EXE}/${ExeNameIn} ] ; then 
    861       IGCM_debug_Exit "IGCM_comp_Update missing executable ${ExeNameIn}" 
    862     #fi  
     859    # If missing executable and DRYRUN is set to 0 or 1  then stop! 
     860    if [ ${DRYRUN} -le 1 ] && [ X${ExeNameIn} != X\"\" ] && [ ! -f ${R_EXE}/${ExeNameIn} ] ; then 
     861      IGCM_debug_Exit "IGCM_comp_Update missing executable ${ExeNameIn}" 
     862    fi  
    863863 
    864864    if [ ${Period} -eq 1 ] && [ -f ${R_EXE}/${ExeNameIn} ] ; then 
  • trunk/libIGCM/libIGCM_config/libIGCM_config.ksh

    r619 r622  
    810810  IGCM_sys_PutBuffer_Out ${SUBMIT_DIR}/run.card ${R_BUF_KSH}/run.card rw 
    811811 
    812   IGCM_debug_Print 1 "Check components binary : size and creation date" 
    813  
    814   typeset LS_comp LS_bin ExeDate ExeCpuLog NextExeSize LastCompExeSize 
    815   typeset comp i 
    816   typeset ExeNameIn ExeNameOut UpdateExe ExeSecDateMax 
    817  
    818       #==================================# 
    819       #        Get last Exe Size         # 
    820       #==================================# 
    821  
    822   (( i=0 )) 
    823   if ( ${FirstInitialize} ) ; then 
    824     run_Log_LastExeSize="" 
     812  if [ ${DRYRUN} -le 1 ] ; then 
     813 
     814    IGCM_debug_Print 1 "Check components binary : size and creation date" 
     815 
     816    typeset LS_comp LS_bin ExeDate ExeCpuLog NextExeSize LastCompExeSize 
     817    typeset comp i 
     818    typeset ExeNameIn ExeNameOut UpdateExe ExeSecDateMax 
     819 
     820    #==================================# 
     821    #        Get last Exe Size         # 
     822    #==================================# 
     823 
     824    (( i=0 )) 
     825    if ( ${FirstInitialize} ) ; then 
     826      run_Log_LastExeSize="" 
     827      for comp in ${config_ListOfComponents[*]} ; do 
     828        run_Log_LastExeSize[$i]=0 
     829        (( i=i+1 )) 
     830      done 
     831    else 
     832      IGCM_card_DefineArrayFromOption ${SUBMIT_DIR}/run.card Log LastExeSize 
     833    fi 
     834    #==================================# 
     835    #         And Build ExeDate        # 
     836    #==================================# 
     837 
     838    # ExeDate = ATM_Jun_12_09:34-SRF_Jun_12_09:34-OCE_Jun_12_09:34-ICE_Jun_12_09:34-CPL_Jun_12_09:33 
     839    # Would be nice to have next line but no way to format ls output (need to ls -l --time-style "+%Y-%m-%dT%H:%M") 
     840    # ExeDate = ATM_2009-06-12T09:34+SRF_2009-06-12T09:34+OCE_2009-06-12T09:34+ICE_2009-06-12T09:34+CPL_2009-06-12T09:34 
     841    ExeDate="" 
     842    NextExeSize="( " 
     843    (( i=0 )) 
     844    UpdateExe=false 
     845    (( ExeSecDateMax = 0 )) 
    825846    for comp in ${config_ListOfComponents[*]} ; do 
    826       run_Log_LastExeSize[$i]=0 
     847 
     848      IGCM_debug_Print 3 ${comp} 
     849 
     850      eval ExeNameIn=\${config_Executable_${comp}[0]} 
     851      eval ExeNameOut=\${config_Executable_${comp}[1]} 
     852      # Only if we really have an executable for the component : 
     853      if [ X${ExeNameIn} = X\"\" ] ; then 
     854        # If there is no exe file for this component 
     855        (( ExeSize=0 )) 
     856      else 
     857        eval LS_bin=${R_EXE}/${ExeNameIn} 
     858        IGCM_sys_FileSize ${LS_bin} ExeSize 
     859 
     860        set +A LS_comp -- $( LC_TIME=en_US ls -l ${LS_bin} ) 
     861        if [ X${ExeDate} = X ] ; then 
     862          # First component exe date 
     863          ExeDate=${comp}_${LS_comp[5]}_${LS_comp[6]} 
     864        else 
     865          ExeDate=${ExeDate}-${comp}_${LS_comp[5]}_${LS_comp[6]} 
     866        fi 
     867        ExeDate=${ExeDate}_${LS_comp[7]} 
     868      fi 
     869 
     870      if [ ${i} -eq 0 ] ; then 
     871        # First component 
     872        NextExeSize="( "${ExeSize} 
     873      else 
     874        NextExeSize=${NextExeSize}", "${ExeSize} 
     875      fi 
     876      eval LastCompExeSize=${run_Log_LastExeSize[$i]} 
    827877      (( i=i+1 )) 
     878 
     879      if [ ${ExeSize} -ne ${LastCompExeSize} ] ; then 
     880        if ( ${FirstInitialize} ) ; then 
     881          IGCM_debug_Print 1 "Save first ${ExeNameIn} in ${R_OUT_EXE} !" 
     882        else 
     883          IGCM_debug_Print 1 "${ExeNameIn} has changed in ${R_EXE} !" 
     884          IGCM_debug_Print 1 "Save latest ${ExeNameIn} in ${R_OUT_EXE} !" 
     885          eval FileToBeDeleted[${#FileToBeDeleted[@]}]=${ExeNameOut} 
     886        fi 
     887        eval IGCM_sys_Put_Out ${ExeNameOut} ${R_OUT_EXE}/${PREFIX}_${ExeNameIn} rw 
     888        UpdateExe=true 
     889 
     890        IGCM_sys_GetDate_FichWork ${LS_bin} ExeSecDate 
     891        if [ $ExeSecDateMax -lt $ExeSecDate ] ; then 
     892          ExeSecDateMax=$ExeSecDate 
     893        fi 
     894      fi 
    828895    done 
    829   else 
    830     IGCM_card_DefineArrayFromOption ${SUBMIT_DIR}/run.card Log LastExeSize 
    831   fi 
    832       #==================================# 
    833       #         And Build ExeDate        # 
    834       #==================================# 
    835  
    836       # ExeDate = ATM_Jun_12_09:34-SRF_Jun_12_09:34-OCE_Jun_12_09:34-ICE_Jun_12_09:34-CPL_Jun_12_09:33 
    837       # Would be nice to have next line but no way to format ls output (need to ls -l --time-style "+%Y-%m-%dT%H:%M") 
    838       # ExeDate = ATM_2009-06-12T09:34+SRF_2009-06-12T09:34+OCE_2009-06-12T09:34+ICE_2009-06-12T09:34+CPL_2009-06-12T09:34 
    839   ExeDate="" 
    840   NextExeSize="( " 
    841   (( i=0 )) 
    842   UpdateExe=false 
    843   (( ExeSecDateMax = 0 )) 
    844   for comp in ${config_ListOfComponents[*]} ; do 
    845  
    846     IGCM_debug_Print 3 ${comp} 
    847  
    848     eval ExeNameIn=\${config_Executable_${comp}[0]} 
    849     eval ExeNameOut=\${config_Executable_${comp}[1]} 
    850         # Only if we really have an executable for the component : 
    851     if [ X${ExeNameIn} = X\"\" ] ; then 
    852           # If there is no exe file for this component 
    853       (( ExeSize=0 )) 
    854     else 
    855       eval LS_bin=${R_EXE}/${ExeNameIn} 
    856       IGCM_sys_FileSize ${LS_bin} ExeSize 
    857  
    858       set +A LS_comp -- $( LC_TIME=en_US ls -l ${LS_bin} ) 
    859       if [ X${ExeDate} = X ] ; then 
    860             # First component exe date 
    861         ExeDate=${comp}_${LS_comp[5]}_${LS_comp[6]} 
    862       else 
    863         ExeDate=${ExeDate}-${comp}_${LS_comp[5]}_${LS_comp[6]} 
     896 
     897    # SD : switch off for now 
     898    #if ( ${UpdateExe} ) ; then 
     899    #  echo "Launch SaveSourceModifications." 
     900    #  IGCM_config_SaveSourceModifications ${ExeSecDateMax} 
     901    #fi 
     902 
     903    NextExeSize=${NextExeSize}" )" 
     904    IGCM_card_WriteOption ${SUBMIT_DIR}/run.card Log LastExeSize "${NextExeSize}" 
     905 
     906    if [ ${DRYRUN} -le 1 ] ; then 
     907      tail -1500 ${Exe_Output} > ${Exe_Output}_tail.txt 
     908      ExeCpuLog=$( gawk -f ${libIGCM}/libIGCM_sys/IGCM_add_out.awk ${Exe_Output}_tail.txt ) 
     909      RET=$? 
     910      if [ $RET -eq 0 ] ; then 
     911        # ExeCpuLog variable contents 5 fields 
     912        echo "${CumulPeriod} ${PeriodDateBegin} ${PeriodDateEnd} ${ExeCpuLog} ${ExeDate}" |   \ 
     913          gawk '{printf("# %11d | %15s | %15s | %19s | %19s | %15.5f | %15.5f | %15.5f | %s\n", \ 
     914            $1,$2,$3,$4,$5,$6,$7,$8,$9)}' >> ${SUBMIT_DIR}/run.card 
    864915      fi 
    865       ExeDate=${ExeDate}_${LS_comp[7]} 
    866     fi 
    867  
    868     if [ ${i} -eq 0 ] ; then 
    869           # First component 
    870       NextExeSize="( "${ExeSize} 
    871     else 
    872       NextExeSize=${NextExeSize}", "${ExeSize} 
    873     fi 
    874     eval LastCompExeSize=${run_Log_LastExeSize[$i]} 
    875     (( i=i+1 )) 
    876  
    877     if [ ${ExeSize} -ne ${LastCompExeSize} ] ; then 
    878       if ( ${FirstInitialize} ) ; then 
    879         IGCM_debug_Print 1 "Save first ${ExeNameIn} in ${R_OUT_EXE} !" 
    880       else 
    881         IGCM_debug_Print 1 "${ExeNameIn} has changed in ${R_EXE} !" 
    882         IGCM_debug_Print 1 "Save latest ${ExeNameIn} in ${R_OUT_EXE} !" 
    883         eval FileToBeDeleted[${#FileToBeDeleted[@]}]=${ExeNameOut} 
    884       fi 
    885       eval IGCM_sys_Put_Out ${ExeNameOut} ${R_OUT_EXE}/${PREFIX}_${ExeNameIn} rw 
    886       UpdateExe=true 
    887  
    888       IGCM_sys_GetDate_FichWork ${LS_bin} ExeSecDate 
    889       if [ $ExeSecDateMax -lt $ExeSecDate ] ; then 
    890         ExeSecDateMax=$ExeSecDate 
    891       fi 
    892     fi 
    893   done 
    894  
    895 # SD : switch off for now 
    896 #      if ( ${UpdateExe} ) ; then 
    897 #       echo "Launch SaveSourceModifications." 
    898 #       IGCM_config_SaveSourceModifications ${ExeSecDateMax} 
    899 #      fi 
    900  
    901   NextExeSize=${NextExeSize}" )" 
    902   IGCM_card_WriteOption ${SUBMIT_DIR}/run.card Log LastExeSize "${NextExeSize}" 
    903  
    904   if [ ${DRYRUN} -le 1 ] ; then 
    905     tail -1500 ${Exe_Output} > ${Exe_Output}_tail.txt 
    906     ExeCpuLog=$( gawk -f ${libIGCM}/libIGCM_sys/IGCM_add_out.awk ${Exe_Output}_tail.txt ) 
    907     RET=$? 
    908     if [ $RET -eq 0 ] ; then 
    909           # ExeCpuLog variable contents 5 fields 
    910       echo "${CumulPeriod} ${PeriodDateBegin} ${PeriodDateEnd} ${ExeCpuLog} ${ExeDate}" |   \ 
    911         gawk '{printf("# %11d | %15s | %15s | %19s | %19s | %15.5f | %15.5f | %15.5f | %s\n", \ 
    912             $1,$2,$3,$4,$5,$6,$7,$8,$9)}' >> ${SUBMIT_DIR}/run.card 
    913     fi 
    914     eval FileToBeDeleted[${#FileToBeDeleted[@]}]="${Exe_Output}_tail.txt" 
    915   fi 
    916  
    917       # All was right ? no ? then we stop. 
     916      eval FileToBeDeleted[${#FileToBeDeleted[@]}]="${Exe_Output}_tail.txt" 
     917    fi 
     918 
     919  fi 
     920 
     921  # All was right ? no ? then we stop. 
    918922  IGCM_debug_Verif_Exit 
    919923 
    920       # If all was OK, we can delete all files not necessary for next Job 
     924  # If all was OK, we can delete all files not necessary for next Job 
    921925  echo 
    922926  IGCM_debug_Print 1 "Files that will be deleted before next period-run : " 
     
    928932  fi 
    929933 
    930       #=================================================# 
    931       #         Modification of libIGCM behaviour       # 
    932       #=================================================# 
    933  
    934       # To use this function, one must copy libIGCM.card from ${libIGCM} directory 
    935       # and put it in ${SUBMIT_DIR} directory. After modifications of ${SUBMIT_DIR}/libIGCM.card, 
    936       # variables define inside [UserChanges] will be modified for next Period of libIGCM main loop. 
     934  #=================================================# 
     935  #         Modification of libIGCM behaviour       # 
     936  #=================================================# 
     937 
     938  # To use this function, one must copy libIGCM.card from ${libIGCM} directory 
     939  # and put it in ${SUBMIT_DIR} directory. After modifications of ${SUBMIT_DIR}/libIGCM.card, 
     940  # variables define inside [UserChanges] will be modified for next Period of libIGCM main loop. 
    937941  if [ -f ${SUBMIT_DIR}/libIGCM.card ] ; then 
    938942    echo 
     
    945949    IGCM_debug_Print 2 "libIGCM_UserChanges" ${libIGCM_UserChanges[*]} 
    946950 
    947         # Special treatments for libIGCM internals 
     951    # Special treatments for libIGCM internals 
    948952    for option in ${libIGCM_UserChanges[*]} ; do 
    949953      IGCM_card_DefineVariableFromOption ${SUBMIT_DIR}/libIGCM.card UserChanges ${option} 
     
    960964        DateEnd=$( IGCM_date_ConvertFormatToGregorian ${config_UserChoices_DateEnd} ) 
    961965 
    962           # Period Length In Days between DateBegin and DateEnd 
     966        # Period Length In Days between DateBegin and DateEnd 
    963967        (( ExperienceLengthInDays=$( IGCM_date_DaysBetweenGregorianDate ${DateEnd} ${DateBegin} )  + 1 )) 
    964968        if [ ${ExperienceLengthInDays} -lt 0 ] ; then 
  • trunk/libIGCM/libIGCM_post/libIGCM_post.ksh

    r590 r622  
    101101  #POST_DIR=${R_OUT_POST}/${config_UserChoices_TagName}/${config_UserChoices_JobName} 
    102102  POST_DIR=${R_BUF_KSH} 
     103  # trick for IDRIS 
     104  POST_DIR=$( echo ${R_BUF_KSH} | sed -e "s/workgpfs/workdir/" ) 
     105 
    103106  if [ ${POST} = true ]; then 
    104107    echo 
  • trunk/libIGCM/libIGCM_sys/libIGCM_sys_ulam.ksh

    r619 r622  
    527527      return;; 
    528528    4)  echo "Erreur de rsync ; RERR_UNSUPPORTED" 
    529 echo "Action demandée non supportée : une tentative de manipulation de" 
    530 echo "fichiers  64-bits  sur une plate-forme qui ne les supporte pas a" 
    531 echo "été faite ; ou une option qui est supportée par le  client  mais" 
    532 echo "pas par le serveur a été spécifiée." 
    533 return;; 
    534 10) echo "Erreur de rsync ; RERR_SOCKETIO" 
    535 echo "Erreur dans le socket d'entrée sortie" 
    536 return;; 
    537 11) echo "Erreur de rsync ; RERR_FILEIO" 
    538 echo "Erreur d'entrée sortie fichier" 
    539 return;; 
    540 12) echo "Erreur de rsync ; RERR_STREAMIO" 
    541 echo "Erreur dans flux de donnée du protocole rsync" 
    542 return;; 
    543 13) echo "Erreur de rsync ; RERR_MESSAGEIO" 
    544 echo "Erreur avec les diagnostics du programme" 
    545 return;; 
    546 14) echo "Erreur de rsync ; RERR_IPC" 
    547 echo "Erreur dans le code IPC" 
    548 return;; 
    549 20) echo "Erreur de rsync ; RERR_SIGNAL" 
    550 echo "SIGUSR1 ou SIGINT reçu" 
    551 return;; 
    552 21) echo "Erreur de rsync ; RERR_WAITCHILD" 
    553 echo "Une erreur retournée par waitpid()" 
    554 return;; 
    555 22) echo "Erreur de rsync ; RERR_MALLOC" 
    556 echo "Erreur lors de l'allocation des tampons de mémoire de coeur" 
    557 return;; 
    558 23) echo "" 
    559 echo "Erreur fichier inexistant" 
    560 return;; 
    561 30) echo "Erreur de rsync ; RERR_TIMEOUT" 
    562 echo "Temps d'attente écoulé dans l'envoi/réception de données" 
    563 return;; 
    564 *)  echo "Erreur de rsync : code de retour de rsync inconnu :" $RET 
    565 return;; 
    566 esac 
    567 elif [ $MYLANG = "en" ] ; then 
    568 case $RET in 
    569 0)  return;; 
    570 1)  echo "rsync error : Syntax or usage error " 
    571 return;; 
    572 2)  echo "rsync error : Protocol incompatibility " 
    573 return;; 
    574 3)  echo "rsync error : Errors selecting input/output files, dirs" 
    575 return;; 
    576 4)  echo "rsync error : Requested action not supported: an attempt" 
    577 echo "was made to manipulate 64-bit files on a platform that cannot support" 
    578 echo "them; or an option was specified that is supported by the client and" 
    579 echo "not by the server." 
    580 return;; 
    581 5)  echo "rsync error : Error starting client-server protocol" 
    582 return;; 
    583 10) echo "rsync error : Error in socket I/O " 
    584 return;; 
    585 11) echo "rsync error : Error in file I/O " 
    586 return;; 
    587 12) echo "rsync error : Error in rsync protocol data stream " 
    588 return;; 
    589 13) echo "rsync error : Errors with program diagnostics " 
    590 return;; 
    591 14) echo "rsync error : Error in IPC code " 
    592 return;; 
    593 20) echo "rsync error : Received SIGUSR1 or SIGINT " 
    594 return;; 
    595 21) echo "rsync error : Some error returned by waitpid() " 
    596 return;; 
    597 22) echo "rsync error : Error allocating core memory buffers " 
    598 return;; 
    599 23) echo "rsync error : Partial transfer due to error" 
    600 return;; 
    601 24) echo "rsync error : Partial transfer due to vanished source files" 
    602 return;; 
    603 30) echo "rsync error : Timeout in data send/receive " 
    604 return;; 
    605 *)  echo "rsync error : return code of rsync unknown :" $RET 
    606 return;; 
    607 esac 
    608 else 
    609 echo "unknown language $MYLANG." 
    610 return 
    611 fi 
     529      echo "Action demandée non supportée : une tentative de manipulation de" 
     530      echo "fichiers  64-bits  sur une plate-forme qui ne les supporte pas a" 
     531      echo "été faite ; ou une option qui est supportée par le  client  mais" 
     532      echo "pas par le serveur a été spécifiée." 
     533      return;; 
     534    10) echo "Erreur de rsync ; RERR_SOCKETIO" 
     535      echo "Erreur dans le socket d'entrée sortie" 
     536      return;; 
     537    11) echo "Erreur de rsync ; RERR_FILEIO" 
     538      echo "Erreur d'entrée sortie fichier" 
     539      return;; 
     540    12) echo "Erreur de rsync ; RERR_STREAMIO" 
     541      echo "Erreur dans flux de donnée du protocole rsync" 
     542      return;; 
     543    13) echo "Erreur de rsync ; RERR_MESSAGEIO" 
     544      echo "Erreur avec les diagnostics du programme" 
     545      return;; 
     546    14) echo "Erreur de rsync ; RERR_IPC" 
     547      echo "Erreur dans le code IPC" 
     548      return;; 
     549    20) echo "Erreur de rsync ; RERR_SIGNAL" 
     550      echo "SIGUSR1 ou SIGINT reçu" 
     551      return;; 
     552    21) echo "Erreur de rsync ; RERR_WAITCHILD" 
     553      echo "Une erreur retournée par waitpid()" 
     554      return;; 
     555    22) echo "Erreur de rsync ; RERR_MALLOC" 
     556      echo "Erreur lors de l'allocation des tampons de mémoire de coeur" 
     557      return;; 
     558    23) echo "" 
     559      echo "Erreur fichier inexistant" 
     560      return;; 
     561    30) echo "Erreur de rsync ; RERR_TIMEOUT" 
     562      echo "Temps d'attente écoulé dans l'envoi/réception de données" 
     563      return;; 
     564    *)  echo "Erreur de rsync : code de retour de rsync inconnu :" $RET 
     565      return;; 
     566    esac 
     567  elif [ $MYLANG = "en" ] ; then 
     568    case $RET in 
     569    0)  return;; 
     570    1)  echo "rsync error : Syntax or usage error " 
     571      return;; 
     572    2)  echo "rsync error : Protocol incompatibility " 
     573      return;; 
     574    3)  echo "rsync error : Errors selecting input/output files, dirs" 
     575      return;; 
     576    4)  echo "rsync error : Requested action not supported: an attempt" 
     577      echo "was made to manipulate 64-bit files on a platform that cannot support" 
     578      echo "them; or an option was specified that is supported by the client and" 
     579      echo "not by the server." 
     580      return;; 
     581    5)  echo "rsync error : Error starting client-server protocol" 
     582      return;; 
     583    10) echo "rsync error : Error in socket I/O " 
     584      return;; 
     585    11) echo "rsync error : Error in file I/O " 
     586      return;; 
     587    12) echo "rsync error : Error in rsync protocol data stream " 
     588      return;; 
     589    13) echo "rsync error : Errors with program diagnostics " 
     590      return;; 
     591    14) echo "rsync error : Error in IPC code " 
     592      return;; 
     593    20) echo "rsync error : Received SIGUSR1 or SIGINT " 
     594      return;; 
     595    21) echo "rsync error : Some error returned by waitpid() " 
     596      return;; 
     597    22) echo "rsync error : Error allocating core memory buffers " 
     598      return;; 
     599    23) echo "rsync error : Partial transfer due to error" 
     600      return;; 
     601    24) echo "rsync error : Partial transfer due to vanished source files" 
     602      return;; 
     603    30) echo "rsync error : Timeout in data send/receive " 
     604      return;; 
     605    *)  echo "rsync error : return code of rsync unknown :" $RET 
     606      return;; 
     607    esac 
     608  else 
     609    echo "unknown language $MYLANG." 
     610    return 
     611  fi 
    612612} 
    613613 
     
    727727    typeset RET 
    728728 
    729         # Only if we use rsync 
    730         #IGCM_sys_TestDirArchive $( dirname $2 ) 
    731         # 
    732         #USUAL WAY 
     729    # Only if we use rsync 
     730    #IGCM_sys_TestDirArchive $( dirname $2 ) 
     731    # 
     732    #USUAL WAY 
    733733    rcp -r $1 gaya:$2 > out_rsync 2>&1 
    734734    RET=$? 
     
    740740    fi 
    741741 
    742         # due to rcommand latency 
     742    # due to rcommand latency 
    743743    sleep 10 
    744744 
     
    760760  fi 
    761761  if [ $DRYRUN = 0 ]; then 
     762 
    762763#       if [ ! -d ${1} ] ; then 
    763764#           echo "WARNING : IGCM_sys_Get_Dir ${1} DOES NOT EXIST ." 
     
    768769    typeset RET 
    769770 
    770         #USUAL WAY 
     771    #USUAL WAY 
    771772    rcp -rp gaya:$1 $2 > out_rsync 2>&1 
    772773    RET=$? 
     
    803804    typeset RET 
    804805 
    805         #USUAL WAY 
     806    #USUAL WAY 
    806807    rcp -r ${MASTER}:$1 $2 > out_rsync 2>&1 
    807808    RET=$? 
     
    842843      fi 
    843844    fi 
    844         # 
    845         # 
    846         # USUAL WAY 
     845    # 
     846    # 
     847    # USUAL WAY 
    847848    mfput $1 $2 > out_rsync 2>&1 
    848849    RET=$? 
     
    899900  if [ $DRYRUN -le 2 ]; then 
    900901    if [ X${1} = X'/l' ] ; then 
    901             # test if the first file is present in the old computation : 
     902      # test if the first file is present in the old computation : 
    902903      eval set +A dm_liste \${${2}} 
    903904    else 
     
    906907    eval DEST=\${${#}} 
    907908 
    908         # test if the (first) file is present in the old computation : 
    909         IGCM_sys_TestFileArchive ${dm_liste[0]} 
    910         RET=$? 
    911         if [ ${RET} -gt 0 ] ; then 
    912           echo "IGCM_sys_Get, ERROR : regular file ${dm_liste[0]} DOES NOT EXIST ." 
    913           IGCM_debug_Exit "IGCM_sys_Get" 
    914             #IGCM_debug_PopStack "IGCM_sys_Get" 
    915             #return 
    916         fi 
    917  
    918         # SD : dm_liste is not suited for computing job 
    919         #      because we change filename during transfert 
    920         #      dm_liste is better suited for post-treatment 
    921         # SD : dm_liste necessary only with RSYNC 
    922  
    923         #dm_liste=" " 
    924         #(( ifile=1 )) 
    925         #while [ $ifile -lt $# ] ; do 
    926         #    dm_liste=$( eval echo ${dm_liste[*]} " "\${${ifile}} ) 
    927         #    (( ifile = ifile + 1 )) 
    928         #done 
    929         #DEST=$( eval echo \${${#}} ) 
    930  
    931         #USUAL WAY 
    932         mfget ${dm_liste[*]} ${DEST} > out_rsync 2>&1 
    933  
    934 #       #RSYNC WITH NETWORK RSH CALL 
    935 #       echo ${RSYNC} ${RSYNC_opt} --rsync-path=${REMOTE_RSYNC} -e rsh ${RHOST}:"${dm_liste}" ${RHOST}:${RUN_DIR}/${DEST} > out_rsync 2>&1 
    936 #       ${RSYNC} ${RSYNC_opt} --rsync-path=${REMOTE_RSYNC} -e rsh ${RHOST}:"${dm_liste}" ${RHOST}:${RUN_DIR}/${DEST} >> out_rsync 2>&1 
    937  
    938 #       #RSYNC WITH NFS USE 
    939 #       echo ${RSYNC} ${RSYNC_opt} ${dm_liste} ${RUN_DIR}/${DEST} > out_rsync 2>&1 
    940 #       ${RSYNC} ${RSYNC_opt} ${dm_liste} ${RUN_DIR}/${DEST} >> out_rsync 2>&1 
    941  
    942 #       RET=$? 
    943 #       IGCM_sys_Rsync_out $RET 
    944  
    945 #       ${libIGCM}/libIGCM_sys/IGCM_analyse_rsync_out.awk out_rsync 
    946 #       (( RET=RET+$? )) 
     909    # test if the (first) file is present in the old computation : 
     910    IGCM_sys_TestFileArchive ${dm_liste[0]} 
     911    RET=$? 
     912    if [ ${RET} -gt 0 ] ; then 
     913      echo "IGCM_sys_Get, ERROR : regular file ${dm_liste[0]} DOES NOT EXIST ." 
     914      IGCM_debug_Exit "IGCM_sys_Get" 
     915      #IGCM_debug_PopStack "IGCM_sys_Get" 
     916      #return 
     917    fi 
     918 
     919    # SD : dm_liste is not suited for computing job 
     920    #      because we change filename during transfert 
     921    #      dm_liste is better suited for post-treatment 
     922    # SD : dm_liste necessary only with RSYNC 
     923 
     924    #dm_liste=" " 
     925    #(( ifile=1 )) 
     926    #while [ $ifile -lt $# ] ; do 
     927    #    dm_liste=$( eval echo ${dm_liste[*]} " "\${${ifile}} ) 
     928    #    (( ifile = ifile + 1 )) 
     929    #done 
     930    #DEST=$( eval echo \${${#}} ) 
     931 
     932    #USUAL WAY 
     933    mfget ${dm_liste[*]} ${DEST} > out_rsync 2>&1 
     934 
     935#   #RSYNC WITH NETWORK RSH CALL 
     936#   echo ${RSYNC} ${RSYNC_opt} --rsync-path=${REMOTE_RSYNC} -e rsh ${RHOST}:"${dm_liste}" ${RHOST}:${RUN_DIR}/${DEST} > out_rsync 2>&1 
     937#   ${RSYNC} ${RSYNC_opt} --rsync-path=${REMOTE_RSYNC} -e rsh ${RHOST}:"${dm_liste}" ${RHOST}:${RUN_DIR}/${DEST} >> out_rsync 2>&1 
     938 
     939#   #RSYNC WITH NFS USE 
     940#   echo ${RSYNC} ${RSYNC_opt} ${dm_liste} ${RUN_DIR}/${DEST} > out_rsync 2>&1 
     941#   ${RSYNC} ${RSYNC_opt} ${dm_liste} ${RUN_DIR}/${DEST} >> out_rsync 2>&1 
     942 
     943#   RET=$? 
     944#   IGCM_sys_Rsync_out $RET 
     945 
     946#   ${libIGCM}/libIGCM_sys/IGCM_analyse_rsync_out.awk out_rsync 
     947#   (( RET=RET+$? )) 
    947948 
    948949  else 
     
    950951  fi 
    951952  IGCM_debug_PopStack "IGCM_sys_Get" 
    952       } 
     953} 
    953954 
    954955#D-#================================================== 
     
    957958#D-* Examples: 
    958959#D- 
    959       function IGCM_sys_Put_Dods { 
    960         IGCM_debug_PushStack "IGCM_sys_Put_Dods" $@ 
    961         if ( $DEBUG_sys ) ; then 
    962           echo "IGCM_sys_Put_Dods :" $@ 
    963         fi 
    964         if [ $DRYRUN = 0 ]; then 
    965         # We take our time on that 
    966           sleep 10 
    967           IGCM_sys_TestDirArchive ${R_SAVE}/${1} 
    968           if [ $? != 0 ] ; then 
    969             echo "WARNING : IGCM_sys_Put_Dods ${R_SAVE}/${1} DOES NOT EXIST ." 
    970             IGCM_debug_PopStack "IGCM_sys_Put_Dods" 
    971             return 
    972           fi 
    973  
    974           typeset RET 
    975         # 
    976           rsh gaya exec /bin/ksh <<EOF 
     960function IGCM_sys_Put_Dods { 
     961  IGCM_debug_PushStack "IGCM_sys_Put_Dods" $@ 
     962  if ( $DEBUG_sys ) ; then 
     963    echo "IGCM_sys_Put_Dods :" $@ 
     964  fi 
     965  if [ $DRYRUN = 0 ]; then 
     966    # We take our time on that 
     967    sleep 10 
     968    IGCM_sys_TestDirArchive ${R_SAVE}/${1} 
     969    if [ $? != 0 ] ; then 
     970      echo "WARNING : IGCM_sys_Put_Dods ${R_SAVE}/${1} DOES NOT EXIST ." 
     971      IGCM_debug_PopStack "IGCM_sys_Put_Dods" 
     972      return 
     973    fi 
     974 
     975    typeset RET 
     976    # 
     977    rsh gaya exec /bin/ksh <<EOF 
    977978          cd ${R_SAVE} 
    978979          /usr/local/bin/dods_rm DODS/pub/${LOGIN}/${R_DODS}/${1} > /dev/null 2>&1 
     
    981982          /bin/chmod -R +rX ${R_SAVE}/${1} 
    982983          /bin/chmod -R u+w ${R_SAVE}/${1} 
    983           EOF 
    984           RET=$? 
    985  
    986           if [ ${RET} -gt 0 ] ; then 
    987             echo "IGCM_sys_Put_Dods : error." 
    988             IGCM_debug_Exit "IGCM_sys_Put_Dods" 
    989           fi 
    990         else 
    991           ( ${DEBUG_debug} ) && echo "DRYRUN mode = " $DRYRUN >> stack 
    992         fi 
    993         IGCM_debug_PopStack "IGCM_sys_Put_Dods" 
    994       } 
     984EOF 
     985    RET=$? 
     986 
     987    if [ ${RET} -gt 0 ] ; then 
     988      echo "IGCM_sys_Put_Dods : error." 
     989      IGCM_debug_Exit "IGCM_sys_Put_Dods" 
     990    fi 
     991  else 
     992    ( ${DEBUG_debug} ) && echo "DRYRUN mode = " $DRYRUN >> stack 
     993  fi 
     994  IGCM_debug_PopStack "IGCM_sys_Put_Dods" 
     995} 
    995996 
    996997############################################################## A FINIR !! 
     
    10011002#D-* Examples: 
    10021003#D- 
    1003       function IGCM_sys_GetDate_FichWork { 
    1004         IGCM_debug_PushStack "IGCM_sys_FichWork" $@ 
    1005         if ( $DEBUG_sys ) ; then 
    1006           echo "IGCM_sys_GetDate_FichWork :" $@ 
    1007         fi 
     1004function IGCM_sys_GetDate_FichWork { 
     1005  IGCM_debug_PushStack "IGCM_sys_FichWork" $@ 
     1006  if ( $DEBUG_sys ) ; then 
     1007    echo "IGCM_sys_GetDate_FichWork :" $@ 
     1008  fi 
    10081009    # donne la date filesys d'un fichier sur la machine work 
    1009         IGCM_debug_PopStack "IGCM_sys_FichWork" 
    1010       } 
     1010  IGCM_debug_PopStack "IGCM_sys_FichWork" 
     1011} 
    10111012 
    10121013#D-#================================================== 
     
    10151016#D-* Examples: 
    10161017#D- 
    1017       function IGCM_sys_GetDate_FichArchive { 
    1018         IGCM_debug_PushStack "IGCM_sys_FichArchive" $@ 
    1019         if ( $DEBUG_sys ) ; then 
    1020           echo "IGCM_sys_GetDate_FichArchive :" $@ 
    1021         fi 
    1022         IGCM_debug_PopStack "IGCM_sys_FichArchive" 
    1023       } 
     1018function IGCM_sys_GetDate_FichArchive { 
     1019  IGCM_debug_PushStack "IGCM_sys_FichArchive" $@ 
     1020  if ( $DEBUG_sys ) ; then 
     1021    echo "IGCM_sys_GetDate_FichArchive :" $@ 
     1022  fi 
     1023  IGCM_debug_PopStack "IGCM_sys_FichArchive" 
     1024} 
    10241025 
    10251026############################################################## 
    10261027# REBUILD OPERATOR 
    10271028 
    1028       function IGCM_sys_rebuild { 
    1029         IGCM_debug_PushStack "IGCM_sys_rebuild" -- $@ 
    1030         if ( $DEBUG_sys ) ; then 
    1031           echo "IGCM_sys_rebuild :" $@ 
    1032         fi 
    1033         /home/rech/psl/rpsl035/bin/rebuild -f -o $@ 
    1034         if [ $? -gt 0 ] ; then 
    1035           echo "IGCM_sys_rebuild : erreur ${@}." 
    1036           IGCM_debug_Exit "rebuild" 
    1037         fi 
    1038  
    1039         IGCM_debug_PopStack "IGCM_sys_rebuild" 
    1040       } 
     1029function IGCM_sys_rebuild { 
     1030  IGCM_debug_PushStack "IGCM_sys_rebuild" -- $@ 
     1031  if ( $DEBUG_sys ) ; then 
     1032    echo "IGCM_sys_rebuild :" $@ 
     1033  fi 
     1034  /home/rech/psl/rpsl035/bin/rebuild -f -o $@ 
     1035  if [ $? -gt 0 ] ; then 
     1036    echo "IGCM_sys_rebuild : erreur ${@}." 
     1037    IGCM_debug_Exit "rebuild" 
     1038  fi 
     1039 
     1040  IGCM_debug_PopStack "IGCM_sys_rebuild" 
     1041} 
    10411042############################################################## 
    10421043# NCO OPERATOR 
    10431044 
    1044       function IGCM_sys_ncap2 { 
    1045         IGCM_debug_PushStack "IGCM_sys_ncap2" -- $@ 
    1046         if ( $DEBUG_sys ) ; then 
    1047           echo "IGCM_sys_ncap2 :" $@ 
    1048         fi 
    1049         ncap2 "$@" 
    1050         if [ $? -gt 0 ] ; then 
    1051           echo "IGCM_sys_ncap2 : erreur ${@}." 
    1052           IGCM_debug_Exit "ncap2" 
    1053         fi 
    1054  
    1055         IGCM_debug_PopStack "IGCM_sys_ncap2" 
    1056       } 
    1057  
    1058       function IGCM_sys_ncatted { 
    1059         IGCM_debug_PushStack "IGCM_sys_ncatted" -- $@ 
    1060         if ( $DEBUG_sys ) ; then 
    1061           echo "IGCM_sys_ncatted :" $@ 
    1062         fi 
    1063         ncatted "$@" 
    1064         if [ $? -gt 0 ] ; then 
    1065           echo "IGCM_sys_ncatted : erreur ${@}." 
    1066           IGCM_debug_Exit "ncatted" 
    1067         fi 
    1068  
    1069         IGCM_debug_PopStack "IGCM_sys_ncatted" 
    1070       } 
    1071  
    1072       function IGCM_sys_ncbo { 
    1073         IGCM_debug_PushStack "IGCM_sys_ncbo" -- $@ 
    1074         if ( $DEBUG_sys ) ; then 
    1075           echo "IGCM_sys_ncbo :" $@ 
    1076         fi 
    1077         ncbo $@ 
    1078         if [ $? -gt 0 ] ; then 
    1079           echo "IGCM_sys_ncbo : erreur ${@}." 
    1080           IGCM_debug_Exit "ncbo" 
    1081         fi 
    1082  
    1083         IGCM_debug_PopStack "IGCM_sys_ncbo" 
    1084       } 
    1085  
    1086       function IGCM_sys_ncdiff { 
    1087         IGCM_debug_PushStack "IGCM_sys_ncdiff" -- $@ 
    1088         if ( $DEBUG_sys ) ; then 
    1089           echo "IGCM_sys_ncdiff :" $@ 
    1090         fi 
    1091         ncdiff $@ 
    1092         if [ $? -gt 0 ] ; then 
    1093           echo "IGCM_sys_ncdiff : erreur ${@}." 
    1094           IGCM_debug_Exit "ncdiff" 
    1095         fi 
    1096  
    1097         IGCM_debug_PopStack "IGCM_sys_ncdiff" 
    1098       } 
    1099  
    1100       function IGCM_sys_ncea { 
    1101         IGCM_debug_PushStack "IGCM_sys_ncea" -- $@ 
    1102         if ( $DEBUG_sys ) ; then 
    1103           echo "IGCM_sys_ncea :" $@ 
    1104         fi 
    1105         ncea $@ 
    1106         if [ $? -gt 0 ] ; then 
    1107           echo "IGCM_sys_ncea : erreur ${@}." 
    1108           IGCM_debug_Exit "ncea" 
    1109         fi 
    1110  
    1111         IGCM_debug_PopStack "IGCM_sys_ncea" 
    1112       } 
    1113  
    1114       function IGCM_sys_ncecat { 
    1115         IGCM_debug_PushStack "IGCM_sys_ncecat" -- $@ 
    1116         if ( $DEBUG_sys ) ; then 
    1117           echo "IGCM_sys_ncecat :" $@ 
    1118         fi 
    1119         ncecat $@ 
    1120         if [ $? -gt 0 ] ; then 
    1121           echo "IGCM_sys_ncecat : erreur ${@}." 
    1122           IGCM_debug_Exit "ncecat" 
    1123         fi 
    1124  
    1125         IGCM_debug_PopStack "IGCM_sys_ncecat" 
    1126       } 
    1127  
    1128       function IGCM_sys_ncflint { 
    1129         IGCM_debug_PushStack "IGCM_sys_ncflint" -- $@ 
    1130         if ( $DEBUG_sys ) ; then 
    1131           echo "IGCM_sys_ncflint :" $@ 
    1132         fi 
    1133         ncflint $@ 
    1134         if [ $? -gt 0 ] ; then 
    1135           echo "IGCM_sys_ncflint : erreur ${@}." 
    1136           IGCM_debug_Exit "ncflint" 
    1137         fi 
    1138  
    1139         IGCM_debug_PopStack "IGCM_sys_ncflint" 
    1140       } 
    1141  
    1142       function IGCM_sys_ncks { 
    1143         IGCM_debug_PushStack "IGCM_sys_ncks" -- $@ 
    1144         if ( $DEBUG_sys ) ; then 
    1145           echo "IGCM_sys_ncks :" $@ 
    1146         fi 
    1147         ncks $@ 
    1148         if [ $? -gt 0 ] ; then 
    1149           echo "IGCM_sys_ncks : erreur ${@}." 
    1150           IGCM_debug_Exit "ncks" 
    1151         fi 
    1152  
    1153         IGCM_debug_PopStack "IGCM_sys_ncks" 
    1154       } 
    1155  
    1156       function IGCM_sys_ncpdq { 
    1157         IGCM_debug_PushStack "IGCM_sys_ncpdq" -- $@ 
    1158         if ( $DEBUG_sys ) ; then 
    1159           echo "IGCM_sys_ncpdq :" $@ 
    1160         fi 
    1161         ncpdq $@ 
    1162         if [ $? -gt 0 ] ; then 
    1163           echo "IGCM_sys_ncpdq : erreur ${@}." 
    1164           IGCM_debug_Exit "ncpdq" 
    1165         fi 
    1166  
    1167         IGCM_debug_PopStack "IGCM_sys_ncpdq" 
    1168       } 
    1169  
    1170       function IGCM_sys_ncra { 
    1171         IGCM_debug_PushStack "IGCM_sys_ncra" -- $@ 
    1172         if ( $DEBUG_sys ) ; then 
    1173           echo "IGCM_sys_ncra :" $@ 
    1174         fi 
    1175         ncra $@ 
    1176         if [ $? -gt 0 ] ; then 
    1177           echo "IGCM_sys_ncra : erreur ${@}." 
    1178           IGCM_debug_Exit "ncra" 
    1179         fi 
    1180  
    1181         IGCM_debug_PopStack "IGCM_sys_ncra" 
    1182       } 
    1183  
    1184       function IGCM_sys_ncrcat { 
    1185         IGCM_debug_PushStack "IGCM_sys_ncrcat" -- $@ 
    1186         if ( $DEBUG_sys ) ; then 
    1187           echo "IGCM_sys_ncrcat :" $@ 
    1188         fi 
    1189         ncrcat $@ 
    1190         if [ $? -gt 0 ] ; then 
    1191           echo "IGCM_sys_ncrcat : erreur ${@}." 
     1045function IGCM_sys_ncap2 { 
     1046  IGCM_debug_PushStack "IGCM_sys_ncap2" -- $@ 
     1047  if ( $DEBUG_sys ) ; then 
     1048    echo "IGCM_sys_ncap2 :" $@ 
     1049  fi 
     1050  ncap2 "$@" 
     1051  if [ $? -gt 0 ] ; then 
     1052    echo "IGCM_sys_ncap2 : erreur ${@}." 
     1053    IGCM_debug_Exit "ncap2" 
     1054  fi 
     1055 
     1056  IGCM_debug_PopStack "IGCM_sys_ncap2" 
     1057} 
     1058 
     1059function IGCM_sys_ncatted { 
     1060  IGCM_debug_PushStack "IGCM_sys_ncatted" -- $@ 
     1061  if ( $DEBUG_sys ) ; then 
     1062    echo "IGCM_sys_ncatted :" $@ 
     1063  fi 
     1064  ncatted "$@" 
     1065  if [ $? -gt 0 ] ; then 
     1066    echo "IGCM_sys_ncatted : erreur ${@}." 
     1067    IGCM_debug_Exit "ncatted" 
     1068  fi 
     1069 
     1070  IGCM_debug_PopStack "IGCM_sys_ncatted" 
     1071} 
     1072 
     1073function IGCM_sys_ncbo { 
     1074  IGCM_debug_PushStack "IGCM_sys_ncbo" -- $@ 
     1075  if ( $DEBUG_sys ) ; then 
     1076    echo "IGCM_sys_ncbo :" $@ 
     1077  fi 
     1078  ncbo $@ 
     1079  if [ $? -gt 0 ] ; then 
     1080    echo "IGCM_sys_ncbo : erreur ${@}." 
     1081    IGCM_debug_Exit "ncbo" 
     1082  fi 
     1083 
     1084  IGCM_debug_PopStack "IGCM_sys_ncbo" 
     1085} 
     1086 
     1087function IGCM_sys_ncdiff { 
     1088  IGCM_debug_PushStack "IGCM_sys_ncdiff" -- $@ 
     1089  if ( $DEBUG_sys ) ; then 
     1090    echo "IGCM_sys_ncdiff :" $@ 
     1091  fi 
     1092  ncdiff $@ 
     1093  if [ $? -gt 0 ] ; then 
     1094    echo "IGCM_sys_ncdiff : erreur ${@}." 
     1095    IGCM_debug_Exit "ncdiff" 
     1096  fi 
     1097 
     1098  IGCM_debug_PopStack "IGCM_sys_ncdiff" 
     1099} 
     1100 
     1101function IGCM_sys_ncea { 
     1102  IGCM_debug_PushStack "IGCM_sys_ncea" -- $@ 
     1103  if ( $DEBUG_sys ) ; then 
     1104    echo "IGCM_sys_ncea :" $@ 
     1105  fi 
     1106  ncea $@ 
     1107  if [ $? -gt 0 ] ; then 
     1108    echo "IGCM_sys_ncea : erreur ${@}." 
     1109    IGCM_debug_Exit "ncea" 
     1110  fi 
     1111 
     1112  IGCM_debug_PopStack "IGCM_sys_ncea" 
     1113} 
     1114 
     1115function IGCM_sys_ncecat { 
     1116  IGCM_debug_PushStack "IGCM_sys_ncecat" -- $@ 
     1117  if ( $DEBUG_sys ) ; then 
     1118    echo "IGCM_sys_ncecat :" $@ 
     1119  fi 
     1120  ncecat $@ 
     1121  if [ $? -gt 0 ] ; then 
     1122    echo "IGCM_sys_ncecat : erreur ${@}." 
     1123    IGCM_debug_Exit "ncecat" 
     1124  fi 
     1125 
     1126  IGCM_debug_PopStack "IGCM_sys_ncecat" 
     1127} 
     1128 
     1129function IGCM_sys_ncflint { 
     1130  IGCM_debug_PushStack "IGCM_sys_ncflint" -- $@ 
     1131  if ( $DEBUG_sys ) ; then 
     1132    echo "IGCM_sys_ncflint :" $@ 
     1133  fi 
     1134  ncflint $@ 
     1135  if [ $? -gt 0 ] ; then 
     1136    echo "IGCM_sys_ncflint : erreur ${@}." 
     1137    IGCM_debug_Exit "ncflint" 
     1138  fi 
     1139 
     1140  IGCM_debug_PopStack "IGCM_sys_ncflint" 
     1141} 
     1142 
     1143function IGCM_sys_ncks { 
     1144  IGCM_debug_PushStack "IGCM_sys_ncks" -- $@ 
     1145  if ( $DEBUG_sys ) ; then 
     1146    echo "IGCM_sys_ncks :" $@ 
     1147  fi 
     1148  ncks $@ 
     1149  if [ $? -gt 0 ] ; then 
     1150    echo "IGCM_sys_ncks : erreur ${@}." 
     1151    IGCM_debug_Exit "ncks" 
     1152  fi 
     1153 
     1154  IGCM_debug_PopStack "IGCM_sys_ncks" 
     1155} 
     1156 
     1157function IGCM_sys_ncpdq { 
     1158  IGCM_debug_PushStack "IGCM_sys_ncpdq" -- $@ 
     1159  if ( $DEBUG_sys ) ; then 
     1160    echo "IGCM_sys_ncpdq :" $@ 
     1161  fi 
     1162  ncpdq $@ 
     1163  if [ $? -gt 0 ] ; then 
     1164    echo "IGCM_sys_ncpdq : erreur ${@}." 
     1165    IGCM_debug_Exit "ncpdq" 
     1166  fi 
     1167 
     1168  IGCM_debug_PopStack "IGCM_sys_ncpdq" 
     1169} 
     1170 
     1171function IGCM_sys_ncra { 
     1172  IGCM_debug_PushStack "IGCM_sys_ncra" -- $@ 
     1173  if ( $DEBUG_sys ) ; then 
     1174    echo "IGCM_sys_ncra :" $@ 
     1175  fi 
     1176  ncra $@ 
     1177  if [ $? -gt 0 ] ; then 
     1178    echo "IGCM_sys_ncra : erreur ${@}." 
     1179    IGCM_debug_Exit "ncra" 
     1180  fi 
     1181 
     1182  IGCM_debug_PopStack "IGCM_sys_ncra" 
     1183} 
     1184 
     1185function IGCM_sys_ncrcat { 
     1186  IGCM_debug_PushStack "IGCM_sys_ncrcat" -- $@ 
     1187  if ( $DEBUG_sys ) ; then 
     1188    echo "IGCM_sys_ncrcat :" $@ 
     1189  fi 
     1190  ncrcat $@ 
     1191  if [ $? -gt 0 ] ; then 
     1192    echo "IGCM_sys_ncrcat : erreur ${@}." 
    11921193#       IGCM_debug_Exit "ncrcat" 
    1193         fi 
    1194  
    1195         IGCM_debug_PopStack "IGCM_sys_ncrcat" 
    1196       } 
    1197  
    1198       function IGCM_sys_ncrename { 
    1199         IGCM_debug_PushStack "IGCM_sys_ncrename" -- $@ 
    1200         if ( $DEBUG_sys ) ; then 
    1201           echo "IGCM_sys_ncrename :" $@ 
    1202         fi 
    1203         ncrename $@ 
    1204         if [ $? -gt 0 ] ; then 
    1205           echo "IGCM_sys_ncrename : erreur ${@}." 
    1206           IGCM_debug_Exit "ncrename" 
    1207         fi 
    1208  
    1209         IGCM_debug_PopStack "IGCM_sys_ncrename" 
    1210       } 
    1211  
    1212       function IGCM_sys_ncwa { 
    1213         IGCM_debug_PushStack "IGCM_sys_ncwa" -- $@ 
    1214         if ( $DEBUG_sys ) ; then 
    1215           echo "IGCM_sys_ncwa :" $@ 
    1216         fi 
    1217         ncwa $@ 
    1218         if [ $? -gt 0 ] ; then 
    1219           echo "IGCM_sys_ncwa : erreur ${@}." 
    1220           IGCM_debug_Exit "ncwa" 
    1221         fi 
    1222  
    1223         IGCM_debug_PopStack "IGCM_sys_ncwa" 
    1224       } 
     1194  fi 
     1195 
     1196  IGCM_debug_PopStack "IGCM_sys_ncrcat" 
     1197} 
     1198 
     1199function IGCM_sys_ncrename { 
     1200  IGCM_debug_PushStack "IGCM_sys_ncrename" -- $@ 
     1201  if ( $DEBUG_sys ) ; then 
     1202    echo "IGCM_sys_ncrename :" $@ 
     1203  fi 
     1204  ncrename $@ 
     1205  if [ $? -gt 0 ] ; then 
     1206    echo "IGCM_sys_ncrename : erreur ${@}." 
     1207    IGCM_debug_Exit "ncrename" 
     1208  fi 
     1209 
     1210  IGCM_debug_PopStack "IGCM_sys_ncrename" 
     1211} 
     1212 
     1213function IGCM_sys_ncwa { 
     1214  IGCM_debug_PushStack "IGCM_sys_ncwa" -- $@ 
     1215  if ( $DEBUG_sys ) ; then 
     1216    echo "IGCM_sys_ncwa :" $@ 
     1217  fi 
     1218  ncwa $@ 
     1219  if [ $? -gt 0 ] ; then 
     1220    echo "IGCM_sys_ncwa : erreur ${@}." 
     1221    IGCM_debug_Exit "ncwa" 
     1222  fi 
     1223 
     1224  IGCM_debug_PopStack "IGCM_sys_ncwa" 
     1225} 
    12251226 
    12261227############################################################## 
    12271228# CDO OPERATOR 
    12281229 
    1229       function IGCM_sys_cdo { 
    1230         IGCM_debug_PushStack "IGCM_sys_cdo" -- $@ 
    1231  
    1232         \cdo $@ 
    1233         if [ $? -gt 0 ] ; then 
    1234           echo "IGCM_sys_cdo : erreur ${@}." 
    1235           IGCM_debug_PopStack "IGCM_sys_cdo" 
    1236           return 1 
    1237         else 
    1238           IGCM_debug_PopStack "IGCM_sys_cdo" 
    1239           return 0 
    1240         fi 
    1241  
    1242         IGCM_debug_PopStack "IGCM_sys_cdo" 
    1243       } 
     1230function IGCM_sys_cdo { 
     1231  IGCM_debug_PushStack "IGCM_sys_cdo" -- $@ 
     1232 
     1233  \cdo $@ 
     1234  if [ $? -gt 0 ] ; then 
     1235    echo "IGCM_sys_cdo : erreur ${@}." 
     1236    IGCM_debug_PopStack "IGCM_sys_cdo" 
     1237    return 1 
     1238  else 
     1239    IGCM_debug_PopStack "IGCM_sys_cdo" 
     1240    return 0 
     1241  fi 
     1242 
     1243  IGCM_debug_PopStack "IGCM_sys_cdo" 
     1244} 
    12441245 
    12451246############################################################ 
    12461247# Activate Running Environnment Variables 
    12471248 
    1248       function IGCM_sys_activ_variables { 
    1249         IGCM_debug_PushStack "IGCM_sys_activ_variables" 
    1250         if ( $DEBUG_sys ) ; then 
    1251           echo "IGCM_sys_activ_variables" 
    1252         fi 
    1253         IGCM_debug_PopStack "IGCM_sys_activ_variables" 
    1254       } 
     1249function IGCM_sys_activ_variables { 
     1250  IGCM_debug_PushStack "IGCM_sys_activ_variables" 
     1251  if ( $DEBUG_sys ) ; then 
     1252    echo "IGCM_sys_activ_variables" 
     1253  fi 
     1254  IGCM_debug_PopStack "IGCM_sys_activ_variables" 
     1255} 
    12551256 
    12561257############################################################ 
    12571258# Desactivate Running Environnment Variables 
    12581259 
    1259       function IGCM_sys_desactiv_variables { 
    1260         IGCM_debug_PushStack "IGCM_sys_desactiv_variables" 
    1261         if ( $DEBUG_sys ) ; then 
    1262           echo "IGCM_sys_desactiv_variables" 
    1263         fi 
    1264         IGCM_debug_PopStack "IGCM_sys_desactiv_variables" 
    1265       } 
     1260function IGCM_sys_desactiv_variables { 
     1261  IGCM_debug_PushStack "IGCM_sys_desactiv_variables" 
     1262  if ( $DEBUG_sys ) ; then 
     1263    echo "IGCM_sys_desactiv_variables" 
     1264  fi 
     1265  IGCM_debug_PopStack "IGCM_sys_desactiv_variables" 
     1266} 
    12661267 
    12671268############################################################ 
    12681269# Build run file 
    12691270 
    1270       function IGCM_sys_build_run_file { 
    1271         IGCM_debug_PushStack "IGCM_sys_build_run_file" 
    1272         if ( $DEBUG_sys ) ; then 
    1273           echo "IGCM_sys_build_run_file" 
    1274         fi 
    1275         IGCM_debug_PopStack "IGCM_sys_build_run_file" 
    1276       } 
     1271function IGCM_sys_build_run_file { 
     1272  IGCM_debug_PushStack "IGCM_sys_build_run_file" 
     1273  if ( $DEBUG_sys ) ; then 
     1274    echo "IGCM_sys_build_run_file" 
     1275  fi 
     1276  IGCM_debug_PopStack "IGCM_sys_build_run_file" 
     1277} 
Note: See TracChangeset for help on using the changeset viewer.