Upload
tod
View
44
Download
2
Tags:
Embed Size (px)
DESCRIPTION
Detector Simulation Examples. From the LHCb twiki page : SetupProject LHCb setenv tagA head-20090914 setenv tagB sim-20111020-vc-md100 mkdir myDDDB-Tutorial-LHCb-Feb2012 dump_db_to_files.py -c sqlite_file :$SQLITEDBPATH/ DDDB.db /DDDB -T $ tagA - PowerPoint PPT Presentation
Citation preview
LHCb Simulation Tutorial
CERN, 21st-22nd February 2012
0110100111011010100010101010110100B00le
Detector Simulation Examples
Creating a DB sliceFrom the LHCb twiki page :
SetupProject LHCb
setenv tagA head-20090914
setenv tagB sim-20111020-vc-md100
mkdir myDDDB-Tutorial-LHCb-Feb2012
dump_db_to_files.py -c sqlite_file:$SQLITEDBPATH/DDDB.db/DDDB -T $tagA
-d myDDDB-Tutorial-LHCb-Feb2012
dump_db_to_files.py -c sqlite_file:$SQLITEDBPATH/SIMCOND.db/SIMCOND
-T $tagB -d myDDDB-Tutorial-LHCb-Feb2012
For the tutorial
Copy the subdirectories
TutorialExample, LHCb, AfterMagnet
from /afs/cern.ch/user/s/seaso/public/Det/Tutorial/myDDDB-Tutorial-LHCb-Feb2012 area
2Simulation Tutorial - Feb. 2012
• The new geometry element is part of a DB slice . Let us call this local Db slice : ‘myDDDB-Tutorial-LHCb-Feb2012’
• Step1: Create a file ‘DetDb_Tutorial.py’ which has something like:
from Configurables import LHCbApp, CondDB, UpdateManagerSvc,DDDBConffrom Gaudi.Configuration import *
lhcbApp = LHCbApp()
DDDBConf().DbRoot = "/afs/cern.ch/user/s/seaso/scratch0/cmtuser/SQLDDDB/db/myDDDB-Tutorial-LHCb-Feb2012/lhcb.xml"CondDB().Tags['DDDB'] = 'HEAD'lhcbApp.DDDBtag = "head-20110914"lhcbApp.DataType = "2010"lhcbApp.Simulation = TrueLHCbApp().CondDBtag = "sim-20111020-vc-md100"
SetupProject Panoramix v20r2python $mypanoramix --BareConfig 1 –f none -v DetDb_Tutorial.py
• Step2:
Using Panoramix for Geometry Visualization
3Simulation Tutorial - Feb. 2012
• Step3: In the Panoramix window, click through the geometry tree
dd Structure Geometry AfterMagnetRegion TutorialMaster lvTutorialMaster
• Demonstration from an lxplus window.
Step 4: Use the info from HelpGeometry to navigate into the volumes
• Simple Solids, Boolean subtracted Solid.
• Array of solids
Using Panoramix for Geometry Visualization
4Simulation Tutorial - Feb. 2012
More info related to running Panoramix and copying the XmlVis in backup slides
Panoramix Demonstrations
5Simulation Tutorial - Feb. 2012
• Example Volumes : Three PixelContainers inside TutorialMaster Arrays of pixels inside each PixelContainer
Demonstration using Panoramics
More Examples
6Simulation Tutorial - Feb. 2012
(1) Create a boolean subtracted Box , starting from the Tutorial example and visualize it in Panoramix. It can be a box with two cylindrical holes. Example shown here.
Use the instructions in earlier slidesTo get the DB, before makingmodifications. The instructions forRunning panoramix are also in earlier slides.
An example solution is also provided in the database.
Exercises
7Simulation Tutorial - Feb. 2012
(2) In the example with Pixelcontainer, create pixels in a way which is symmetric around the beam axis. An example is shown here with pixels in the shape of r-phi geometry.
Exercises
8Simulation Tutorial - Feb. 2012
Exercise2: Part2After the Geant4 lecture
Use the volume create in Exercise 2 to run Gauss with particle gun and print
(a) The location of where the tracks are incident on the PixelContainer.
(b) The location of where the tracks are incident on the pixels.
Use the instructions from backup slides to run Gauss.
9Simulation Tutorial - Feb. 2012
BACKUP SLIDES
10Simulation Tutorial - Feb. 2012
For the Tutorial, a DB slice is made where the RICH2 is temporarily kept aside.
The space for that is used to create a TutorialMaster Volume within which we can create additional volumes in this tutorial. This can be copied to your area using instructions on page 2
Visualization attributes to volumes (colours , wire frames etc). The Tutorial Volume attributes in TutorialLogVols.xml, TutorialVisAtts.xml and colors.xml
setenvProject Panoramix v20r2cd ~/cmtuser/Panoramix_v20r2getpack Vis/XmlVis headOptional: getpack Vis/Panoramix v20r2 run $mypanamix from the options area of this panoramix.
DB Slice for Tutorial : Instructions for Panoramix
11Simulation Tutorial - Feb. 2012
• setenvGauss v41r1• cd ~/cmtuser/Gauss_v41r1• getpack Sim/Gauss v41r1 getpack Gen/LbPGuns getpack Tutorial/GaussTutorial head
• Compile the GaussTutorial• Edit Gauss requirements to use this packge• Copy the options files in /afs/cern.ch/user/s/seaso/public/Simulation/Tutorial/TutorialOptions
Use the standard Particle Gun options (alternately copy the options file ParticleGun_rich2.py from /afs/cern.ch/user/s/seaso/public/Simulation/Tutorial/Gen/LbPGubs/options area.)
gaudirun.py Gauss-DB-Feb2012-Tutorial.py Gauss_Job_TutorialUserPackage.py
Example running of Gauss
12Simulation Tutorial - Feb. 2012
1: In the ../myDDDB-Tutorial-LHCb-Feb-2012/TutorialExample
cp geometry_exercise1.xml geometry.xml cp structre_basic.xml structure.xml
SetupProject Panoramix v20r2python $mypanoramix --BareConfig 1 –f none -v DetDb_Tutorial.py
Exercise solutions
13Simulation Tutorial - Feb. 2012
2: In the ../myDDDB-Tutorial-LHCb-Feb2012/TutorialExample
cp geometry_exercise2.xml geometry.xml Then run panoramix as above To run gauss use the instructions on the previous slide
Tutorial DB optionsOptions for using volumes inside TutorialMaster
geometry_setA.xml : basic geometry
geometry_SetP.xml : few boolean solids
geometry_SetCoinA.xml : array of coins
geometry_SetPix.xml : PixelContainer
geometry_Exercise1.xml, geometry_Exercise2.xml, geometry_Exercise3.xml : solutions to the exercises
cp geometry_xxx.xml geometry.xml for the using the various setups
structure_basic.xml : basic geometry, boolean solids , PixelContainer etc.
With PixelContainer geometry:
structure_GenericDetElem.xml : generic detector element
structure_MasterSpDetElem.xml : customized detector element.
structure_exercise3.xml : solution to exercise 3
cp structure_xxx.xml structure.xml to use the various options.
14Simulation Tutorial - Feb. 2012
Tutorial Example XML
<DDDB><logvol name="lvTexPixContainer" material="RichMaterials/RichCO2" > <tubs name="TutorialPixContainer" sizeZ="TexSiContainerZSize" outerRadius="TexSiContainerOuterRadius" innerRadius="TexSiContainerInnerRadius" />
&TutorialPixArrayPhys; </logvol>
<!--<logvol name="lvTexSiPixel" material="Silicon" sensdet="TutorialSensDet/TexSensDet" >-->
<logvol name="lvTexSiPixel" material="Silicon" > <box name="TutorialPixBox" sizeX="TexSiPixXSize" sizeY="TexSiPixYSize" sizeZ="TexSiPixZSize" /></logvol>
</DDDB>
15Simulation Tutorial - Feb. 2012
Log Vol : Si Pix Array
Tutorial example XML
<DDDB>
<logvol name="lvTexCoin" material="TT/SiO2" >
<subtraction name="TutorialCoinSub" >
<tubs name="TutorialExampleCoinTubs"
sizeZ="TexCoinThickness"
outerRadius="TexCoinOuterR"
innerRadius="TexCoinInnerR" />
<box name="TutorialExampleCoinSubBox"
sizeX="TexCoinSubBoxXSize"
sizeY="TexCoinSubBoxYSize"
sizeZ="TexCoinSubBoxZLargeSize" />
<posXYZ />
</subtraction>
</logvol>
</DDDB>
16Simulation Tutorial - Feb. 2012
Log Vol : Coin shown in the slides