# @$-eo -r o2lamodb
# @$-lt 1200 -lT 300 
# @$-lM 1500mb -lV 0mb
# @$-lP 1

set -x
export VPP_MBX_SIZE=32000000

#========================================================================
# All necessary variables and pathnames are defined at the beginning of
# the script!! Exceptions: executables names (defined in the proper 
# execution blocks).
#========================================================================

#======================================================================== 
# -This script creates an input ODB for LAM data assimilation. The data
#  selection always includes a geographical selection for data in C+I 
#  zone, and optionally a selection based on observation types. The 
#  output ODB is always put into the following dir:
#
#   $workdir/DATA/${expName}/ecma_${assimDate}.${assimType}${suff}
#   
# -The assimDate and expName parameters are read from the assimParFile
#  parameter-file!
#
# -The number of pools in the LAM ODB is given by the NBPROC variable.
#
# -If SAVE_lamodb=TRUE, then the LAM ODB will be saved to kami
#  into the following tar-file:
#    
#   ASSIM_ALD/${expName}/${assimDate}.${assimType}/ECMA_LAM.tar
# 
#  This tar-file contains the pools and the ECMA.dd and ECMA.sch files!
#
# -The optional selection based on observational type can be controlled 
#  via the SYNOP_NEED, AIREP_NEED etc. variables defined at the beginning
#  of the script.
#  
# -Namelists supposed to be in DIR_namelist dir. and they are:
#              lamflag_odb.nml :lamflag_odb              
#              obsort_3d.nml:obsort 3dvar
#              
# -The script can work in the following modes (controlled via the
#  SCRIPT_MODE variable):
# 
#     -------------------------------------------------------------------
#  1: Convert obsoul file (DIR_obs) to global ODB, then select LAM data.
#     During this process the global ODB can be saved 
#     with SAVE_globodb=TRUE) to kami into the following tar-file: 
#            
#     ASSIM_ALD/globODB/${assimDate}/ecma_${assimDate}.${assimType}${suff}.tar 
#
#     This tar-file contains the pools and the ECMA.dd and ECMA.sch files!!  
#     -------------------------------------------------------------------     
#  2: Get operational global ODB ($DIR_OBS/ecmascr.tar), then  select 
#     LAM data
#     -------------------------------------------------------------------
#  3: Get previously saved global ODB (DIR_myGlobodb), then  select
#     LAM data. It is suppodsed that global ODB is in a tar-file, with
#     similar name and structure as in mode 1!
#     -------------------------------------------------------------------
#  4: Get previously saved LAM ODB (DIR_myLamodb), then select LAM data.
#     (This mode is created to select diff. observation types). It is
#     suppodsed that LAM ODB is in a tar-file, with similar name and
#     structure as the result of SAVE_lamodb=TRUE (see above).
#     -------------------------------------------------------------------
#  5: Get previously saved LAM ODB (DIR_myLamodb), then only change 
#     the number of pools. In this case input and output ODBs have to
#     refer to the same LAM domain.
#
#
# Remark: 3 and 4 are basically the same, only the input dir. is diff.
#=======================================================================

#Number of pools in the final lam ODB
NBPROC=1 

#Read DA parameters from parfile (shared with screening+min script).
#Only the 1st, the 3rd, the 4th and the 5th lines are needed.
assimParFile=$HOME/devAL15/e131/par/assim_date.par
set -- `cat $assimParFile`
assimDate=$1    # assimilation date(yyyymmddhh)
#NJOB=$3
#NMXJOB=$4
expName=$5      # number of pools for output LAM ODB

#assimDate=2000122218
#expName=tot1

#Other DA parameters
assimType=3d
suff=""

# Parse date to get obs directory name
AAAAMMJJRR=$assimDate
AAAAMMJJ=`expr $AAAAMMJJRR | cut -c1-8`
AAAA=`expr $AAAAMMJJRR | cut -c1-4`; MM=`expr $AAAAMMJJRR | cut -c5-6`
JJ=`expr $AAAAMMJJRR | cut -c7-8`; RRSV=`expr $AAAAMMJJRR | cut -c9-10`
RR=$RRSV; [ $RR -eq "00" ] && RR=0; [ $RR -eq "06" ] && RR=6
cycle=24; version="t1"; bf="_op1"; numero=".04"

