Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:21:02

0001 #!/usr/bin/bash
0002 
0003 export TargetDir="$PWD"/condorout
0004 
0005 if [ -d ${TargetDir} ]; then
0006   if [ -d ${TargetDir}/OutDir0 ]; then
0007     rm -rf ${TargetDir}/OutDir*
0008   fi
0009 else
0010   mkdir ${TargetDir}
0011 fi
0012 
0013 i=0
0014 while read dir; do 
0015   li=$(printf "%04d" $i)
0016 
0017   rm inputdata.txt
0018   
0019 # creates a list of all files for a particular run
0020 for file in /sphenix/lustre01/sphnxpro/commissioning/DST_ana.387_2023p003/DST_CALOR-000"$dir"-*.root
0021 do
0022 cat >>inputdata.txt<< EOF
0023 $file
0024 EOF
0025 done
0026 
0027   j=20 #jobs per a run
0028   tot_files=$( cat inputdata.txt | wc -l )
0029   echo "total files: $tot_files"
0030   rem=$(( $tot_files%$j ))
0031   files_per_job=$(( $tot_files/$j ))
0032   njob=$j
0033   if [ $rem -ne 0 ]; then
0034     files_per_job=$(( $files_per_job+1 ))
0035   fi
0036   rem2=$(( $tot_files%$files_per_job ))
0037   njob=$(( $tot_files/$files_per_job ))
0038   if [ $rem2 -ne 0 ]; then
0039     njob=$(( ($tot_files/$files_per_job)+1 ))
0040   fi
0041   echo "files per job: $files_per_job"
0042   echo "njob: $njob"
0043 
0044 
0045   for((q=0;q<$njob;q++));
0046   do
0047 
0048     mkdir ${TargetDir}/OutDir$i
0049     export WorkDir="${TargetDir}/OutDir$i"
0050     echo "WorkDir:" ${WorkDir}
0051     start_file=$(( $q*$files_per_job+1 ))
0052     end_file=$(( $start_file+$files_per_job-1 ))
0053     echo "start file: $start_file   end file: $end_file"
0054 
0055     sed -n $start_file\,${end_file}p inputdata.txt > tmp.txt
0056     mv tmp.txt ${WorkDir}/inputdata.txt
0057     
0058     pushd ${WorkDir}
0059 
0060       
0061     
0062     cp -v "$PWD"/../../CondorRun.sh CondorRunJob$li.sh
0063     cp    "$PWD"/../../../Fun4All_tsc.C .
0064     
0065     chmod +x CondorRunJob$li.sh
0066     
0067     
0068     cat >>ff.sub<< EOF
0069 +JobFlavour                   = "workday"
0070 transfer_input_files          = ${WorkDir}/CondorRunJob$li.sh, ${WorkDir}/input.txt,${WorkDir}/Fun4All_tsc.C
0071 Executable                    = CondorRunJob$li.sh
0072 request_memory                = 10GB
0073 Universe                      = vanilla
0074 Notification                  = Never
0075 GetEnv                        = True
0076 Priority                      = +12
0077 Output                        = condor.out
0078 Error                         = condor.err
0079 Log                           = /tmp/condor$li.log
0080 Notify_user                   = bs3402@columbia.edu
0081 
0082 Queue
0083 EOF
0084 
0085     condor_submit ff.sub
0086     popd
0087   
0088     i=$((i+1))
0089   done
0090 done < runList.txt # redirect the input of the