]> git.uio.no Git - u/mrichter/AliRoot.git/blame - prod/cosmic/rawqa.sh
with calibration up to 50MIPs it not crashes on very central PbPb events, so i remove...
[u/mrichter/AliRoot.git] / prod / cosmic / rawqa.sh
CommitLineData
12e6d563 1#!/bin/sh
de3b7b4d 2#############################################################################
3# rawqa.sh. Front-end script to run reconstruction from the grid chunks
4# Usage:
5# ./rawqa.sh <run_number>
6#############################################################################
7#
8# modification history
9# version 1.0 July 2008 adapated from rec.C by M. Meoni
10# author Yves Schutz CERN
11#
12
de3b7b4d 13# SET THE FOLLOWING PARAMETERS IF NEEDED:
14# ---------------------------------------
4e056e45 15export YEAR=09
de3b7b4d 16# ---------------------------------------
48360675 17kill -9 `ps | grep aliroot | awk '{print $1}'`
de3b7b4d 18
35bb17ae 19export RUNNUM=$1
de3b7b4d 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
584cf3a1 25#[ -e "/tmp/gclient_env_$UID" ] && { source /tmp/gclient_env_$UID; }
26#echo 12========================== $LD_LIBRARY_PATH
de3b7b4d 27alien-token-init
584cf3a1 28source /tmp/gclient_env_$UID;
de3b7b4d 29
30[ ! "$?" -eq "0" ] && { echo "FAILED: Token creation failed"; exit 1; }
31
32VERSION=1.0
33TITLE="Standalone QA checking of Grid rawdata chunks. v$VERSION"
34
35# Retrieve the list of chunks from AliEn.......
4c39e638 36export BASEDIR="/alice/data/20"$YEAR/LHC${YEAR}*
37PATTERN="$RUNNUM/raw/${YEAR}*${RUNNUM}*.root"
de3b7b4d 38#aliensh -c "gbbox find $BASEDIR $PATTERN" | head --lines=-1 > collection.tmp
39aliensh -c "gbbox find $BASEDIR $PATTERN" > collection.tmp
40
41[ `ls -al collection.tmp | awk '{print $5}'` -eq 0 ] && { echo "No chunks found for the given run"; exit 1; }
42rm -r collection.tmp2
43#
44for ifile in `cat collection.tmp | grep root` ; do printf $ifile" "\|" "0" " >> collection.tmp2 ; done
45list=`cat collection.tmp2`
46[ -e collection.tmp2 ] && { rm -f collection.tmp2 ; }
47totChunks=`cat collection.tmp | wc -l`
48rm -f collection.tmp
49
50tempfile=`tempfile 2>/dev/null` || tempfile=/tmp/test$$
51trap "rm -f $tempfile" 0 1 2 5 15
52dialog --clear --no-cancel --title "$TITLE" \
53 --ok-label OK --checklist "$totChunks chunks available for run $RUNNUM (only the first 500 are shown). Select chunks for reconstruction" 18 80 10 \
54 $list 2> $tempfile
55
56CHUNKS=`cat $tempfile`
57echo "Selected chunks:"
58echo $CHUNKS
59echo
60
61#dialog --clear --no-cancel \
62# --ok-label OK --radiolist "Program to run:" 15 20 5 "aliroot -b" \| on alieve \| off 2> $tempfile
63PROGRAM=aliroot #`cat $tempfile`
12e6d563 64
de3b7b4d 65#
66for filename in $CHUNKS; do
de3b7b4d 67 CHUNK=`basename $filename | cut -d "." -f 1,2`
b9a4f38c 68 BEG=`expr index "$CHUNK" .`
69 BEG=`expr $BEG - 4`
70 SUBCHUNK=${CHUNK:$BEG}
35bb17ae 71 echo "Running QA for chunk $filename. Outputs will be stored in "$RUNNUM"/"$CHUNK". $SUBCHUNK"
12e6d563 72 [ -e $RUNNUM"/"$CHUNK ] && { rm -rf $RUNNUM"/"$CHUNK ; }
de3b7b4d 73 mkdir -p $RUNNUM"/"$CHUNK
12e6d563 74 rm $RUNNUM"/"*.QA.$RUNNUM.$SUBCHUNK.root
75 rm $RUNNUM"/"QA.$SUBCHUNK.root
de3b7b4d 76 cd $RUNNUM"/"$CHUNK
48360675 77$PROGRAM -b<<EOF
4c39e638 78.L $ALICE_ROOT/prod/cosmic/rawqa.C+
4e056e45 79rawqa($filename, $RUNNUM)
80EOF
81
48360675 82$PROGRAM -b -q <<EOF
4e056e45 83AliQAManager * qam = AliQAManager::QAManager(AliQAv1::kRECMODE) ;
84 qam.Merge(atoi(gSystem->Getenv("RUNNUM"))) ;
85EOF
86 rm *QA.$RUNNUM.root
c2df60cc 87 cd ..
de3b7b4d 88done
4e056e45 89ls */Merged.QA.Data.root > merged.list
90outfile="Merged.QA.Data."$RUNNUM".root"
48360675 91$PROGRAM -b -q <<EOF
4e056e45 92.L $ALICE_ROOT/test/cosmic/MergeQAMerged.C
93MergeQAMerged("$outfile", "merged.list") ;
35bb17ae 94EOF
4e056e45 95rm -f merged.list
96#$PROGRAM -b -q $ALICE_ROOT/test/cosmic/qasummary.C
97#$PROGRAM -b $ALICE_ROOT/test/QA/menuQA.C
35bb17ae 98cd ..