|
Steve's Notes
Wire Sag Validation (Release 15.6.9.13 - SLC5)
|
Athena |
VP1 |
DQ2 |
Wire Sag |
UM Cluster
Introduction
This is an informal summary of notes on installing and running the MDT wire sag validation software. The validation environment was set up by Niels van Eldik and the Rt correction function was developed by Dan Levin. I am only trying to put things in place. Please send comments and corrections to
Steven.Goldfarb@cernNOSPAMPLEASE.ch.
Set Up the CMT Environment
Here we define and export variables for CMT. The correct version of CMT to use for any particular release is found on the
Offline Release Status Page. Here, we use
Release 15.6.9.13. The corresponding version of CMT is
v1r21.
- Login to the appropriate machine (the "-Y" option passes the necessary X-Window information)
CERN> ssh -Y myusername@lx64slc5.cern.ch *OR* ssh -Y myusername@atint01.cern.ch (can also use atint02 or atint03)
UM> ssh -Y myusername@umt3int01.physics.lsa.umich.edu (can also use umt3int02 or umt3int03)
- Setup the cmt environment corresponding to the release (do whenever there is a new version of CMT)
CERN> source /afs/cern.ch/sw/contrib/CMT/v1r21/mgr/setup.sh
UMT3> source /atlas/data08/OSG/APP/atlas_app/atlas_rel/15.6.9/CMT/v1r21/mgr/setup.sh
Set Up the Athena Environment
This sets up the Athena working environment. More details at
WorkBookSetAccount .
- Create a directory structure (do this once for the release)
mkdir -p ~/TestArea/15.6.9.13/cmthome
cd ~/TestArea/15.6.9.13/cmthome
- At CERN (on lx64slc5 or atint), create a file called
requirements
with the following content:
#---------------------------------------------------------------------
set CMTSITE STANDALONE
set SITEROOT /afs/cern.ch/atlas/software/releases/15.6.9
macro ATLAS_TEST_AREA ${HOME}/TestArea
macro ATLAS_DIST_AREA ${SITEROOT}
macro SITE_PROJECT_AREA ${SITEROOT}
macro EXTERNAL_PROJECT_AREA ${SITEROOT}
apply_tag projectArea
apply_tag opt
apply_tag setup
apply_tag simpleTest
apply_tag AtlasProduction
apply_tag 15.6.9.13
use AtlasLogin AtlasLogin-* $(ATLAS_DIST_AREA)
set CMTCONFIG i686-slc5-gcc43-opt
#---------------------------------------------------------------------
- On UMT3, create a file called
requirements
with the following content:
#---------------------------------------------------------------------
set CMTSITE STANDALONE
set SITEROOT /atlas/data08/OSG/APP/atlas_app/atlas_rel/15.6.9
macro ATLAS_TEST_AREA ${HOME}/TestArea
macro ATLAS_DIST_AREA ${SITEROOT}
macro SITE_PROJECT_AREA ${SITEROOT}
macro EXTERNAL_PROJECT_AREA ${SITEROOT}
apply_tag projectArea
apply_tag opt
apply_tag setup
apply_tag simpleTest
apply_tag AtlasProduction
apply_tag 15.6.9.13
use AtlasLogin AtlasLogin-* $(ATLAS_DIST_AREA)
set CMTCONFIG i686-slc5-gcc43-opt
#---------------------------------------------------------------------
- Configure cmt (creates the scripts for setting up the environment):
cmt config
- Setup the Athena environmental variables: (every time you login)
source ~/TestArea/15.6.9.13/cmthome/setup.sh
- Check the CMT variables:
echo $CMTCONFIG
CERN> i686-slc5-gcc43-opt
UMT3> i686-slc5-gcc43-opt
echo $CMTPATH
CERN> ~/TestArea/15.6.9.13:/afs/cern.ch/atlas/software/releases/15.6.9/AtlasProduction/15.6.9.13:(etc.)
UMT3> ~/TestArea/15.6.9.13:/atlas/data08/OSG/APP/atlas_app/atlas_rel/15.6.9/AtlasTier0/15.6.9.13:(etc)
Check Out the MuonRecExample Package
We will run standalone muon reconstruction from within this package
- If not done already, set up the environmental variables.
cd ~/TestArea/15.6.9.13
source cmthome/setup.sh
- Find out which version of UserAnalysis is used (in this case MuonRecExample-01-10-08):
cmt show versions MuonSpectrometer/MuonReconstruction/MuonRecExample
- On UMT3, get kerberos permission (using CERN afs password):
UMT3> /usr/kerberos/bin/kinit myusername@CERN.CH
- Checkout, configure and build the package
cmt co -r MuonRecExample-01-10-08 MuonSpectrometer/MuonReconstruction/MuonRecExample
cd MuonSpectrometer/MuonReconstruction/MuonRecExample/cmt
source setup.sh
gmake
Test the MuonRecExample Package
See more detailed instructions at
WorkBookReconstruction.
CURRENTLY FAILS DUE TO LACK OF INPUT FILE
- Set up Athena and UserAnalysis environments: (once per login)
cd ~/TestArea/15.6.9.13
source cmthome/setup.sh
cd MuonSpectrometer/MuonReconstruction/MuonRecExample/run
source ../cmt/setup.sh
- See what options you can run with:
athena -h
- Try running MuonRec_myTopOptions (as is):
get_files -jo MuonRecExample/MuonRec_myTopOptions.py
athena MuonRecExample/MuonRec_myTopOptions.py > myTopOutput.txt &
tail -f myTopOutput.txt
- Browse the n-tuple to see if something was produced:
root CalibrationNtuple.root
Check out the Validation Package for testing PRD
- If not done already, set up the environmental variables:
cd ~/TestArea/15.6.9.13
source cmthome/setup.sh
- Check out the appropriate package (MuonPRDTest-00-00-15 has Steve's fixes)
cmt co -r MuonPRDTest-00-00-15 MuonSpectrometer/MuonValidation/MuonPRDTest
- Set up the environment
cd MuonSpectrometer/MuonValidation/MuonPRDTest/cmt
source setup.sh
gmake
Check out the TrackDistortedSurfaces package (geometrical corrections)
- If not done already, set up the environmental variables:
cd ~/TestArea/15.6.9.13
source cmthome/setup.sh
- Check out the package (tag TrkDistortedSurfaces-00-01-02 has Steve's fixes)
cmt co -r TrkDistortedSurfaces-00-01-02 Tracking/TrkDetDescr/TrkDistortedSurfaces
- Build it
cd Tracking/TrkDetDescr/TrkDistortedSurfaces/cmt
source setup.sh
gmake
Check out the MuonCalibData package (Rt correction function)
- If not done already, set up the environmental variables:
cd ~/TestArea/15.6.9.13
source cmthome/setup.sh
- Check out the package (tag MdtCalibData-01-03-25 has Steve's implementation)
cmt co -r MdtCalibData-01-03-25 MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData
- Build it
cd MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/cmt
source setup.sh
gmake
Check out the MuonCalibSvc package (call to Rt correction functions)
- If not done already, set up the environmental variables:
cd ~/TestArea/15.6.9.13
source cmthome/setup.sh
- Check out the package (tag MdtCalibSvc-02-02-12 has Steve's implementation)
cmt co -r MdtCalibSvc-02-02-12 MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibSvc
- Build it
cd MuonSpectrometer/MuonCalib/MdtCalib/MdtCalibData/cmt
source setup.sh
gmake
Wire Sag Data Samples Generated by Rob Harrington
Using release 15.2.0, Rob Harrington generated data samples of non-interacting muons with and without a magnetic field in the barrel and endcap, sectors 1 and 5. The goal is to digitize these data samples with and without wire-sag to validate the effects. Samples in sector 1 should have no sag. Samples in sector 5 should have maximum sag.
- The data samples are replicated in the following directories:
afs: /afs/cern.ch/user/m/muonprod/roberth/CSC.singlepart_mu100_15.2.0_ATLAS-GEO-07-00-00
castor: /castor/cern.ch/user/g/goldfarb/CSC.singlepart_mu100_15.2.0_ATLAS-GEO-07-00-00
atint0X: /net/s3_datac/goldfarb/CSC.singlepart_mu100_15.2.0_ATLAS-GEO-07-00-00
- Here is a listing of directory contents:
> ls -l /afs/cern.ch/user/m/muonprod/roberth/CSC.singlepart_mu100_15.2.0_ATLAS-GEO-07-00-00
-rw-r--r-- 1 23674 zp 4301 Jun 25 21:59 batchscripts.tar.gz
drwxr-xr-x 2 23674 zp 6144 Jun 25 22:47 CSC.008001.singlepart_mu100_sector1_barrel
drwxr-xr-x 2 23674 zp 6144 Jun 25 21:59 CSC.008002.singlepart_mu100_sector5_barrel
drwxr-xr-x 2 23674 zp 6144 Jun 25 21:59 CSC.008003.singlepart_mu100_sector1_endcap
drwxr-xr-x 2 23674 zp 6144 Jun 25 21:59 CSC.008004.singlepart_mu100_sector5_endcap
-rwxr-xr-x 1 23674 zp 1063 Jun 25 21:59 CSC.008233.singlepart_mu20_barrelEC.py
-rwxr-xr-x 1 23674 zp 1060 Jun 25 21:59 CSC.singlepart_mu100_sector1_barrel.py
-rwxr-xr-x 1 23674 zp 1060 Jun 25 21:59 CSC.singlepart_mu100_sector1_endcap.py
-rwxr-xr-x 1 23674 zp 1060 Jun 25 21:59 CSC.singlepart_mu100_sector5_barrel.py
-rwxr-xr-x 1 23674 zp 1060 Jun 25 21:59 CSC.singlepart_mu100_sector5_endcap.py
-rwxr-xr-x 1 23674 zp 133 Jun 25 21:59 IDCaloOffDigitConfig.py
-rw-r--r-- 1 23674 zp 1149 Jun 25 22:01 README.txt
-rwxr-xr-x 1 23674 zp 1981 Jun 25 21:59 submit_mu100.sh
- Check the README.txt file to understand the contents of the files. The geometry tags are
field: ATLAS-GEO-07-00-00
no field: ATLAS-GEONF-07-00-00
Modify jobOptions to Run PRDTest Algorithm on One of the Data Sets
This algorithm creates histograms comparing SimHits with ROT. It plots the residuals and other relevant values.
- Start with the example:
cp !MuonRec_myTopOptions.py !PRDTestField.py
- Add the following lines to !PRDTestField.py to run on one of the data samples (endcap sector 1, with B field):
from MuonRecExample.DataFiles import DataInfo,DataFilesInfoMap
DataFilesInfoMap['wField'] = DataInfo(["/afs/cern.ch/user/m/muonprod/roberth/CSC.singlepart_mu100_15.2.0_ATLAS-GEO-07-00-00/CSC.008003.singlepart_mu100_sector1_endcap/CSC.008003.singlepart_mu100_sector1_endcap_magfield_[0-2].HITS.pool.root"],
'HITS',
'ATLAS-GEO-07-00-00' )
muonRecFlags.InputData = 'wField'
- Add the following lines to specify the number of events:
if not 'EvtMax' in dir():
EvtMax = 250
- Add the following flags:
doMuonRecStatistics = True
doAuditors = True
recFlags.doCBNT = True
doTrkNtuple = False
readMuonDigit = False
- After
include("MuonRecExample/MuonRec_topOptions.py")
add the following flags to include the PRD testing algorithm:
include("MuonPRDTest/MDTPRDTest.py")
if muonRecFlags.InputData() == 'wField':
topSequence.MDTPRDValAlg.Propagator = ToolSvc.MuonPropagator
Example jobOption Files
jobOption files have been created to run over events in the data sets described above using the following variations: sector 1/sector 5, barrel/endcap, field/no field, geometric sag in digitization, rt sag effects in digitization, geometric sag corrections in reconstruction, rt sag corrections in calibration. Here are some examples:
Run the Test
The following output files will be created:
- config.txt - Configuration used in job
- PRDTestFieldOutput.txt Output from running the job
- MDTPRDTest.root root file containing n-tuples, histograms
- Run the Test :
athena PRDTestField.py >! PRDTestFieldOutput.txt &
tail -f PRDTestFieldOutput.txt
- Copy the macro file from MuonValidation
cp ~/TestArea/15.6.3.6/MuonSpectrometer/MuonValidation/MuonPRDTest/macros/MDTPRDVal.C .
- Be sure to modify the macros to handle the correct file names, etc.
- Open the root file:
root MDTPRDTest.root
- Load the macros
.L MDTPRDVal.C
- Plot the residuals
draw()
Example Plots
The attached talk contains plots generated with the above jobOptions. There are still many technical problems to be resolved (track propagation, applying geometrical effects, etc.)
- Analysis (28/07/2009): [ pdf ] [ ppt ]
- Analysis (14/09/2009): [ pdf ] [ ppt ]
Interpreting the Plots
Variable Name |
Variable Meaning |
MDT_SimRadius |
Local R of pure simulated drift circle |
MDT_LocalZ |
Local Z of pure simulated drift circle |
MDT_SdoRadius |
Local R of simulated drift circle with RT corrections |
MDT_ExNomWireR |
Local R from wire to extrapolated track |
MDT_ExNomWireZ |
Local Z intercept from wire to extrapolated track |
MDT_ExSagWireR |
Local R from corrected wire to extrapolated track |
MDT_ExSagWireZ |
Local Z intercept from corrected wire to extrapolated track |
MDT_RotRadius |
Local R of reconstructed drift circle |
MDT_ExSagRotR |
Local R from corrected ROT to extrapolated track |
References
Major updates:
StevenGoldfarb - 23 Apr 2009 (creation)
--
StevenGoldfarb - 28 Apr 2009 (added
WireSag instructions)
--
StevenGoldfarb - 01 Jul 2009 (modified for 15.2.0)
--
StevenGoldfarb - 13 Jul 2009 (modified for 15.5.2.2)
--
StevenGoldfarb - 28 Jul 2009 (linked some example job, plots)
--
StevenGoldfarb - 2009-09-14 (added plot interpretation, analysis update)
--
StevenGoldfarb - 23-Oct-2009 (modified for 15.3.1.7)
--
StevenGoldfarb - 04-Nov-2009 (modified for 15.5.1.8)
--
StevenGoldfarb - 04-Nov-2009 (reverted to 15.5.2.2)
--
StevenGoldfarb - 07-Nov-2009 (modified for 15.5.2.2)
--
StevenGoldfarb - 12-Feb-2010 (modified for 15.6.3.6 - SLC5 - and
MdtCalibSvc changes)
--
StevenGoldfarb - 01-Mar-2010 (updated some tags)
--
StevenGoldfarb - 10-Jun-2010 (modified for 15.6.9.13)