]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - test/cosmic/rec.sh
Extacting the OCDB in a separate module. The detectors have write permission in the...
[u/mrichter/AliRoot.git] / test / cosmic / rec.sh
... / ...
CommitLineData
1#!/bin/sh
2#############################################################################
3# rec.sh. Front-end script to run reconstruction from the grid chunks
4# Usage:
5# ./rec.sh <run_number>
6#############################################################################
7#
8# modification history
9# version 1.0 2008/03/04 02:12 Marco Meoni
10#
11# version 1.1 2008/03/28 00:33 Marco Meoni. Used aliensh instead of alien client
12
13# SET THE FOLLOWING PARAMETERS IF NEEDED:
14# ---------------------------------------
15YEAR=08
16DIALOG=/usr/bin/dialog
17# ---------------------------------------
18
19RUNNUM=$1
20
21[ -z $RUNNUM ] && { echo "Please provide a run number..."; exit 1; }
22
23[ ! -e "$HOME/.globus/usercert.pem" ] && { echo "FAILED: There is no certificate in $HOME/.globus"; exit 1; }
24
25[ -e "/tmp/gclient_env_$UID" ] && { source /tmp/gclient_env_$UID; }
26alien-token-init
27
28[ ! "$?" -eq "0" ] && { echo "FAILED: Token creation failed"; exit 1; }
29
30VERSION=1.0
31TITLE="Standalone reconstruction of Grid rawdata chunks. v$VERSION"
32
33# Retrieve the list of chunks from AliEn.......
34BASEDIR="/alice/data/20"$YEAR
35PATTERN="/raw/"$YEAR"0000"$RUNNUM"*0.root"
36aliensh -c "gbbox find $BASEDIR $PATTERN" | head --lines=-1 > collection.tmp
37
38[ $(stat -c%s collection.tmp) -eq 0 ] && { echo "No chunks found for the given run"; exit 1; }
39rm -r collection.tmp2
40for ifile in `cat collection.tmp | head --lines=500` ; do printf $ifile" "\|" "0" " >> collection.tmp2 ; done
41list=`cat collection.tmp2`
42rm -f collection.tmp2
43totChunks=`cat collection.tmp | wc -l`
44rm -f collection.tmp
45
46tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
47trap "rm -f $tempfile" 0 1 2 5 15
48$DIALOG --clear --no-cancel --title "$TITLE" \
49 --ok-label OK --checklist "$totChunks chunks available for run $RUNNUM (only the first 500 are shown). Select chunks for reconstruction" 18 80 10 \
50 $list 2> $tempfile
51
52CHUNKS=`cat $tempfile`
53echo "Selected chunks:"
54echo $CHUNKS
55echo
56
57$DIALOG --clear --no-cancel \
58 --ok-label OK --radiolist "Program to run:" 15 20 5 "aliroot -b" \| on alieve \| off 2> $tempfile
59PROGRAM=`cat $tempfile`
60
61for filename in $CHUNKS; do
62 filename=${filename//\"/}
63 CHUNK=`basename $filename | cut -d "." -f 1,2`
64
65 echo "Running AliRoot reconstruction for chunk $filename. Outputs will be stored in "$RUNNUM"/"$CHUNK"."
66 rm -rf $RUNNUM"/"$CHUNK
67 mkdir -p $RUNNUM"/"$CHUNK
68 cd $RUNNUM"/"$CHUNK
69 $PROGRAM -q $ALICE_ROOT/test/cosmic/rec.C\(\"alien://$filename\"\) 2>&1 | tee rec.log
70 cd ../..
71done