]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TPC/Upgrade/macros/spaceChargeFluctuation.sh
Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / TPC / Upgrade / macros / spaceChargeFluctuation.sh
CommitLineData
064739fd 1
c0172f82 2#
3# shell scipt to
4#
2ff913b6 5# argument 1 - path to the aliroot iinitialization script
6# argument 2 - action argument
7# see $ALICE_ROOT/TPC/Upgrade/macros/spaceChargeFluctuation.C
8# if (mode==0) GenerateMapRawIons(arg0);
9# if (mode==1) DoMerge();
10# if (mode==2) spaceChargeFluctuationToyMC(arg0,arg1);
11# argument 3 - according the C++ code
064739fd 12#export flucPath=$HOME/AliRoot/TPCdev/TPC/Upgrade/macros
2ff913b6 13
c0172f82 14source $1
064739fd 15aliroot -b -q $flucPath/NimStyle.C $ALICE_ROOT/TPC/Upgrade/macros/spaceChargeFluctuation.C+\($2,$3,$4,$5\)
c0172f82 16exit;
17
18
2ff913b6 19#
4540bfc3 20#Example usage hera (here we have 1000 nodes, but no acces to user disk)
21# (to install aliroot on hera, the best is to use the rsync)
22# jobs to be submitted form the lxsub0x
2ff913b6 23export baliceTPC=/hera/alice/miranov/.baliceHera
24export flucPath=$HOME/AliRoot/TPCdev/TPC/Upgrade/macros/
064739fd 25export batchCommand="qsub -cwd -V -l h_rt=24:0:0,h_rss=4G "
2ff913b6 26#
27#
4540bfc3 28# Example usage local
29# jobs to be submitted form the lxb1001 or lxb1002
30#(here we have 80 nodes and user disk)
2ff913b6 31#
32export baliceTPC=/u/miranov/.baliceTPC
33export flucPath=$HOME/AliRoot/TPCdev/TPC/Upgrade/macros/
064739fd 34export batchCommand="qsub -cwd -V "
2ff913b6 35#
36# 0.) sumbmit jobs to process raw data and accumlate space charge
37#
38#
c0172f82 39prefix="/hera/alice/local/filtered/alice/data/"
40wdir=`pwd`
2ff913b6 41for a in `tail -n 1900 rawAll.list`; do
c0172f82 42 dname=`echo $a| sed s_"$prefix"__g| sed s_"/"_"\_"_g | sed s_".root"__`
43 echo $a $dname
2ff913b6 44 mkdir $wdir/$dname
45 cd $wdir/$dname
46 ln -sf $a raw.root
47 $batchCommand -o filter.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 0 0 0
48 cd $wdir
49done;
50#
51# 1.) submit merging jobs example
52#
53ls `pwd`/*/histo.root | grep -v dirmerge > histo.list
54wdir=`pwd`
55split -l 50 -d histo.list merge
56for a in `ls merge*`; do
57 mkdir dir$a
58 mv $a dir$a/histo.list
59done;
60
61wdir=`pwd`
62for a in `ls -d dirmerge*`; do
63 cd $wdir/$a
64 $batchCommand -o filter.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 1 1 0
65 cd $wdir
66done;
67
68
69#
70# 3.) submit fluctuation code analysis
71#
72
73
74wdir=`pwd`
75for a in `ls -d dirmerge*`; do
76 cd $wdir/$a
77 $batchCommand -o filter.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 3 1000 10
78 cd $wdir
79done;
80
81
82#
4540bfc3 83# 4.) submit fluctuation code dist scan
2ff913b6 84#
85rm dir*/SpaceCharg*root
86rm dir*/filter*.log
87rm dir*/*.sh.e*
88
89wdir=`pwd`
90for a in `ls -d dirmerge* | grep -v dirmergeAll`; do
91 cd $wdir/$a
92 $batchCommand -o filterFluc0.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 1 0 0
93 $batchCommand -o filterFlucP.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 1 0 1
94 $batchCommand -o filterFlucM.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 1 0 2
95 cd $wdir
96done;
97
98wdir=`pwd`
99ls $wdir/dirmerge*/fluct*.root| grep -v mergeAll > $wdir/dirmergeAll/fluctuation.list
100cd $wdir/dirmergeAll
101rm dir*/SpaceCharg*root
102rm dir*/filter*.log
103rm dir*/*.sh.e*
104
105for idir in {0..100}; do
106mkdir $wdir/dirmergeAll/dir$idir
107cd $wdir/dirmergeAll/dir$idir
108cp $wdir/dirmergeAll/fluctuation.list $wdir/dirmergeAll/dir$idir/
109for i in {0..14..2} ; do
110 $batchCommand -o filterFluc0$i.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 1 $i 0
111 $batchCommand -o filterFlucP$i.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 1 $i 1
112 $batchCommand -o filterFlucM$i.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 1 $i 2
c0172f82 113done;
2ff913b6 114cd $wdir
115done
c0172f82 116
4540bfc3 117#
118# 4.b) submit the code for the epsilon scan
119#
120#example directory
121cd /hera/alice/miranov/SpaceCharge/Fluctuations/PbPbWithGain
122wdir=`pwd`
123
124ls $wdir/dirmerge*/fluct*.root| grep -v mergeAll > $wdir/dirmergeAll/fluctuation.list
125cd $wdir/dirmergeAll
6a2194d8 126for epsilon in {10,20}; do
4540bfc3 127 #create and clean directories for epsilon
128 mkdirhier $wdir/dirmergeAll/dEpsilon$epsilon
129 rm -rf $wdir/dirmergeAll/dEpsilon$epsilon/*
130 cp $wdir/dirmergeAll/fluctuation.list $wdir/dirmergeAll/dEpsilon$epsilon/
131done;
132#submit epsilon scan jobs
6a2194d8 133for epsilon in {10,20}; do # loop over epsilons
4540bfc3 134 for idir in {0..40}; do # loop create different random ion pileup frames
135 mkdir $wdir/dirmergeAll/dEpsilon$epsilon/dir$idir
136 cd $wdir/dirmergeAll/dEpsilon$epsilon/dir$idir
137 cp $wdir/dirmergeAll/fluctuation.list $wdir/dirmergeAll/dEpsilon$epsilon/dir$idir/
138 for i in {0..14..2} ; do # specify differnt mulitpliicty of ions in pilepy frame run B0, B+, B-
139 scaling=$(($epsilon/5))
140 $batchCommand -o filterFluc0$i.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 $scaling $i 0
141 $batchCommand -o filterFlucP$i.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 $scaling $i 1
142 $batchCommand -o filterFlucM$i.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 4 $scaling $i 2
143 done;
144 cd $wdir
145 done;
146done;
147
148
149
2ff913b6 150
151#
152# 5.) submit drawing jobs
153#
154wdir=`pwd`
155for a in `ls -d dirmerge*`; do
156 cd $wdir/$a
157 $batchCommand -o filterFluc.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 5 0 10000
158 cd $wdir
159done;
160
161
6a2194d8 162#
163# 6.) submit drawing fluctuation jobs
164#
165wdir=`pwd`
166for a in `ls -d dir*`; do
167 cd $wdir/$a
168 rm localFit.root
169 $batchCommand -o drawFlucFit.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 6 -1.5 1.5 0 0
170 cd $wdir
171done;
172
173#
174# 7.) submit drawing fluctuation jobs
175#
176wdir=`pwd`
177for a in `ls -d dir*`; do
178 cd $wdir/$a
179 rm localBins.root
180 $batchCommand -o drawFlucBin.log $flucPath/spaceChargeFluctuation.sh $baliceTPC 7 100000 10000 0 0
181 cd $wdir
182done;
183
2ff913b6 184
185#
186# 6.) make chain files
187#
188for i in 0 2 4 6 8 10 12 14 ; do
189 ls `pwd`/dir*/SpaceChargeTrackFluc$i\_1.root > track$i\_1.list
190 ls `pwd`/dir*/SpaceChargeTrackFluc$i\_0.root > track$i\_0.list
191done;