source: TOOLS/PACK_IPSL/launch_ipsl_enlarge.sh @ 1860

Last change on this file since 1860 was 1854, checked in by gpincka, 12 years ago

Traitement (code sequentiel) des simu de taille < 1 Go ou de type create_etat0

  • Property svn:executable set to *
File size: 3.4 KB
Line 
1#!/bin/bash
2######################
3## TITANE   CEA ##
4######################
5#MSUB -r ipsl_pack      # Nom du job               
6#MSUB -eo
7#MSUB -n 1              # Reservation du processus
8#MSUB -T 86400          # Limite de temps elapsed du job
9#MSUB -p gen2211
10#MSUB -q mono
11
12# ex : ./launch_ipsl_enlarge.sh
13
14# gpdebug : pour option -f
15restartExecFromZero=0
16while [ $# -gt 0 ]
17do
18   echo "boucle sur les arguments du script ..."
19   echo "@=$@"
20   case $1 in
21   -f)  restartExecFromZero=1
22        echo "force restart from the beginning ..."
23        ;;
24   esac
25   shift
26done
27export restartExecFromZero=${restartExecFromZero}
28# gpdebug : end
29
30export JOB_DIR=${LS_SUBCWD:-${PWD}}
31export EXE_DIR=${JOB_DIR}
32
33# export INPUT_DMF_DATA=/ccc/dmfbuf/import_data.2/ccrt/dmnfs12/cont003/bacasable # gpdebug : suppr
34# export OUTPUT_STORE=${SCRATCHDIR}/PSEUDO_DMNFS_STORE # gpdebug : suppr
35# export OUTPUT_WORK=${SCRATCHDIR}/PSEUDO_DMNFS_WORK # gpdebug : suppr
36
37SCRIPT_NAME=$(basename ${0} )
38
39# export IGCM_DEM=${SCRATCHDIR}/IGCM_DEM # gpdebug : suppr
40# export IGCM_TMP=${SCRATCHDIR}/IGCM_DEM/tmp # gpdebug : suppr
41
42# On renseigne les variables d'environnement
43. load_ipslPack_env.sh
44export IGCM_TMP="${IGCM_DEM}/tmp"  # gpdebug : added
45
46
47export clean_tmp=${clean_tmp:-yes}
48export DEM_LOG=${JOB_DIR}/dem_${LSB_JOBID:-${$}}.log
49export LOG_LEV=2
50
51export config_card=${IGCM_DEM}/config_card.liste
52
53
54############## gpdebug : Pour gestion des erreurs #########################################
55# Execute la function errorReceive() si reception d'un signal TERM
56trap 'DEM_errorReceive' TERM
57# liste des processus à détruire en cas d'erreur bloquante
58export listPID=$$
59# fichier pour la transmission des messages d'erreur d'un fils au prog principal
60export errorMsgFile="${PWD}/errorMsg.txt"
61############## gpdebug : fin ##############################################################
62
63source ${EXE_DIR}/DEM_utilities.sh
64
65DEM_log -0 "Demarrage de ${SCRIPT_NAME}"
66
67check_nco_version # gpdebug : verification de la version de nco #######################
68
69# gpdebug : si l'option -f est activee, on detruit tous les fichiers status
70if [ "x$restartExecFromZero" == "x1" ]
71then
72    echo "Deleting  all status files ..."
73    for CONFIG in $( awk '{print $1}' ${IGCM_DEM}/config_card.liste )
74    do
75       PATH_SIMU=$( dirname $CONFIG )
76       ListStatFileInSimu=`find $PATH_SIMU -type f -name "*status" `
77       if [ "x$ListStatFileInSimu" != "x" ]
78       then
79           for file in $ListStatFileInSimu
80           do
81              if [ -e $file ]
82              then
83                 rm -f $file
84              fi
85       
86           done     
87       fi   
88    done
89    echo "Deletion done."
90fi
91# gpdebug : end
92
93for CONFIG in $( awk '{print $1}' ${IGCM_DEM}/config_card.liste ) ; do
94
95    DEM_state=$( DEM_read_state ${IGCM_DEM}/config_card.liste ${CONFIG} )
96
97    if [[ "${DEM_state}" != "WriteListTarDone" ]] ; then
98
99        DEM_write_state ${IGCM_DEM}/config_card.liste ${CONFIG} PackRunning
100        export PATH_SIMU=$( dirname $CONFIG )
101        ${EXE_DIR}/enlarge_my_files.sh ${INPUT_DMF_DATA} ${OUTPUT_STORE} ${OUTPUT_WORK}
102   
103        DEM_write_state ${IGCM_DEM}/config_card.liste ${CONFIG} PackDone
104
105    else
106        DEM_write_state ${IGCM_DEM}/config_card.liste ${CONFIG} TarRunning
107        export PATH_SIMU=$( dirname $CONFIG )
108        ${EXE_DIR}/tar_full_simu.sh  ${INPUT_DMF_DATA} ${OUTPUT_STORE} ${CONFIG}
109       
110        DEM_write_state ${IGCM_DEM}/config_card.liste ${CONFIG} TarDone
111
112
113    fi
114
115done
116
117DEM_log -0 "Fin de ${SCRIPT_NAME}"
Note: See TracBrowser for help on using the repository browser.