Difference between revisions of "Moller sim dictionary"
From Hall A Wiki
(→List of variables) |
|||
(92 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Summary == | == Summary == | ||
+ | |||
+ | The ROOT tree variables filled in [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d9/dcc/a00102_source.html MollerAnalysis.hh] in AddData , which is called from [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d3a/a00101_source.html MollerAnalysis.cc]. <br> | ||
+ | The values are defined all over the place! <br> | ||
+ | I am trying to catalog exactly where, and decide whether they should be defined differently... <br><br> | ||
* x, y, z | * x, y, z | ||
Line 14: | Line 18: | ||
== List of variables == | == List of variables == | ||
− | |||
− | |||
− | {| border="0" align="center" width=" | + | {| align="left" width="1200" border="0" |
+ | |- | ||
+ | | O | ||
+ | | used for this generator | ||
+ | |- | ||
+ | | X | ||
+ | | not used for this generator (seems to always be 0 or -1) | ||
+ | |- | ||
+ | | style="background: #F2CECE; color: black" | | ||
+ | | means I don't trust the definition of this variable in the tree yet | ||
+ | |} | ||
+ | <br><br> | ||
+ | |||
+ | {| border="0" align="center" width="1400" | ||
|- valign="top" | |- valign="top" | ||
| | | | ||
− | {| align="center" width=" | + | {| align="center" width="400" border="1" |
|+ | |+ | ||
− | ! scope="col" | + | ! scope="col" | Variable |
− | ! scope="col" | + | ! scope="col" | ee |
− | ! | + | ! scope="col" | ep |
− | ! | + | ! scope="col" | ine |
− | ! | + | ! scope="col" | Defined in... |
+ | ! scope="col" | Description | ||
|- | |- | ||
| x | | x | ||
Line 32: | Line 48: | ||
| O | | O | ||
| O | | O | ||
− | | rowspan="3" | Positions at <b>detector</b> | + | | rowspan="3" | Defined in tracking; value comes from hit information |
+ | | rowspan="3" | Positions at <b>detector</b> (mm) | ||
|- | |- | ||
| y | | y | ||
Line 48: | Line 65: | ||
| O | | O | ||
| O | | O | ||
− | | rowspan="3" | Positions at vertex | + | | rowspan="3" | Set in generator; value comes from hit information |
+ | | rowspan="3" | Positions at <b>vertex</b> (mm) | ||
|- | |- | ||
| y0 | | y0 | ||
Line 64: | Line 82: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in tracking; from hit information, but integer value defined in [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD] |
+ | | Particle number <br> e- = 0<br> e+ = 1<br> p = 2<br> <span style="text-decoration: overline">p</span> = 3<br> photon = 4<br> all others = 5 | ||
|- | |- | ||
| volume | | volume | ||
Line 70: | Line 89: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in tracking; value comes from hit information |
+ | | Volume number; <span style="color:#FF0000">needs work</span> | ||
|- | |- | ||
| rate | | rate | ||
Line 76: | Line 96: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in generator |
+ | | Rate (Hz/μA), needs to be normalized to number thrown | ||
|- | |- | ||
| track | | track | ||
Line 82: | Line 103: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in tracking; value comes from hit information |
+ | | Primaries are track = 1 (also 2, in case of mollers) | ||
|- | |- | ||
| event | | event | ||
Line 88: | Line 110: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in tracking GetEventID() |
+ | | Currently the two moller tracks have the same event number | ||
|} | |} | ||
| | | | ||
− | {| align="center" width=" | + | {| align="center" width="400" border="1" |
|+ | |+ | ||
! scope="col" | Variable | ! scope="col" | Variable | ||
Line 97: | Line 120: | ||
! scope="col" | ep | ! scope="col" | ep | ||
! scope="col" | ine | ! scope="col" | ine | ||
+ | ! scope="col" | Defined in... | ||
! scope="col" | Description | ! scope="col" | Description | ||
|- | |- | ||
Line 103: | Line 127: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | rowspan="4" | Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD]; value comes from hit information |
+ | | rowspan="4" | Momentum direction and energy (MeV) at <b>detector</b> | ||
|- | |- | ||
| px | | px | ||
Line 109: | Line 134: | ||
| O | | O | ||
| O | | O | ||
− | |||
|- | |- | ||
| py | | py | ||
Line 115: | Line 139: | ||
| O | | O | ||
| O | | O | ||
− | |||
|- | |- | ||
| pz | | pz | ||
Line 121: | Line 144: | ||
| O | | O | ||
| O | | O | ||
− | |||
|- | |- | ||
| kineE0 | | kineE0 | ||
Line 127: | Line 149: | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d3a/a00101_source.html MollerAnalysis.cc] |
− | |- | + | | <b>vertex</b> energy (MeV) |
+ | |- style="background: #F2CECE; color: black" | ||
| px0 | | px0 | ||
| X | | X | ||
| X | | X | ||
| X | | X | ||
− | | | + | | rowspan="4" | Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD]?; value comes from generator? |
− | |- | + | | rowspan="4" | Momentum direction <b>before the vertex?</b> |
+ | |- style="background: #F2CECE; color: black" | ||
| py0 | | py0 | ||
| X | | X | ||
| X | | X | ||
| X | | X | ||
− | + | |- style="background: #F2CECE; color: black" | |
− | |- | + | |
| pz0 | | pz0 | ||
| X | | X | ||
| X | | X | ||
| X | | X | ||
− | | | + | |- style="background: #F2CECE; color: black" |
− | |- | + | | theta0 |
+ | | X | ||
+ | | X | ||
+ | | X | ||
+ | |- style="background: #F2CECE; color: black" | ||
| kineE1 | | kineE1 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d3a/a00101_source.html MollerAnalysis.cc]; value for primaries from generator? |
− | |- | + | | <b>vertex</b> energy (MeV) |
+ | |- style="background: #F2CECE; color: black" | ||
| px1 | | px1 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | | rowspan="4" | Defined in generator; value comes from generator? |
− | |- | + | | rowspan="4" | Momentum directions at <b>vertex</b> |
+ | |- style="background: #F2CECE; color: black" | ||
| py1 | | py1 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | + | |- style="background: #F2CECE; color: black" | |
− | |- | + | |
| pz1 | | pz1 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | |- style="background: #F2CECE; color: black" |
− | |- | + | | theta1 |
+ | | O | ||
+ | | O | ||
+ | | O | ||
+ | |- style="background: #F2CECE; color: black" | ||
| kineE2 | | kineE2 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | | Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d3a/a00101_source.html MollerAnalysis.cc]; value for primaries from generator? |
− | |- | + | | <b>vertex</b> energy (MeV); only valid for second moller track... |
+ | |- style="background: #F2CECE; color: black" | ||
| px2 | | px2 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | | rowspan="4" | Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD]?; value comes from generator? |
− | |- | + | | rowspan="4" | Momentum directions at <b>vertex</b> |
+ | |- style="background: #F2CECE; color: black" | ||
| py2 | | py2 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | + | |- style="background: #F2CECE; color: black" | |
− | |- | + | |
| pz2 | | pz2 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | + | |- style="background: #F2CECE; color: black" | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | |- | + | |
| theta2 | | theta2 | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | |||
|} | |} | ||
| | | | ||
− | {| align="center" width=" | + | {| align="center" width="400" border="1" |
|+ | |+ | ||
! scope="col" | Variable | ! scope="col" | Variable | ||
! scope="col" | ee | ! scope="col" | ee | ||
− | ! | + | ! scope="col" | ep |
− | ! | + | ! scope="col" | ine |
− | ! | + | ! scope="col" | Defined in... |
− | |- | + | ! scope="col" | Description |
+ | |- style="background: #F2CECE; color: black" | ||
| ion | | ion | ||
| X | | X | ||
| O | | O | ||
| O | | O | ||
+ | | Defined in [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d81/a00110_source.html MollerDetectorHit.hh]; value comes from [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD] - boolean? | ||
| | | | ||
− | |- | + | |- style="background: #F2CECE; color: black" |
| ev_num | | ev_num | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | | defined in [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d3a/a00101_source.html MollerAnalysis.cc] as a counter |
− | |- | + | | off by 1 from event |
+ | |- style="background: #F2CECE; color: black" | ||
| process | | process | ||
| X | | X | ||
| X | | X | ||
| X | | X | ||
− | | | + | | defined in [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d4/d3a/a00101_source.html MollerAnalysis.cc], Defined in generator and [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD], [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d7/dce/a00143.html MollerSteppingVerbose] |
− | |- | + | | actually "splitProcess"; from tracking as originProcess->GetProcessName() or stepProcess->GetProcessName() |
+ | |- style="background: #F2CECE; color: black" | ||
| creator | | creator | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
− | | | + | | defined in [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d3/d00/a00113_source.html MollerDetectorSD], [https://hallaweb.jlab.org/12GeV/Moller/doxygen/mollersim/html/d7/dce/a00143.html MollerSteppingVerbose] |
− | |- | + | | actually "creatorProcess"; from tracking as originProcess->GetProcessName() |
+ | |- style="background: #F2CECE; color: black" | ||
| hit | | hit | ||
| O | | O | ||
Line 251: | Line 275: | ||
| O | | O | ||
| | | | ||
− | |- | + | | |
+ | |- style="background: #F2CECE; color: black" | ||
| kineE_org | | kineE_org | ||
| O | | O | ||
Line 257: | Line 282: | ||
| O | | O | ||
| | | | ||
− | |- | + | | |
+ | |- style="background: #F2CECE; color: black" | ||
| theta_org | | theta_org | ||
| O | | O | ||
Line 263: | Line 289: | ||
| O | | O | ||
| | | | ||
− | |- | + | | |
+ | |- style="background: #F2CECE; color: black" | ||
| diffXS | | diffXS | ||
| X | | X | ||
Line 269: | Line 296: | ||
| X | | X | ||
| | | | ||
− | |- | + | | |
+ | |- style="background: #F2CECE; color: black" | ||
| totXS | | totXS | ||
| O | | O | ||
| O | | O | ||
| O | | O | ||
+ | | | ||
| | | | ||
|} | |} | ||
Line 280: | Line 309: | ||
== Notes == | == Notes == | ||
− | + | # For mollers, the number thrown is 2x the number specified; this will be changed in future versions... | |
+ | # When secondaries are tracked, is second moller electron always track==2? Or are secondaries from first electron sometimes? Can we (should we) record secondaries from two moller electrons separately somehow? | ||
+ | # Vertex momenta are set in generators, then again in MollerAnalysis (to zero?) and then in MollerDetectorSD... but I think it should only be set in generator. The MollerDetectorSD definition is what sets the momentum2 for the elastic eps and inelastics to the vertexMomentum, which is from track info (fTrack->GetVertexMomentumDirection()). Momentum0 is the "pre-vertex" momentum (all in z direction) in all cases. | ||
+ | # kineE is defined as a double in MollerDetectorSD as fTrack->GetKineticEnergy(), but the tree variable is aHit->GetKineticEnergy. kineE0 is defined in MollerDetectorSD as GetVertexKineticEnergy(), then in MollerSteppingVerbose as thePrePoint->GetKineticEnergy(), and in MollerAnalysis as fTrack->GetVertexKineticEnergy() (this is what goes to the tree?). kineE2 is set to kineE0 in MollerDetectorSD, so has non-zero values even for ep and ine processes. kineE0, 1 and px,y,z 0,1 have definitions in MollerAnalysis.cc from thePostPoint() in the case of ionization??? | ||
+ | # SetMomentum, 0, 1, 2 defined in MollerAnalysis.hh, MollerDetectorHit, RootAnalysis.hh | ||
+ | # Something weird about the SetMomenta in RootAnalysis.hh - E0, p0 defined twice instead of E0, p0, p1, p2? | ||
<br><br> Return to [https://hallaweb.jlab.org/wiki/index.php/MOLLER_Simulations#Simulation Simulation Projects] | <br><br> Return to [https://hallaweb.jlab.org/wiki/index.php/MOLLER_Simulations#Simulation Simulation Projects] | ||
<br> Return to [[MOLLER at 11 GeV E09-005]] | <br> Return to [[MOLLER at 11 GeV E09-005]] |
Latest revision as of 10:34, 30 November 2012
Summary
The ROOT tree variables filled in MollerAnalysis.hh in AddData , which is called from MollerAnalysis.cc.
The values are defined all over the place!
I am trying to catalog exactly where, and decide whether they should be defined differently...
- x, y, z
- x0, y0, z0
- kineE, px, py, pz
- kineE0, px0, py0, pz0, theta0
- kineE1, px1, py1, pz1, theta1
- kineE2, px2, py2, pz2, theta2
- kineE_org, theta_org
- type, volume, event, ev_num, hit, track
- ion, process, creator
- diffXS, totXS, rate
List of variables
O | used for this generator |
X | not used for this generator (seems to always be 0 or -1) |
means I don't trust the definition of this variable in the tree yet |
|
|
|
Notes
- For mollers, the number thrown is 2x the number specified; this will be changed in future versions...
- When secondaries are tracked, is second moller electron always track==2? Or are secondaries from first electron sometimes? Can we (should we) record secondaries from two moller electrons separately somehow?
- Vertex momenta are set in generators, then again in MollerAnalysis (to zero?) and then in MollerDetectorSD... but I think it should only be set in generator. The MollerDetectorSD definition is what sets the momentum2 for the elastic eps and inelastics to the vertexMomentum, which is from track info (fTrack->GetVertexMomentumDirection()). Momentum0 is the "pre-vertex" momentum (all in z direction) in all cases.
- kineE is defined as a double in MollerDetectorSD as fTrack->GetKineticEnergy(), but the tree variable is aHit->GetKineticEnergy. kineE0 is defined in MollerDetectorSD as GetVertexKineticEnergy(), then in MollerSteppingVerbose as thePrePoint->GetKineticEnergy(), and in MollerAnalysis as fTrack->GetVertexKineticEnergy() (this is what goes to the tree?). kineE2 is set to kineE0 in MollerDetectorSD, so has non-zero values even for ep and ine processes. kineE0, 1 and px,y,z 0,1 have definitions in MollerAnalysis.cc from thePostPoint() in the case of ionization???
- SetMomentum, 0, 1, 2 defined in MollerAnalysis.hh, MollerDetectorHit, RootAnalysis.hh
- Something weird about the SetMomenta in RootAnalysis.hh - E0, p0 defined twice instead of E0, p0, p1, p2?
Return to Simulation Projects
Return to MOLLER at 11 GeV E09-005