source: tags/libIGCM_v1_4/AA_create_se

Last change on this file was 178, checked in by cetlod, 15 years ago

Add RESOL_MBG (Marine BioGeochemistry?) for use with TOP component

  • Property licence set to
    The following licence information concerns ONLY the libIGCM tools
    ==================================================================

    Copyright © Centre National de la Recherche Scientifique CNRS
    Commissariat à l'Énergie Atomique CEA

    libIGCM : Library for Portable Models Computation of IGCM Group.

    IGCM Group is the french IPSL Global Climate Model Group.

    This library is a set of shell scripts and functions whose purpose is
    the management of the initialization, the launch, the transfer of
    output files, the post-processing and the monitoring of datas produce
    by any numerical program on any plateforme.

    This software is governed by the CeCILL license under French law and
    abiding by the rules of distribution of free software. You can use,
    modify and/ or redistribute the software under the terms of the CeCILL
    license as circulated by CEA, CNRS and INRIA at the following URL
    "http://www.cecill.info".

    As a counterpart to the access to the source code and rights to copy,
    modify and redistribute granted by the license, users are provided only
    with a limited warranty and the software's author, the holder of the
    economic rights, and the successive licensors have only limited
    liability.

    In this respect, the user's attention is drawn to the risks associated
    with loading, using, modifying and/or developing or reproducing the
    software by the user in light of its specific status of free software,
    that may mean that it is complicated to manipulate, and that also
    therefore means that it is reserved for developers and experienced
    professionals having in-depth computer knowledge. Users are therefore
    encouraged to load and test the software's suitability as regards their
    requirements in conditions enabling the security of their systems and/or
    data to be ensured and, more generally, to use and operate it in the
    same conditions as regards security.

    The fact that you are presently reading this means that you have had
    knowledge of the CeCILL license and that you accept its terms.
  • Property svn:keywords set to Date Author Revision
