-- KevinSterlingHolway - 2015-12-12

Recipe for Hacked Digitization and Reconstruction

You'll need HITS files for this recipe, eg, from the Simulation step of TrtAnalysis#Recipe_for_the_full_chain or MC15 dataset. Or, of course, you can use relevant MC.

This recipe is intended to work with HITS files simulated with the baseline Scenario 1 Ar geometry. This recipe "hack-01" gas geometry (StatusHT tag). For more information of these gas geometries, see here.

https://twiki.cern.ch/twiki/pub/Atlas/TRT_geometries/Baseline.pdf

Digitization

In a new folder, prepare your environment:

setupATLAS
asetup 20.7.1,here

# The Ar Mimicking "Hack"
cmt co -r TRT_Digitization-01-01-07-00 InnerDetector/InDetDigitization/TRT_Digitization/

setupWorkArea.py
cd WorkArea/cmt
cmt br cmt config
cmt br cmt make
cd ../..

Now for the HITtoRDO transformation, either locally or on the grid. This is a low mu configuration, based on this recipe.

Locally, run:

nevents=1000
infile=my_local_input_file.HITS.pool.root

statusht=TrtStrawStatusHT-MC-run2-hack_00-01 # The gas geometry tag name
validrun=286990 # A run number within the StatusHT tag's "interval of validity" range.

Reco_tf.py \
--maxEvents $nevents \
--inputHITSFile $infile \
--outputRDOFile OUT.RDO.pool.root \
--conditionsTag OFLCOND-RUN12-SDR-19 \
--geometryVersion ATLAS-R2-2015-03-01-00_VALIDATION \
--DataRunNumber 222525 \
--postInclude "RecJobTransforms/UseFrontier.py" \
--autoConfiguration "everything" \
--numberOfCavernBkg 0 \
--postExec \
'HITtoRDO:job.StandardPileUpToolsAlg.PileUpTools["MdtDigitizationTool"].LastXing=150' \
'HITtoRDO:from IOVDbSvc.CondDB import conddb' \
'HITtoRDO:conddb.blockFolder("/TRT/Cond/StatusHT")' \
'HITtoRDO:conddb.addFolderWithTag("TRT_OFL","/TRT/Cond/StatusHT","'${statusht}'",force=True,forceMC=True)' \
'HITtoRDO:conddb.addMarkup("/TRT/Cond/StatusHT","<forceRunNumber>'${validrun}'</forceRunNumber>")' \
--preExec \
'HITtoRDO:from GeoModelSvc.GeoModelSvcConf import GeoModelSvc' \
'HITtoRDO:GeoModelSvc.TRT_VersionOverride="TRT-GEO-03"'

or for the grid:

lsetup panda
voms-proxy-init --voms atlas

statusht=TrtStrawStatusHT-MC-run2-hack_00-01 # The gas geometry tag name
validrun=286990 # A run number within the StatusHT tag's "interval of validity" range.

pathena --trf \
       "Reco_tf.py \
--maxEvents 1000 \
--inputHITSFile %IN \
--outputRDOFile %OUT.RDO.pool.root \
--conditionsTag OFLCOND-RUN12-SDR-19 \
--geometryVersion ATLAS-R2-2015-03-01-00_VALIDATION \
--DataRunNumber 222525 \
--postInclude \"RecJobTransforms/UseFrontier.py\" \
--autoConfiguration \"everything\" \
--numberOfCavernBkg 0 \
--postExec \
'HITtoRDO:job.StandardPileUpToolsAlg.PileUpTools[\"MdtDigitizationTool\"].LastXing=150' \
'HITtoRDO:from IOVDbSvc.CondDB import conddb' \
'HITtoRDO:conddb.blockFolder(\"/TRT/Cond/StatusHT\")' \
'HITtoRDO:conddb.addFolderWithTag(\"TRT_OFL\",\"/TRT/Cond/StatusHT\",\"${statusht}\",force=True,forceMC=True)' \
'HITtoRDO:conddb.addMarkup(\"/TRT/Cond/StatusHT\",\"<forceRunNumber>${validrun}</forceRunNumber>\")' \
--preExec \
'HITtoRDO:from GeoModelSvc.GeoModelSvcConf import GeoModelSvc' \
'HITtoRDO:GeoModelSvc.TRT_VersionOverride=\"TRT-GEO-03\"'" \
       --nFilesPerJob 1 \
       --nFiles $NFILES \
       --inDS user.kholway.pg_100k_20GeV_flateta_el.s1Ar.HITS \
       --outDS user.${USER}.pg_100k_20GeV_flateta_el.s1Ar.hack-01.RDO \

Reconstruction and xAOD

In a new folder, prepare your environment:

asetup 20.7.1,here

# For putting TRT info in xAOD
cmt co -r InDetPrepRawDataToxAOD-00-01-27 InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD
sed -i '11s/False/True/' InnerDetector/InDetEventCnv/InDetPrepRawDataToxAOD/share/InDetDxAOD.py

# PID tool compatible with digitization hack
cmt co -r TRT_ElectronPidTools-01-01-13-01 InnerDetector/InDetRecTools/TRT_ElectronPidTools

# Normal setup stuff
setupWorkArea.py
cd WorkArea/cmt
cmt br cmt config
cmt br cmt make
cd ../..

Then, to run locally,

