Warning, /CalibCalorimetry/EcalCorrelatedNoiseAnalysisModules/data/EcnaSystemScriptPython is written in an unsupported language. File is not indexed.
0001 # --------------------------------------------- EcnaSystemScriptPython ----------------------------------------------
0002 #
0003 # Script for ECNA cmsRun python file building with RunNumber, Analysis name, Nb of samples,
0004 # First evt#, Last evt#, SM or Dee number, python file name (without extension) and path as arguments
0005 #
0006 # Syntax of call: csh EcnaSystemScriptPython \
0007 # RUN_NUMBER \"ANALYSIS_NAME\" \"NB_OF_SAMPLES\"
0008 # $1 $2 $3
0009 # \"FIRST_EVT\" \"LAST_EVT\" \"NB_OF_EVTS\" \"SM_OR_DEE\" \"SM_OR_DEE_NUMBER\"
0010 # $4 $5 $6 $7 $8
0011 # PYTHON_FILE_NAME_WITHOUT_EXTENSION PATH
0012 # $9 $10
0013 #
0014 # Example of call:
0015 # csh EcnaSystemScriptPython 80875 AdcPed6 "10" "1" "150" "150" "SM" "12" \
0016 # EcnaPython_80875_AdcPed6_10_1_50_SM12\
0017 # cmssw/CMSSW_2_1_19/CalibCalorimetry/EcalCorrelatedNoiseAnalysisModules/data \
0018 # 150 EcnaPythonSource_Run_80875
0019 #
0020 # Update: 29/07/11
0021 #
0022 #--------------------------------------------------------------------------------------------------------------------
0023
0024 echo "*EcnaSystemScriptPython> Script for ECNA cmsRun python file building started."
0025
0026 set userdir = $HOME
0027
0028 pwd
0029
0030 if( !(-d ${10}) ) then
0031 set localdir = $PWD
0032 else
0033 set localdir = ${10}
0034 endif
0035
0036 #.... .......
0037 cd ${localdir}
0038 pwd
0039
0040 if( !(-f SourceForPython_R${1}) ) then
0041 echo "*EcnaSystemScriptPython> File SourceForPython_R${1} not found."
0042 echo " No python file can be created."
0043 else
0044 #-------------------------------------------------------- Copy EcnaSystemPythonModuleInsert_1
0045 if( -f cna_one_line_tempo_insert_1 ) then
0046 \rm cna_one_line_tempo_insert_1
0047 endif
0048 cp EcnaSystemPythonModuleInsert_1.py cna_one_line_tempo_insert_1
0049
0050 #-------------------------------------------------------- Build PythonModuleSource
0051 if( -f cna_one_line_tempo_source_A ) then
0052 \rm cna_one_line_tempo_source_A
0053 endif
0054 if( -f cna_one_line_tempo_source_a ) then
0055 \rm cna_one_line_tempo_source_a
0056 endif
0057 if( -f cna_one_line_tempo_source_b ) then
0058 \rm cna_one_line_tempo_source_b
0059 endif
0060 if( -f cna_one_line_tempo_source_c ) then
0061 \rm cna_one_line_tempo_source_c
0062 endif
0063 if( -f cna_one_line_tempo_source_d ) then
0064 \rm cna_one_line_tempo_source_d
0065 endif
0066 if( -f cna_one_line_tempo_source_e ) then
0067 \rm cna_one_line_tempo_source_e
0068 endif
0069 if( -f cna_one_line_tempo_source_f ) then
0070 \rm cna_one_line_tempo_source_f
0071 endif
0072 if( -f cna_one_line_tempo_source_g ) then
0073 \rm cna_one_line_tempo_source_g
0074 endif
0075 if( -f cna_one_line_tempo_source_h ) then
0076 \rm cna_one_line_tempo_source_h
0077 endif
0078 # if( -f cna_one_line_tempo_source_i ) then
0079 # \rm cna_one_line_tempo_source_i
0080 # endif
0081
0082 #--------------------------- Source for Python
0083
0084 echo " " > cna_one_line_tempo_source_A
0085 echo "#-------------- Source" > cna_one_line_tempo_source_a
0086 echo 'process.source = cms.Source("PoolSource",' > cna_one_line_tempo_source_b
0087 echo " fileNames = cms.untracked.vstring(" > cna_one_line_tempo_source_c
0088
0089 more SourceForPython_R${1} > cna_one_line_tempo_source_d
0090
0091 echo " )," > cna_one_line_tempo_source_e
0092 echo " duplicateCheckMode = cms.untracked.string('noDuplicateCheck')" > cna_one_line_tempo_source_f
0093 echo " )" > cna_one_line_tempo_source_g
0094
0095 echo "process.maxEvents = cms.untracked.PSet( input = cms.untracked.int32(-1))" > cna_one_line_tempo_source_h
0096
0097 # echo "process.SkipEvent = cms.untracked.PSet( input = cms.untracked.vstring('ProductNotFound'))" > cna_one_line_tempo_source_i
0098
0099 #-------------------------------------------------------- Copy EcnaSystemPythonModuleInsert_2 ("simul" if RunNumber < 10000)
0100 if( -f cna_one_line_tempo_insert_2 ) then
0101 \rm cna_one_line_tempo_insert_2
0102 endif
0103
0104 if( ${1} < 10000) then
0105 cp EcnaSystemPythonModuleInsert_2_simul.py cna_one_line_tempo_insert_2
0106 else
0107 cp EcnaSystemPythonModuleInsert_2_data.py cna_one_line_tempo_insert_2
0108 endif
0109
0110 #-------------------------------------------------------- Build PythonModuleGettingParameters
0111 if( -f cna_one_line_tempo_getpar_a ) then
0112 \rm cna_one_line_tempo_getpar_a
0113 endif
0114 if( -f cna_one_line_tempo_getpar_b ) then
0115 \rm cna_one_line_tempo_getpar_b
0116 endif
0117 if( -f cna_one_line_tempo_getpar_c ) then
0118 \rm cna_one_line_tempo_getpar_c
0119 endif
0120 if( -f cna_one_line_tempo_getpar_d ) then
0121 \rm cna_one_line_tempo_getpar_d
0122 endif
0123 if( -f cna_one_line_tempo_getpar_E ) then
0124 \rm cna_one_line_tempo_getpar_E
0125 endif
0126 if( -f cna_one_line_tempo_getpar_e ) then
0127 \rm cna_one_line_tempo_getpar_e
0128 endif
0129 if( -f cna_one_line_tempo_getpar_F ) then
0130 \rm cna_one_line_tempo_getpar_F
0131 endif
0132 if( -f cna_one_line_tempo_getpar_f ) then
0133 \rm cna_one_line_tempo_getpar_f
0134 endif
0135 if( -f cna_one_line_tempo_getpar_z ) then
0136 \rm cna_one_line_tempo_getpar_z
0137 endif
0138
0139 echo " #-------------- Getting Parameters" > cna_one_line_tempo_getpar_a
0140 echo " sAnalysisName = cms.string(${2})," > cna_one_line_tempo_getpar_b
0141 echo " sNbOfSamples = cms.string(${3})," > cna_one_line_tempo_getpar_c
0142 echo " sFirstReqEvent = cms.string(${4})," > cna_one_line_tempo_getpar_d
0143 echo " sLastReqEvent = cms.string(${5})," > cna_one_line_tempo_getpar_E
0144 echo " sReqNbOfEvts = cms.string(${6})," > cna_one_line_tempo_getpar_e
0145 echo " sStexName = cms.string(${7})," > cna_one_line_tempo_getpar_F
0146 echo " sStexNumber = cms.string(${8}) " > cna_one_line_tempo_getpar_f
0147 echo " )" > cna_one_line_tempo_getpar_z
0148
0149 #-------------------------------------------------------- Copy EcnaSystemPythonModuleInsert_3
0150 if( -f cna_one_line_tempo_insert_3 ) then
0151 \rm cna_one_line_tempo_insert_3
0152 endif
0153 cp EcnaSystemPythonModuleInsert_3.py cna_one_line_tempo_insert_3
0154
0155
0156 #----------------------------------------------------------------------------------------------------------------
0157 # Remove old python file (name: ${9}.py = ${10}EcnaPython_${2}_S1_${3}_R${1}_${4}_${5}_${6}${7}${8}.py) if it exists
0158 # and build the new file with cat command
0159 #----------------------------------------------------------------------------------------------------------------
0160
0161 if ( -f ${9}.py ) then
0162 \rm ${9}.py
0163 endif
0164
0165 cat cna_one_line_tempo_insert_1 \
0166 cna_one_line_tempo_source_A \
0167 cna_one_line_tempo_source_a \
0168 cna_one_line_tempo_source_b \
0169 cna_one_line_tempo_source_c \
0170 cna_one_line_tempo_source_d \
0171 cna_one_line_tempo_source_e \
0172 cna_one_line_tempo_source_f \
0173 cna_one_line_tempo_source_g \
0174 cna_one_line_tempo_source_h \
0175 # cna_one_line_tempo_source_i \
0176 cna_one_line_tempo_insert_2 \
0177 cna_one_line_tempo_getpar_a \
0178 cna_one_line_tempo_getpar_b \
0179 cna_one_line_tempo_getpar_c \
0180 cna_one_line_tempo_getpar_d \
0181 cna_one_line_tempo_getpar_E \
0182 cna_one_line_tempo_getpar_e \
0183 cna_one_line_tempo_getpar_F \
0184 cna_one_line_tempo_getpar_f \
0185 cna_one_line_tempo_getpar_z \
0186 cna_one_line_tempo_insert_3 > ${9}.py
0187
0188 #-------------------------------------------------------- remove the flag file if it exists and build a new flag file
0189 if( -f EcnaPythonFlagFile ) then
0190 \rm EcnaPythonFlagFile
0191 endif
0192
0193 echo "Flag file for ECNA python file management. Used by TCnaGui. Can be removed by user (with option Clean in TCnaGui or directly) ONLY AFTER all submitted jobs have been finished." > EcnaPythonFlagFile
0194
0195 #-------------------------------------------------------- Remove the tempo files
0196 \rm cna_one_line_tempo_insert_1
0197
0198 \rm cna_one_line_tempo_source_A
0199 \rm cna_one_line_tempo_source_a
0200 \rm cna_one_line_tempo_source_b
0201 \rm cna_one_line_tempo_source_c
0202 \rm cna_one_line_tempo_source_d
0203 \rm cna_one_line_tempo_source_e
0204 \rm cna_one_line_tempo_source_f
0205 \rm cna_one_line_tempo_source_g
0206 \rm cna_one_line_tempo_source_h
0207 # \rm cna_one_line_tempo_source_i
0208
0209 \rm cna_one_line_tempo_insert_2
0210
0211 \rm cna_one_line_tempo_getpar_a
0212 \rm cna_one_line_tempo_getpar_b
0213 \rm cna_one_line_tempo_getpar_c
0214 \rm cna_one_line_tempo_getpar_d
0215 \rm cna_one_line_tempo_getpar_E
0216 \rm cna_one_line_tempo_getpar_e
0217 \rm cna_one_line_tempo_getpar_F
0218 \rm cna_one_line_tempo_getpar_f
0219 \rm cna_one_line_tempo_getpar_z
0220
0221 \rm cna_one_line_tempo_insert_3
0222
0223 endif
0224
0225 echo "*EcnaSystemScriptPython> End of execution."