source: trunk/libIGCM/AA_create_se @ 91

Last change on this file since 91 was 87, checked in by sdipsl, 15 years ago

NEMO config added to turn on atlas submission.
Do not use so called additionnal for NEMO config only "classic" atlas.

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