#ODB settings 
cycle=24; version="t1"; bf="_op1"; numero=".04"
ODB_SYS=~marp001/pub/cy${cycle}${version}${bf}${numero}/src/main/odb/${cycle}${version}/vpp5000
DIRNAME_odb_ecma=ecma_${assimDate}.${assimType}${suff}
DIRNAME_odb_ecmascr=ecmascr_${assimDate}.${assimType}${suff}
export ODB_STATIC_LINKING=1
export TO_ODB_ECMWF=0
export ODB_SCRPATH_ECMASCR=${TMPDIR}/${DIRNAME_odb_ecmascr}
export ODB_DATAPATH_ECMASCR=${ODB_SCRPATH_ECMASCR}
export ODB_SCRPATH_ECMA=${TMPDIR}/${DIRNAME_odb_ecma}
export ODB_DATAPATH_ECMA=${ODB_SCRPATH_ECMA}
export ODB_ANALYSIS_DATE=$(echo ${assimDate} | cut -c1-8)
export ODB_ANALYSIS_TIME=$(echo ${assimDate} | cut -c9-10)
DOLIST_odbout=FALSE

#Flags for the observation type selection
SYNOP_NEED=.T.
AIREP_NEED=.T.
SATOB_NEED=.T.
DRIBU_NEED=.T.
TEMP_NEED=.T.
PILOT_NEED=.T.
SATEM_NEED=.T.

# Namelist dir
DIR_namelist=$HOME/devAL15/examples/namelist
DIR_script=$HOME/devAL15/examples

# Operational obs dir
DIR_obs=/chaine/mxpt/mxpt001/arpege/oper/assim/${AAAA}/${MM}/${JJ}/r${RR}

# Define script mode
SCRIPT_MODE=5

#Save SCRIPT_MODE=1 proc result into DIR_saveGlobodb on delage
SAVE_globodb=FALSE 
DIR_saveGlobodb=ASSIM_ALD/globODB/${assimDate}
if [ $SAVE_globodb = "TRUE" ] ; then
   cat > jaguar << EOF
   mkdir ASSIM_ALD
   mkdir ASSIM_ALD/globODB
   mkdir ASSIM_ALD/globODB/${assimDate}
EOF
   ftuas <jaguar; \rm jaguar
fi

#Get global odb file at SCRIPT_MODE=2 from this dir on delage
DIR_myGlobodb=ASSIM_ALD/globODB/${assimDate}

# Save the final lamodb into DIR_myGlobodb on delage
SAVE_lamodb=FALSE 
DIR_saveLamodb=ASSIM_ALD/${expName}/${assimDate}.${assimType}
if [ $SAVE_lamodb = "TRUE" ] ; then
   cat > jaguar << EOF
   mkdir ASSIM_ALD
   mkdir ASSIM_ALD/${expName}
   mkdir ASSIM_ALD/${expName}/${assimDate}.${assimType}
EOF
   ftuas <jaguar; \rm jaguar
fi

#Get lam odb file at SCRIPT_MODE=4 or 5 from this dir on delage 
#DIR_myLamodb=ASSIM_ALD/${expName}/${assimDate}.${assimType}
DIR_myLamodb=ASSIM_ALD/all1/${assimDate}.${assimType}

#============================================================
#
#  1.1. OBSOUL -> GLOBAL ODB
#     output: $TMPDIR/ecma_${assimDate}.${assimType}${suff}
#
#============================================================
  
if [ $SCRIPT_MODE -eq 1 ] ; then

cd $TMPDIR

#------------------------------------------
# 1.1.1. BATOR, MANDALAY and OBSORT settings
#------------------------------------------

EXE_bator=/u/ch/mxpt/mxpt001/arpege/france/dbl/exec/BATOR 
EXE_mandalay=/u/sm/marp/marp001/tampon/bin/man/ma07/ma07_op4.13.L9912.x.exe
EXE_obsort=/u/ch/mxpt/mxpt001/arpege/france/oper/exec/OBSORT

RUN_mandalay=0  # 1 pour extension
[ $assimDate -le 2000061918 ] && RUN_mandalay=1
[ $assimType = "3d" ] && RUN_mandalay=0

RUN_obsort=1
[ $suff = ".cpl" ] && RUN_obsort=0

#Settings for OBSORT
dato=`smsdate $assimDate -3`
dat_obsort=`echo $dato | cut -c1-8`
h_obsort=`echo $dato | cut -c9-10`
MXUP_TRAJ=3   #xxx 3