nevents=1000
infile=my_local_input_file.HITS.pool.root

Reco_tf.py \
--inputRDOFile $infile \
--outputESDFile OUT.ESD.pool.root \
--maxEvents $nevents \
--ignoreErrors True \
--autoConfiguration everything \
--preExec '\
rec.doTrigger.set_Value_and_Lock(False)
rec.doMuon.set_Value_and_Lock(True)
rec.doCalo.set_Value_and_Lock(True)
rec.doEgamma.set_Value_and_Lock(True)
rec.doJetMissingETTag.set_Value_and_Lock(False)
rec.doTau.set_Value_and_Lock(False)
from InDetRecExample.InDetJobProperties import InDetFlags
InDetFlags.doInnerDetectorCommissioning.set_Value_and_Lock(True)
InDetFlags.useBroadClusterErrors.set_Value_and_Lock(False)
InDetFlags.doTRTOccupancyEventInfo.set_Value_and_Lock(True)
from PerfMonComps.PerfMonFlags import jobproperties as pmjp
pmjp.PerfMonFlags.doPostProcessing.set_Value_and_Lock(True)
pmjp.PerfMonFlags.doSemiDetailedMonitoringFullPrint.set_Value_and_Lock(True)
from GeoModelSvc.GeoModelSvcConf import GeoModelSvc
GeoModelSvc.TRT_VersionOverride="TRT-GEO-03" ' \
--postExec '\
from IOVDbSvc.CondDB import conddb
conddb.addOverride("/TRT/Calib/RT","TrtCalibRt-13TeV_ArgonScenario1_00-00" )
conddb.addOverride("/TRT/Calib/T0","TrtCalibT0-13TeV_ArgonScenario1_00-00")
conddb.addOverride("/TRT/Cond/StatusHT","'${statusht}'")
conddb.addMarkup("/TRT/Cond/StatusHT","<forceRunNumber>'${validrun}'</forceRunNumber>")' \
--postInclude=InDetPrepRawDataToxAOD/InDetDxAOD.py
To run on the grid,
lsetup panda
voms-proxy-init --voms atlas

statusht=TrtStrawStatusHT-MC-run2-hack_00-01 # The gas geometry tag name
validrun=286990 # A run number within the StatusHT tag's "interval of validity" range.


NFILE=1000
inDS=user.${USER}.my_input_dataset.RDO
outDS=user.${USER}.my_output_dataset.ESD

        pathena --trf "Reco_tf.py \
--inputRDOFile %IN \
--outputESDFile %OUT.ESD.pool.root \
--maxEvents 1000 \
--ignoreErrors True \
--autoConfiguration everything \
--preExec '\
rec.doTrigger.set_Value_and_Lock(False)
rec.doMuon.set_Value_and_Lock(True)
rec.doCalo.set_Value_and_Lock(True)
rec.doEgamma.set_Value_and_Lock(True)
rec.doJetMissingETTag.set_Value_and_Lock(False)
rec.doTau.set_Value_and_Lock(False)
from InDetRecExample.InDetJobProperties import InDetFlags
InDetFlags.doInnerDetectorCommissioning.set_Value_and_Lock(True)
InDetFlags.useBroadClusterErrors.set_Value_and_Lock(False)
InDetFlags.doTRTOccupancyEventInfo.set_Value_and_Lock(True)
from PerfMonComps.PerfMonFlags import jobproperties as pmjp
pmjp.PerfMonFlags.doPostProcessing.set_Value_and_Lock(True)
pmjp.PerfMonFlags.doSemiDetailedMonitoringFullPrint.set_Value_and_Lock(True)
from GeoModelSvc.GeoModelSvcConf import GeoModelSvc
GeoModelSvc.TRT_VersionOverride=\"TRT-GEO-03\" ' \
--postExec '\
from IOVDbSvc.CondDB import conddb
conddb.addOverride(\"/TRT/Calib/RT\",\"TrtCalibRt-13TeV_ArgonScenario1_00-00\" )
conddb.addOverride(\"/TRT/Calib/T0\",\"TrtCalibT0-13TeV_ArgonScenario1_00-00\")
conddb.addOverride(\"/TRT/Cond/StatusHT\",\"${statusht}\")
conddb.addMarkup(\"/TRT/Cond/StatusHT\",\"<forceRunNumber>${validrun}</forceRunNumber>\")' \
--postInclude=InDetPrepRawDataToxAOD/InDetDxAOD.py  \
" \
    --nFilesPerJob 1 \
    --nFiles 1000 \
    --inDS user.${USER}.pg_100k_20GeV_flateta_el.s1Ar.hack-01.RDO  \
    --outDS user.${USER}.pg_100k_20GeV_flateta_el.s1Ar.hack-01.ESD \
    --extOutFile=StreamDAOD_IDTRKVALID.pool.root \
Edit | Attach | Watch | Print version | History: r3 < r2 < r1 | Backlinks | Raw View | WYSIWYG | More topic actions
Topic revision: r3 - 2015-12-12 - KevinSterlingHolway
 
    • Cern Search Icon Cern Search
    • TWiki Search Icon TWiki Search
    • Google Search Icon Google Search

    Sandbox All webs login

This site is powered by the TWiki collaboration platform Powered by PerlCopyright & 2008-2020 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
or Ideas, requests, problems regarding TWiki? use Discourse or Send feedback