File size: 18.5 KB
Line 
1#-Q- platine #!/usr/bin/ksh
2#-Q- platine ###################
3#-Q- platine ## PLATINE   CEA ##
4#-Q- platine ###################
5#-Q- platine #BSUB -J SE                     # Nom du job
6#-Q- platine #BSUB -N                        # message a la fin du job
7#-Q- platine #BSUB -n 1                      # reservation des processeurs pour le job
8#-Q- platine #BSUB -W 1:00                   # Limite temps
9#-Q- platine #BSUB -q post              # Passage en queue post
10#-Q- sx8brodie #!/bin/ksh
11#-Q- sx8brodie #######################
12#-Q- sx8brodie ## SX8BRODIE   IDRIS ##
13#-Q- sx8brodie #######################
14#-Q- sx8brodie # Temps Elapsed max. d'une requete hh:mm:ss
15#-Q- sx8brodie # @ wall_clock_limit = 10:00:00
16#-Q- sx8brodie # Nom du travail LoadLeveler
17#-Q- sx8brodie # @ job_name   = SE
18#-Q- sx8brodie # Fichier de sortie standard du travail       
19#-Q- sx8brodie # @ output     = $(job_name).$(jobid)
20#-Q- sx8brodie # Fichier de sortie d'erreur du travail
21#-Q- sx8brodie # @ error      =  $(job_name).$(jobid)
22#-Q- sx8brodie # pour recevoir un mail en cas de depassement du temps Elapsed (ou autre pb.)
23#-Q- sx8brodie # @ notification = error
24#-Q- sx8brodie # @ environment  = $DEBUG_debug ; $MODIPSL ; $libIGCM ; $libIGCM_SX ; $SUBMIT_DIR ; $REBUILD_DIR ; $RebuildFromArchive ; $POST_DIR ; $MASTER ; $DateBegin ; $PeriodDateBegin ; $PeriodDateEnd ; $NbRebuildDir ; $StandAlone ; $RESOL_ATM ; $RESOL_OCE ; $RESOL_ICE ; $RESOL_MBG ; $RESOL_SRF ; $MASTER
25#-Q- sx8brodie # @ queue
26#-Q- aix6 #!/bin/ksh
27#-Q- aix6 #######################
28#-Q- aix6 ##   VARGAS   IDRIS  ##
29#-Q- aix6 #######################
30#-Q- aix6 # Temps Elapsed max. d'une requete hh:mm:ss
31#-Q- aix6 # @ wall_clock_limit = 10:00:00
32#-Q- aix6 # Nom du travail LoadLeveler
33#-Q- aix6 # @ job_name   = SE
34#-Q- aix6 # Fichier de sortie standard du travail       
35#-Q- aix6 # @ output     = $(job_name).$(jobid)
36#-Q- aix6 # Fichier de sortie d'erreur du travail
37#-Q- aix6 # @ error      =  $(job_name).$(jobid)
38#-Q- aix6 # pour recevoir un mail en cas de depassement du temps Elapsed (ou autre pb.)
39#-Q- aix6 # @ notification = error
40#-Q- aix6 # @ environment  = $DEBUG_debug ; $MODIPSL ; $libIGCM ; $libIGCM_SX ; $SUBMIT_DIR ; $REBUILD_DIR ; $RebuildFromArchive ; $POST_DIR ; $MASTER ; $DateBegin ; $PeriodDateBegin ; $PeriodDateEnd ; $NbRebuildDir ; $StandAlone ; $RESOL_ATM ; $RESOL_OCE ; $RESOL_ICE ; $RESOL_MBG ; $RESOL_SRF ; $MASTER
41#-Q- aix6 # @ queue
42#-Q- sx8mercure #!/bin/ksh
43#-Q- sx8mercure ######################
44#-Q- sx8mercure ## SX8MERCURE   CEA ##
45#-Q- sx8mercure ######################
46#-Q- sx8mercure #PBS -N SE                   # Nom du job
47#-Q- sx8mercure #PBS -j o                    # regroupement des stdout et stderr
48#-Q- sx8mercure #PBS -S /usr/bin/ksh         # shell de soumission
49#-Q- sx8mercure #PBS -l memsz_job=1gb        # Limite memoire a 1 Go
50#-Q- sx8mercure #PBS -l cputim_job=1:00:00   # Limite temps a 1 heures
51#-Q- sx8mercure #PBS -q scalaire
52#-Q- sx9mercure #!/bin/ksh
53#-Q- sx9mercure ######################
54#-Q- sx9mercure ## SX9MERCURE   CEA ##
55#-Q- sx9mercure ######################
56#-Q- sx9mercure #PBS -N SE                   # Nom du job
57#-Q- sx9mercure #PBS -j o                    # regroupement des stdout et stderr
58#-Q- sx9mercure #PBS -S /usr/bin/ksh         # shell de soumission
59#-Q- sx9mercure #PBS -l memsz_job=1gb        # Limite memoire a 1 Go
60#-Q- sx9mercure #PBS -l cputim_job=1:00:00   # Limite temps a 1 heures
61#-Q- sx9mercure #PBS -q scalaire
62#-Q- default #!/bin/ksh
63#-Q- default ##################
64#-Q- default ## DEFAULT HOST ##
65#-Q- default ##################
66
67# $Date$
68# $Author$
69# $Revision$
70# IPSL (2006)
71#  This software is governed by the CeCILL licence see libIGCM/libIGCM_CeCILL.LIC
72
73#set -eu
74#set -vx
75
76date
77
78#-Q- sx8brodie export OMP_NUM_THREADS=1
79#-Q- aix6 export OMP_NUM_THREADS=1
80
81########################################################################
82
83#D- Flag to determine if this job in a standalone mode
84#D- Default : value from AA_job if any
85StandAlone=${StandAlone:=true}
86
87#D- Flag to determine atlas job's output directory
88#D- Default : value from libIGCM_post.ksh if any
89POST_DIR=${POST_DIR:=${PBS_O_WORKDIR}}
90
91#D- Increased verbosity (1, 2, 3)
92#D- Default : value from AA_job if any
93Verbosity=${Verbosity:=3}
94
95#D- Low level debug : to bypass lib test checks and stack construction
96#D- Default : value from AA_job if any
97DEBUG_debug=${DEBUG_debug:=false}
98
99#D- Low level debug : to bypass lib test checks and stack construction
100#D- Default : value from AA_job if any
101libIGCM=${libIGCM:=/path/to/your/libIGCM}
102
103#D- TEMPORARY Flag to determine atmospheric resolution
104#D- Default : value from atmospheric driver if any
105RESOL_ATM=${RESOL_ATM:=ALL}
106
107#D- TEMPORARY Flag to determine ocean resolution
108#D- Default : value from ocean driver if any
109RESOL_OCE=${RESOL_OCE:=ORCA2}
110
111#D- TEMPORARY Flag to determine ice resolution
112#D- Default : value from ice driver if any
113RESOL_ICE=${RESOL_ICE:=ORCA2}
114
115#D- TEMPORARY Flag to determine marine biogeochemistry resolution
116#D- Default : value from ice driver if any
117RESOL_MBG=${RESOL_MBG:=ORCA2}
118
119#D- Flag to determine surface resolution
120#D- Default : value from surface driver if any
121RESOL_SRF=${RESOL_SRF:=ALL}
122
123########################################################################
124
125. ${libIGCM}/libIGCM_debug/libIGCM_debug.ksh
126      ( ${DEBUG_debug} ) && IGCM_debug_Check
127. ${libIGCM}/libIGCM_card/libIGCM_card.ksh
128     ( ${DEBUG_debug} ) && IGCM_card_Check
129. ${libIGCM}/libIGCM_date/libIGCM_date.ksh
130     ( ${DEBUG_debug} ) && IGCM_date_Check
131#-------
132. ${libIGCM}/libIGCM_sys/libIGCM_sys.ksh
133
134########################################################################
135
136#set -vx
137
138if [ ${DEBUG_debug} = true ] ; then
139    IGCM_sys_MkdirWork ${RUN_DIR_PATH}
140    echo "RUN_DIR_PATH ${RUN_DIR_PATH} ok."
141fi
142IGCM_sys_Cd ${RUN_DIR_PATH}
143
144if [ ${StandAlone} = true ] ; then
145    CARD_DIR=${SUBMIT_DIR}
146else
147    CARD_DIR=${RUN_DIR_PATH}/$( basename ${SUBMIT_DIR} )
148    IGCM_sys_Get_Master ${SUBMIT_DIR} ${RUN_DIR_PATH}
149fi
150
151#
152# First of all
153#
154IGCM_card_DefineArrayFromSection   ${CARD_DIR}/config.card UserChoices
155typeset option
156for option in ${config_UserChoices[*]} ; do
157    IGCM_card_DefineVariableFromOption ${CARD_DIR}/config.card UserChoices ${option}
158done
159#
160echo
161IGCM_debug_Print 1 "DefineArrayFromOption  : config_UserChoices"
162IGCM_debug_PrintVariables 3 config_UserChoices_JobName
163IGCM_debug_PrintVariables 3 config_UserChoices_LongName
164IGCM_debug_PrintVariables 3 config_UserChoices_TagName
165IGCM_debug_PrintVariables 3 config_UserChoices_CalendarType
166IGCM_debug_PrintVariables 3 config_UserChoices_DateBegin
167IGCM_debug_PrintVariables 3 config_UserChoices_DateEnd
168IGCM_debug_PrintVariables 3 config_UserChoices_PeriodLength
169echo
170
171#==================================
172
173R_SAVE=${R_OUT}/${config_UserChoices_TagName}/${config_UserChoices_JobName}
174#
175IGCM_card_DefineArrayFromSection   ${CARD_DIR}/config.card ListOfComponents
176#
177IGCM_card_DefineVariableFromOption ${CARD_DIR}/config.card Post SeasonalFrequency
178#
179# Determine period for seasonnal average. Default : value from AA_job if any
180#
181DateBegin=${DateBegin:=$( IGCM_date_ConvertFormatToGregorian ${config_UserChoices_DateBegin} )}
182#
183PeriodDateEnd=${PeriodDateEnd:=$( IGCM_date_ConvertFormatToGregorian ${config_UserChoices_DateEnd} )}
184#
185freq=$( echo ${config_Post_SeasonalFrequency} |  sed -e "s/[yY]//" )
186#
187an_fin=$(( $( IGCM_date_ConvertGregorianDateToJulian ${PeriodDateEnd} ) / 1000 ))
188an_deb=$( IGCM_date_YearDigit $(( an_fin - freq + 1 )) )
189an_fin=$( IGCM_date_YearDigit ${an_fin} )
190#
191# For each component selected determine which files need post-processing
192#
193for comp in ${config_ListOfComponents[*]} ; do
194    #
195    IGCM_card_DefineArrayFromOption ${CARD_DIR}/config.card ListOfComponents ${comp}
196    eval compname=\${config_ListOfComponents_${comp}[0]} > /dev/null 2>&1
197    #
198    card=${CARD_DIR}/COMP/${compname}.card
199    IGCM_card_DefineArrayFromOption ${card} OutputFiles List
200    #
201    ListFilesName=${compname}_OutputFiles_List
202    eval FileName0=\${${ListFilesName}[0]} > /dev/null 2>&1
203    #
204    if [ X${FileName0} != X${NULL_STR} ] ; then
205        #
206        #IGCM_debug_Print 1 "Component      : ${compname}"
207        #
208        # INITIALISATION
209        #
210        eval NbFiles=\${#${ListFilesName}[@]} > /dev/null 2>&1
211        typeset i=0
212        #
213        until [ $i -eq $NbFiles ]; do
214            #
215            eval file_in_=\${${ListFilesName}[$i]} > /dev/null 2>&1
216            eval file_in=${file_in_}
217            let $(( i_ = i+2 ))
218            eval flag_post_=\${${ListFilesName}[$i_]} > /dev/null 2>&1
219            eval flag_post=${flag_post_}
220            #
221            if [ X${flag_post} != XNONE ] ; then
222                #
223                # Initialize ${flag_post}_${compname}_${post_freq}
224                #
225                eval export ${flag_post}_${compname}_SeasonalFrequency=true
226            fi
227            let $(( i=i+3 ))
228        done
229    fi
230
231    for element in $( env | grep Post_ | grep ${compname}_SeasonalFrequency | grep -i "=true" ) ; do
232        #
233        FILE=$( echo ${element} | awk -F "_${compname}_SeasonalFrequency" '{print $1}' | awk "-FPost_" '{print $2}' )
234        #
235        # CREATE LIST
236        #
237        DIRECTORY=${R_SAVE}/${comp}/Analyse/SE
238        #
239        TestedFile=${config_UserChoices_JobName}_SE_${an_deb}_${an_fin}_${FILE}.nc
240        #
241        IGCM_sys_TestFileArchive ${DIRECTORY}/${TestedFile}
242        if [ ! $? = 0 ] ; then
243            eval set +A LISTE_FILE_${comp} \$\{LISTE_FILE_${comp}[*]} ${FILE}
244            if [ ! ${RebuildFrequency} = true ] ; then
245                IGCM_card_DefineArrayFromOption ${card} Post_${FILE} Patches
246                eval set +A LISTE_PATCHES_${FILE} \$\{${compname}_Post_${FILE}_Patches[*]}
247                if [ X$( eval echo \${LISTE_PATCHES_${FILE}[0]} ) !=  X${NULL_STR} ]; then
248                    for Patch in $( eval echo \${LISTE_PATCHES_${FILE}[*]} ); do
249                        if [ Xload${Patch} != X ] ; then
250                            . ${libIGCM}/libIGCM_post/IGCM_${Patch}.ksh
251                            eval load${Patch}=loaded
252                        fi
253                    done
254                fi
255            fi
256        fi
257             #
258    done     # for element
259done         # for comp
260
261for comp in ${config_ListOfComponents[*]} ; do
262    #
263    eval R_OUT_${comp}=${R_SAVE}/${comp}
264    #
265    i=0
266    for file in $( eval echo \${LISTE_FILE_${comp}[*]} ); do
267        #
268        # Determine in which output can we find file
269        # IE : Output/MO or Output/DA or ...
270        #
271        FlagDir=$( echo ${file} | awk -F "_" '{print $1}' )
272        case ${FlagDir} in
273            1Y)    FreqDir=YE  ;;
274            1M)    FreqDir=MO  ;;
275            5D|1D) FreqDir=DA  ;;
276            HF)    FreqDir=HF  ;;
277            INS)   FreqDir=INS ;;
278        esac
279        #
280        RESULT_SE=${config_UserChoices_JobName}_SE_${an_deb}_${an_fin}_${file}.nc
281        # Do not redoo an existing SE
282        IGCM_sys_TestFileArchive ${R_SAVE}/${comp}/Analyse/SE/${RESULT_SE}
283        if [ $? = 0 ] ; then
284            continue
285        fi
286        #
287        eval file_path=\${R_OUT_${comp}}/Output/${FreqDir}/
288        #
289        case ${config_UserChoices_PeriodLength} in
290        # For Yearly simulation :
291        1Y|1y)
292          (( an = an_deb ))
293          # Initialize array
294          #set -A liste_file_se
295          #set -A liste_file_se_tmp
296          unset liste_file_se
297          unset liste_file_se_tmp
298          while [ ${an} -le ${an_fin} ] ; do
299              moisL=$( IGCM_date_DaysInMonth ${an} ${mois} )
300              #
301              an4=$(printf "%04i\n" ${an} )
302              #
303              diy=$( IGCM_date_DaysInYear $an4 )
304              afin=$( IGCM_date_AddDaysToGregorianDate ${an4}0101 $(( diy - 1 )) )
305              date=${an4}0101_${afin}
306              #set +A liste_file_se ${liste_file_se[*]} ${file_path}${config_UserChoices_JobName}_${date}_${file}.nc
307              #set +A liste_file_se_tmp ${liste_file_se_tmp[*]} ${config_UserChoices_JobName}_${date}_${file}.nc
308              liste_file_se[${#liste_file_se[*]}]=${file_path}${config_UserChoices_JobName}_${date}_${file}.nc
309              liste_file_se_tmp[${#liste_file_se_tmp[*]}]=${config_UserChoices_JobName}_${date}_${file}.nc
310              (( an = an + 1 ))
311          done
312          #
313          IGCM_sys_Get /l liste_file_se[*] ${RUN_DIR_PATH}
314          eval ExitFlag=false
315          IGCM_debug_Verif_Exit_Post
316         
317          # Apply IGCM_Patch if needed
318          if [ ! ${RebuildFrequency} = true ] ; then
319              if [ X$( eval echo \${LISTE_PATCHES_${file}[0]} ) !=  X${NULL_STR} ]; then
320                  for file_t in $( eval echo ${liste_file_se_tmp[*]} ); do
321                      for Patch in $( eval echo \${LISTE_PATCHES_${file}[*]} ); do
322                          IGCM_${Patch} ${file_t}
323                      done
324                  done
325              fi
326          fi
327
328          for mois in  01 02 03 04 05 06 07 08 09 10 11 12 ; do
329          #
330              (( nb = ${mois} - 1 ))
331          #
332              OUT_SE[${nb}]=${config_UserChoices_JobName}_SE${mois}_${an_deb}_${an_fin}_${file}.nc
333              IGCM_sys_ncra -O -d time_counter,${nb},,12 ${liste_file_se_tmp[*]} ${OUT_SE[${nb}]}
334          done
335          IGCM_sys_Rm ${liste_file_se_tmp[*]}
336          eval ExitFlag=false
337          IGCM_debug_Verif_Exit_Post
338          ;;
339        # For Monthly simulation :
340        1M|1m)
341          for mois in  01 02 03 04 05 06 07 08 09 10 11 12 ; do
342              #
343              (( nb = ${mois} - 1 ))
344              #
345              OUT_SE[${nb}]=${config_UserChoices_JobName}_SE${mois}_${an_deb}_${an_fin}_${file}.nc
346              #
347              (( an = an_deb ))
348              # Initialize array
349              #set -A liste_file_se
350              #set -A liste_file_se_tmp
351              unset liste_file_se
352              unset liste_file_se_tmp
353              while [ ${an} -le ${an_fin} ] ; do
354                  moisL=$( IGCM_date_DaysInMonth ${an} ${mois} )
355                  #
356                  an4=$(printf "%04i\n" ${an} )
357                  #
358                  date=${an4}${mois}01_${an4}${mois}${moisL}
359                  #set +A liste_file_se ${liste_file_se[*]} ${file_path}${config_UserChoices_JobName}_${date}_${file}.nc
360                  #set +A liste_file_se_tmp ${liste_file_se_tmp[*]} ${config_UserChoices_JobName}_${date}_${file}.nc
361                  liste_file_se[${#liste_file_se[*]}]=${file_path}${config_UserChoices_JobName}_${date}_${file}.nc
362                  liste_file_se_tmp[${#liste_file_se_tmp[*]}]=${config_UserChoices_JobName}_${date}_${file}.nc
363
364                  (( an = an + 1 ))
365              done
366              #
367              IGCM_sys_Get /l liste_file_se[*] ${RUN_DIR_PATH}
368              eval ExitFlag=false
369              IGCM_debug_Verif_Exit_Post
370             
371              # Apply IGCM_Patch if needed
372              if [ ! ${RebuildFrequency} = true ] ; then
373                  if [ X$( eval echo \${LISTE_PATCHES_${file}[0]} ) !=  X${NULL_STR} ]; then
374                      for file_t in $( eval echo ${liste_file_se_tmp[*]} ); do
375                          for Patch in $( eval echo \${LISTE_PATCHES_${file}[*]} ); do
376                              IGCM_${Patch} ${file_t}
377                          done
378                      done
379                  fi
380              fi
381             
382              IGCM_sys_ncra -O ${liste_file_se_tmp[*]} ${OUT_SE[${nb}]}
383              IGCM_sys_Rm ${liste_file_se_tmp[*]}
384              eval ExitFlag=false
385              IGCM_debug_Verif_Exit_Post
386          done
387          ;;
388        *D|*d)
389          for mois in  01 02 03 04 05 06 07 08 09 10 11 12 ; do
390              #
391              (( nb = ${mois} - 1 ))
392              #
393              OUT_SE[${nb}]=${config_UserChoices_JobName}_SE${mois}_${an_deb}_${an_fin}_${file}.nc
394              #
395              (( an = an_deb ))
396              # Initialize array
397              #set -A liste_file_se
398              #set -A liste_file_se_tmp
399              unset liste_file_se
400              unset liste_file_se_tmp
401              while [ ${an} -le ${an_fin} ] ; do
402                  moisL=$( IGCM_date_DaysInMonth ${an} ${mois} )
403                  #
404                  an4=$(printf "%04i\n" ${an} )
405                  #
406                  length_d=$(( ${config_UserChoices_PeriodLength} - 1 ))
407                  # for one day
408                  if [ ${length_d} -eq 1 ] ; then
409                      (( length_d = 0 ))
410                  fi
411                  (( day  = 1 ))
412                  while [ ${day} -le ${moisL} ] ; do
413                      day2=$(printf "%02i\n" ${day} )
414                      day_beg=${an4}${mois}${day2}
415                      day_end=$( IGCM_date_AddDaysToGregorianDate ${day_beg} ${length_d} )
416                      date=${an4}${mois}${day_beg}_${an4}${mois}${day_end}
417                      #set +A liste_file_se ${liste_file_se[*]} ${file_path}${config_UserChoices_JobName}_${date}_${file}.nc
418                      #set +A liste_file_se_tmp ${liste_file_se_tmp[*]} ${config_UserChoices_JobName}_${date}_${file}.nc
419                      liste_file_se[${#liste_file_se[*]}]=${file_path}${config_UserChoices_JobName}_${date}_${file}.nc
420                      liste_file_se_tmp[${#liste_file_se_tmp[*]}]=${config_UserChoices_JobName}_${date}_${file}.nc
421                      (( day = day + 1 ))
422                  done
423                  (( an = an + 1 ))
424              done
425              #
426              IGCM_sys_Get /l liste_file_se[*] ${RUN_DIR_PATH}
427              eval ExitFlag=false
428              IGCM_debug_Verif_Exit_Post
429             
430              # Apply IGCM_Patch if needed
431              if [ ! ${RebuildFrequency} = true ] ; then
432                  if [ X$( eval echo \${LISTE_PATCHES_${file}[0]} ) !=  X${NULL_STR} ]; then
433                      for file_t in $( eval echo ${liste_file_se_tmp[*]} ); do
434                          for Patch in $( eval echo \${LISTE_PATCHES_${file}[*]} ); do
435                              IGCM_${Patch} ${file_t}
436                          done
437                      done
438                  fi
439              fi
440
441              IGCM_sys_ncra -O ${liste_file_se_tmp[*]} ${OUT_SE[${nb}]}
442              IGCM_sys_Rm ${liste_file_se_tmp[*]}
443              eval ExitFlag=false
444              IGCM_debug_Verif_Exit_Post
445          done
446          ;;
447        esac
448        #
449        IGCM_sys_ncrcat -O ${OUT_SE[*]} ${RESULT_SE}
450        #
451        IGCM_sys_Rm ${OUT_SE[*]}
452        #
453        ${ncatted} -a modulo,time_counter,c,c," " ${RESULT_SE}
454        #
455        eval IGCM_sys_Put_Out ${RESULT_SE} \${R_OUT_${comp}}/Analyse/SE/${RESULT_SE}
456        IGCM_sys_Rm ${RESULT_SE}
457        #
458        eval ExitFlag=false
459        IGCM_debug_Verif_Exit_Post
460    done
461done
462
463# DODS copy
464for comp in ${config_ListOfComponents[*]} ; do
465    IGCM_sys_TestDirArchive ${R_SAVE}/${comp}/Analyse/SE
466    [ $? = 0 ] && IGCM_sys_Put_Dods ${comp}/Analyse/SE
467done
468
469YEARS=${an_deb}_${an_fin}
470
471export POST_DIR; export SUBMIT_DIR; export libIGCM; export R_INIT; export R_BC; export StandAlone
472export RESOL_ATM; export RESOL_OCE ; export RESOL_ICE ; export RESOL_MBG ; export RESOL_SRF
473export R_SAVE; export config_UserChoices_JobName; export config_UserChoices_TagName; export YEARS;
474listVarEnv="POST_DIR,SUBMIT_DIR,libIGCM,R_INIT,R_BC,StandAlone,RESOL_ATM,RESOL_OCE,RESOL_ICE,RESOL_MBG,RESOL_SRF,R_SAVE,config_UserChoices_JobName,config_UserChoices_TagName,YEARS"
475export listVarEnv;
476
477#D-
478# --------------------------------------------------------------------
479#D- Test if all was right before ATLAS
480# --------------------------------------------------------------------
481IGCM_debug_Verif_Exit_Post
482
483if [ ${config_UserChoices_TagName} = "IPSLCM4_v1_OASIS3" ] || \
484   [ ${config_UserChoices_TagName} = "IPSLCM4_v2" ]        || \
485   [ ${config_UserChoices_TagName} = "IPSL_ESM_V1" ] ; then
486    #
487    IGCM_sys_QsubPost atlas_ORCHIDEE     ;
488    IGCM_sys_QsubPost atlas_LMDZ         ;
489    IGCM_sys_QsubPost atlas_ORCA_LIM     ;
490    IGCM_sys_QsubPost additionnal        ;
491    #
492elif [ ${config_UserChoices_TagName} = "IPSLCM5" ] ; then
493    IGCM_sys_QsubPost atlas_ORCHIDEE     ;
494    IGCM_sys_QsubPost atlas_LMDZ         ;
495    IGCM_sys_QsubPost atlas_ORCA_LIM     ;
496    #
497elif [ ${config_UserChoices_TagName} = "LMDZ4OR" ]  || \
498     [ ${config_UserChoices_TagName} = "LMDZOR" ]   || \
499     [ ${config_UserChoices_TagName} = "LMDZ4OR_v2" ] ; then
500    #
501    IGCM_sys_QsubPost atlas_LMDZ         ;
502    IGCM_sys_QsubPost atlas_ORCHIDEE     ;
503    #
504elif [ ${config_UserChoices_TagName} = "LMDZ" ] ; then
505    #
506    IGCM_sys_QsubPost atlas_LMDZ         ;
507    #
508elif [ ${config_UserChoices_TagName} = "OL" ]      || \
509     [ ${config_UserChoices_TagName} = "OL2" ] ; then
510    #
511    IGCM_sys_QsubPost atlas_ORCHIDEE     ;
512    #
513elif [ ${config_UserChoices_TagName} = "ORCA2_LIM" ]       ||
514     [ ${config_UserChoices_TagName} = "ORCA2_LIM2" ]      ||
515     [ ${config_UserChoices_TagName} = "ORCA2_LIM2_PISCES" ] ; then
516    #
517    IGCM_sys_QsubPost atlas_ORCA_LIM     ;
518#    IGCM_sys_QsubPost additionnal        ;
519    #
520fi
Note: See TracBrowser for help on using the repository browser.