#------------------------------------------
# 1.1.2. BATOR 
#   task: convert obsoul file into CMA
#   namelist: NAMELIST
#   input: OBSOUL,PATOUCH
#   output: OBSARP
#------------------------------------------

ftget ${DIR_obs}/obsoul OBSOUL 
cp /u/ch/mxpt/mxpt001/arpege/france/dbl/const/autres/LISTE_NOIRE_DIAP PATOUCH

banner BATOR
   
#Namelist for bator
cat <<EOF > NAMELIST
 &NADIRS
   LMODAI=.FALSE.,
   LINCRE=.TRUE.,
   NRESUPD=3,
   NODEPT=0,
 &END
EOF

\rm BATOR 2>/dev/null

#execute bator
\ln -s $EXE_bator BATOR
BATOR > lola
cat lola   

\ls -l

\rm -f BATOR bator.lst NAMELIST PATOUCH OBSOUL

[ ! -r OBSARP ] && exit

#-----------------------------------------
# 1.1.3. MANDALAY
# extension partie incrementale pour 4d
#   input:  CMAFOCI01
#   output: CMAFOCO01
#-----------------------------------------

if [ ${RUN_mandalay} -eq 1 ] ; then

banner MANDALAY

\mv OBSARP CMAFOCI01

cat <<EOF > NAMELIST
 &NACTDO
 /
 &NADIRS
   LAEINC=.TRUE.,
   NRESUPD=$MXUP_TRAJ,
 /
 &NAECLA
 /
 &NAFORC
 /
 &NAIMPO
 /
 &NALINO
 /
 &NASTAT
 /
 &NAMPONG
 /
EOF

\rm MANDALAY 2>/dev/null
   
#execute mandalay
\ln -s $EXE_mandalay MANDALAY
MANDALAY >lola
cat lola

\ls -l

\mv CMAFOCO01 OBSARP

\rm -f MANDALAY NAMELIST CMAFOCI01
 
[ ! -f OBSARP ] && exit

fi   

#-------------------------------------------------------
# 1.1.4. OBSORT: 
#   task: split obs data (CMA) for distr. memeory run       

#   namelist: fort.4
#   input:  cmat01_in.1 
#   output: cmat01.001
#-------------------------------------------------------

if [ ${RUN_obsort} -eq 1 ] ; then

banner OBSORT

export NCPUS=1
  
\mv OBSARP cmat01_in.1
  
#prepare namelist
case ${assimType} in
    3d ) 
	sed -e "s/NBPROC_VAL/1/"  \
          ${DIR_namelist}/obsort_3d.nml > fort.4
      ;;	
    4d ) echo "${DIR_ref}/NAML_4d_obsort 1 $dat_obsort $h_obsort" ;
         ${DIR_namelist}/obsort_4d.nml 1 $dat_obsort $h_obsort 
      ;;
esac
  
cat fort.4

#run obsort
ln -s ${EXE_obsort} OBSORT
OBSORT 1 > lola
cat lola

\ls -l 
 
rm OBSORT fort.4 cmat01_in.1 logfile.*
mv cmat01.001 OBSARP

[ ! -f OBSARP ] && exit

fi

#-------------------------------------------------------
#  1.1.5. Prepare ODBTOOLS RUN
#-------------------------------------------------------

banner PREPARE_ODB

EXE_odbtools=/u/ch/mxpt/mxpt001/arpege/france/dbl/exec/TRANSFODB

#environmental variables
export ODB_CMA=ECMASCR

#create and prepare ECMASCR dir
[ -d ${ODB_DATAPATH_ECMASCR} ] && \rm -r ${ODB_DATAPATH_ECMASCR}
\mkdir  ${ODB_DATAPATH_ECMASCR} 
\cd ${ODB_DATAPATH_ECMASCR}

FILE_ioassign=${ODB_DATAPATH_ECMASCR}/ioassign
cat ${ODB_SYS}/ECMASCR/ECMASCR.IOASSIGN > ${FILE_ioassign}
cat ${ODB_SYS}/ECMA/ECMA.IOASSIGN >> ${FILE_ioassign}
export IOASSIGN=${FILE_ioassign}

#create ECMA dir
[ -d  ${ODB_DATAPATH_ECMA} ] && \rm -r ${ODB_DATAPATH_ECMA} 
\mkdir ${ODB_DATAPATH_ECMA} 

