#!/usr/bin/perl -w use strict; use File::Basename; my $baseDir = $ARGV[0]; print $baseDir."\n"; my $pawiandir = $ENV{CMAKE_SOURCE_DIR}; print $pawiandir."\n"; my $configFilesDir = $pawiandir."/Examples/JpsiGamEtaPiPiNew/ConfigFiles"; my $summaryFileDir = $pawiandir."/Examples/JpsiGamEtaPiPiNew/bin/gcc-4.4.4/release/link-static/scan/summary.dat"; my $mcFileDir = "/data/liema/michaell/PwaJpsiGamEtaPiPi/FS4Vectors-PHSPMC-JpsiGamEtaPipPim_4m_v4.dat"; print $configFilesDir."\n"; my $queue="pwa"; my $app = "$pawiandir/Examples/JpsiGamEtaPiPiNew/bin/gcc-4.4.4/release/link-static/MJpsiGamEtaPiPiNewApp"; #my @myHypList=('Eta', 'Eta2', 'F1', 'EtaF1', 'EtaEta2', 'F1Eta2', 'EtaF1Eta2'); my @myHypList=('F1Eta2'); #my @mySubDecayList=('_a0f0f2sigma', '_a0f0a2f2', '_a0f0a2sigma', '_a0f0a2f2sigma'); my @mySubDecayList=('_a0f0f2sigma', '_a0f0a2f2', '_a0f0a2sigma', '_a0f0a2f2sigma'); my $theHyp= ""; my $subDecay=""; for $theHyp (@myHypList) { for $subDecay (@mySubDecayList){ my $templConfig = $configFilesDir."/JpsiGamEtaPiPiNew_$theHyp$subDecay.cfg"; my $templStart = $configFilesDir."/defaultparams.dat"; my $newConfig = `cat $templConfig`; my $massMin=1.70; my $binWidth=0.04; my $nbins=8; my $bin=0; while($bin<$nbins){ my $rangeMin=$massMin+$bin*$binWidth; my $rangeMax = $rangeMin+$binWidth; my $rangeMean = sprintf("%.0f",($rangeMin+0.5*$binWidth)*1000); my $rangeDir= $baseDir."/" .$rangeMean; if(! (-e $rangeDir)) {system("mkdir $rangeDir");} my $fitDir = $rangeDir."/" .$theHyp; my $fitConfig = $fitDir ."/" .basename($templConfig); my $fitStart = $fitDir ."/" .basename($templStart); if(! (-e $fitDir)) {system("mkdir $fitDir");} open CONF, ">$fitConfig"; foreach my $line(split "\n", $newConfig){ if($line=~/massRangeMin/){ print CONF "massRangeMin = $rangeMin\n"; next; #line } if($line=~/massRangeMax/){ print CONF "massRangeMax = $rangeMax\n"; next; #line } if($line=~/paramFile/){ print CONF "paramFile = $fitStart\n"; next; #line } if($line=~/sumFile/){ print CONF "sumFile = $summaryFileDir\n"; next; #line } if($line=~/mcFile/){ print CONF "mcFile = $mcFileDir\n"; next; #line } print CONF $line ."\n"; } close CONF; system("cp $templStart $fitDir/"); chdir($fitDir); my $cmd = "bsub -l nodes=1:ppn=16 -q $queue -o $fitDir/batch.log \"$app -c $fitConfig --mode pwa >&! $fitDir/log$subDecay.out \""; print $cmd."\n"; system($cmd); # chdir("-"); chdir($baseDir); $bin++; } } }