#-------------------------------------------------------
#  1.1.6. ODBTOOLS (TO_ODB)
#    task: create ecmascr from cmafile
#-------------------------------------------------------

banner TO_ODB

cd ${TMPDIR} 

echo "\n TO_ODB \n====================================\n" > log_exe
echo "\n TO_ODB \n====================================\n" > log_err

#run obdbtool
ln -s ${EXE_odbtools} to_odb.x
to_odb.x OBSARP >> log_exe 2>>log_err
 
#Listing
if [ $DOLIST_odbout = "TRUE" ] ; then
  echo "\n LISTING TO_ODB EXE \n ===============================\n"
  cat log_exe
  echo "_n LISTING TO_ODB ERR \n ===============================\n"
  cat log_err
fi

mv ECMASCR.dd ${ODB_DATAPATH_ECMASCR}/ 
mv ECMASCR.sch ${ODB_DATAPATH_ECMASCR}/ 

\ls -lR ${ODB_DATAPATH_ECMASCR}

\ls -l  $TMPDIR

\rm to_odb.x $TMPDIR/OBSARP $TMPDIR/obs_boxes
\rm log_exe log_err 

#-------------------------------------------------------
# 1.1.7. ODBTOOLS (SHUFFLE)
#   task: create ecma from ecmascr dir.
#-------------------------------------------------------

banner SHUFFLE

cd ${ODB_DATAPATH_ECMASCR}

case ${assimType} in
  3d) nbslot=1 ;;
  4d) nbslot=7 ;;
esac
 
na=1
nb=1
left_margin=-180
right_margin=180

echo "\n SHUFFLE \n====================================" > log_exe
echo "\n SHUFFLE \n====================================" > log_err

#run odb shuffle
ln -s ${EXE_odbtools} shuffle
shuffle -iECMASCR -oECMA -a$na -b$nb -B${assimDate} -L$left_margin -R$right_margin -T${nbslot} >> log_exe 2>>log_err
 
#listing
if [ $DOLIST_odbout = "TRUE" ] ; then
  echo "\n LISTING TO_ODB EXE \n ===============================\n"
  cat log_exe
  echo "_n LISTING TO_ODB ERR \n ===============================\n"
  cat log_err
fi

mv ECMA.dd ${ODB_DATAPATH_ECMA}/ 
mv ECMA.sch ${ODB_DATAPATH_ECMA}/ 

\ls -l $TMPDIR
\ls -lR ${ODB_DATAPATH_ECMASCR}
\ls -lR ${ODB_DATAPATH_ECMA}

\rm shuffle log_exe log_err ${FILE_ioassign}
cd $TMPDIR
\rm -r ${DIRNAME_odb_ecmascr}

#save the created ecma if needed
if [ $SAVE_globodb = "TRUE"  ] ; then
   cd $TMPDIR
   cd ${DIRNAME_odb_ecma} 
   tar -cvf ${DIRNAME_odb_ecma}.tar ./*
   ftput ${DIRNAME_odb_ecma}.tar ${DIR_saveGlobodb}/${DIRNAME_odb_ecma}.tar 
   \rm ${DIRNAME_odb_ecma}.tar 
fi

#end of obsob->odb

#============================================================
#
#  1.2. GET EXISTING GLOBAL ODB (WITH 1 POOL)
#     FROM OPER DIR
#
#============================================================
  
elif [ $SCRIPT_MODE -eq 2 ] ; then
  
  cd $TMPDIR
  ftget ${DIR_obs}/ecmascr.tar ecma.tar
  tar -xvf ecma.tar
  \ls -lR
  \rm ecma.tar
  cd ECMASCR
  mv ECMASCR.dd ECMA.dd
  mv ECMASCR.sch ECMA.sch
  cd ..
  \mv ECMASCR ${DIRNAME_odb_ecma}
  \ls -lR
  
#end of get oper odb

#================================================================
#
#  1.3. GET EXISTING GLOBAL ODB (WITH 1 POOL) FROM PERSONAL DIR
#
#================================================================
  
elif [ $SCRIPT_MODE -eq 3 ] ; then
  
  cd $TMPDIR
  [ -d ${DIRNAME_odb_ecma} ] || mkdir ${DIRNAME_odb_ecma}
  cd ${DIRNAME_odb_ecma}
  ftget ${DIR_myGlobodb}/${DIRNAME_odb_ecma}.tar  ${DIRNAME_odb_ecma}.tar 
  tar -xvf ${DIRNAME_odb_ecma}.tar 
  \rm ${DIRNAME_odb_ecma}.tar 
  \ls -l

#end of get personal global odb

#================================================================
#
#  1.4. GET EXISTING LAM ODB FROM PERSONAL DIR
#
#================================================================
  
elif [ $SCRIPT_MODE -eq 4 ] ; then
  
  cd $TMPDIR
  [ -d ${DIRNAME_odb_ecma} ] || mkdir ${DIRNAME_odb_ecma}
  cd ${DIRNAME_odb_ecma}
  ftget ${DIR_myLamodb}/ECMA_LAM.tar ${DIRNAME_odb_ecma}.tar
  tar -xvf ${DIRNAME_odb_ecma}.tar
  \rm ${DIRNAME_odb_ecma}.tar
  \ls -l

#end of getting personal lam odb

#================================================================
#
#  1.5. GET EXISTING LAM ODB FROM PERSONAL DIR (directly for shuffle)
#
#================================================================

elif [ $SCRIPT_MODE -eq 5 ] ; then

  cd $TMPDIR
  [ -d ${DIRNAME_odb_ecmascr} ] || mkdir ${DIRNAME_odb_ecmascr}
  cd ${DIRNAME_odb_ecmascr}
  ftget ${DIR_myLamodb}/ECMA_LAM.tar ${DIRNAME_odb_ecmascr}.tar
  tar -xvf ${DIRNAME_odb_ecmascr}.tar
  \mv ECMA.dd ECMASCR.dd
  \mv ECMA.sch ECMASCR.sch 
  \rm ${DIRNAME_odb_ecmascr}.tar
  \ls -l

fi #end of getting personal lam odb


#=======================================================================
#
#  2. PUT LAM-FLAG INTO GLOBAL ODB
#   input=output: $TMPDIR/ecma_${assimDate}.${assimType}${suff}
#   but output is renamed to: 
#           $TMPDIR/ecmascr_${assimDate}.${assimType}${suff}
#
#=======================================================================

if [ $SCRIPT_MODE -le 4 ] ; then 

banner LAM_FLAG

#ODB settings
export ODB_CMA=ECMA
export IOASSIGN=${ODB_SYS}/ECMA/ECMA.IOASSIGN

cd ${ODB_DATAPATH_ECMA}

#get namelist
sed -e "s/SYNOP_NEED/${SYNOP_NEED}/"  \
    -e "s/AIREP_NEED/${AIREP_NEED}/"  \
    -e "s/SATOB_NEED/${SATOB_NEED}/"  \
    -e "s/DRIBU_NEED/${DRIBU_NEED}/"  \
    -e "s/TEMP_NEED/${TEMP_NEED}/"   \
    -e "s/PILOT_NEED/${PILOT_NEED}/"   \
    -e "s/SATEM_NEED/${SATEM_NEED}/"   \
       ${DIR_namelist}/lamflag_odb.nml > NAMELIST

cat NAMELIST

#get and run lamflag_odb
EXE_lamflag_odb=/cnrm2_a/mrpm/mrpm624/exe/cy24t1/lamflag_odb.24t1_op1.04
ftget $EXE_lamflag_odb ${TMPDIR}/LAMFLAG_ODB
chmod 755 ${TMPDIR}/LAMFLAG_ODB
${TMPDIR}/LAMFLAG_ODB 1>List_exe 2>List_err
\ls -l $TMPDIR

cat List_exe

if [ $DOLIST_odbout = "TRUE" ] ; then
  cat List_err
fi

\ls -lR ${ODB_DATAPATH_ECMA}

\rm ${TMPDIR}/LAMFLAG_ODB 
\rm List_exe List_err NAMELIST

# Rename ecma odb to ecmascr
[ -d ${ODB_DATAPATH_ECMASCR} ] && rm -r ${ODB_DATAPATH_ECMASCR}    
mv ${ODB_DATAPATH_ECMA} ${ODB_DATAPATH_ECMASCR}      
cd ${ODB_DATAPATH_ECMASCR}      
mv ECMA.dd ECMASCR.dd
mv ECMA.sch ECMASCR.sch

fi #end of lam data selection

#===================================================================
#
#  3. SELECT GLOBAL-ODB DATA INTO LAM-ODB
#    input : $TMPDIR/ecmascr_${assimDate}.${assimType}${suff}
#    output: $TMPDIR/ecma_${assimDate}.${assimType}${suff}
#
#===================================================================

#-------------------------------------------------------
# Check number of pools
#-------------------------------------------------------

np_init=`head -5 ${ODB_DATAPATH_ECMASCR}/ECMASCR.dd | tail -1`
na=$np_init  # indique le nb de pool initial
let zjedi=${NBPROC}%${na}

if [ $zjedi -ne 0 ] ; then
  echo "ERROR!!!"
  echo "Shuffle: inconsistency in the number of pools!!"
  echo "         input pool nb:  " $na
  echo "         output pool nb: " $NBPROC
  exit
fi
if [ $na -gt $NBPROC ] ; then
  echo "ERROR!!!"
  echo "Shuffle: inp pool nb > output pool nb!!"
  echo "         input pool nb:  " $na
  echo "         output pool nb: " $NBPROC
  exit
fi

let nb=${NBPROC}/${na}

#------------------------------------------------
# If input LAM already exits and it has the same
# pool nb as the output, only a renaming will be
# done 
#------------------------------------------------

if [ $SCRIPT_MODE -eq 5 -a $nb -eq 1 ] ; then
  cd $TMPDIR 
  mv  ${DIRNAME_odb_ecmascr} ${DIRNAME_odb_ecma}
  cd ${DIRNAME_odb_ecma} 
  \mv ECMASCR.dd ECMA.dd
  \mv ECMASCR.sch ECMA.sch

#-----------------------------------------------
# Otherwise shuffle will be run
#----------------------------------------------

else

#
export VPP_SIGNAL=4
ODB_TRACE_PROC=-1
export ODB_TRACE_FILE=List_odb

#EXE_shuffle=${WORKDIR}/EXEC/transfodb.${cycle}${version}${bf}${numero}
EXE_shuffle=/cnrm2/mrpa/mrpa660/EXEC_usuel/transfodb.24t1_op1.04.red

FILE_ioassign=${ODB_DATAPATH_ECMASCR}/ioassign
cat ${ODB_SYS}/ECMASCR/ECMASCR.IOASSIGN > ${FILE_ioassign}
cat ${ODB_SYS}/ECMA/ECMA.IOASSIGN >> ${FILE_ioassign}
export IOASSIGN=${FILE_ioassign}

#create ECMA dir
[ -d  ${ODB_DATAPATH_ECMA} ] && \rm -r ${ODB_DATAPATH_ECMA}
\mkdir ${ODB_DATAPATH_ECMA} 

#Run SHUFFLE

cd ${ODB_DATAPATH_ECMASCR}

case ${assimType} in
  3d) nbslot=1 ;;
  4d) nbslot=7 ;;
esac
 
left_margin=-180
right_margin=180

rm shuffle 2>/dev/null
ftget ${EXE_shuffle} shuffle
chmod 755 shuffle
shuffle -iECMASCR -oECMA -a$na -b$nb -B${assimDate} -L$left_margin -R$right_margin -T${nbslot} 1>List_exe 2>List_err
\rm shuffle
mv ECMA.* ${ODB_DATAPATH_ECMA}

if [ $DOLIST_odbout = "TRUE" ] ; then
  echo "\n LISTING "
  cat List_exe
  cat List_err
fi

\rm List_exe ioassign

fi

#======================================
# 4. Save the created lamodb if needed
#======================================

if [ SAVE_lamodb = "TRUE"  ] ; then
    cd $TMPDIR
    cd ${DIRNAME_odb_ecma}
    tar -cvf ECMA_LAM.tar ./*
    ftput ECMA_LAM.tar ${DIR_saveLamodb}/ECMA_LAM.tar   
    \rm ECMA_LAM.tar   
fi
 
#=======================================
# 5. Put the created lamodb into workdir
#=======================================

cd $TMPDIR
[ -d ${WORKDIR}/DATA/${expName}/${DIRNAME_odb_ecma} ] && rm -r ${WORKDIR}/DATA/${expName}/${DIRNAME_odb_ecma}
mkdir -p ${WORKDIR}/DATA/${expName}/${DIRNAME_odb_ecma} 
cp -R ${DIRNAME_odb_ecma}/* ${WORKDIR}/DATA/${expName}/${DIRNAME_odb_ecma}/
ls -l ${WORKDIR}/DATA/${expName}/${DIRNAME_odb_ecma}/



#=====================================================

#   relance automatique
#=====================================================

exit