Belle II Software  release-08-01-10
hitXPDerivate Class Reference

This class is the derivate of HitXP, and complete it with a constructor that use all other complex types (classes) of basf2. More...

#include <hitXPDerivate.h>

Inheritance diagram for hitXPDerivate:
Collaboration diagram for hitXPDerivate:

Public Member Functions

 hitXPDerivate ()
 empy constructor
 
 hitXPDerivate (const SVDTrueHit &hit, const SVDCluster &cluster, const MCParticle &particle, const VXD::SensorInfoBase &sensor)
 constructor for SVD hit with arguments: hit, cluster, particle, sensor info) More...
 
 hitXPDerivate (const PXDTrueHit &hit, const MCParticle &particle, const VXD::SensorInfoBase &sensor)
 constructor for PXD hit with arguments: hit, particle, sensor info) More...
 
 ClassDef (hitXPDerivate, 2)
 needed by root
 
ROOT::Math::XYZVector getPositionMid () const
 get the relative memeber
 
ROOT::Math::XYZVector getPositionEntry () const
 get the relative memeber
 
ROOT::Math::XYZVector getPositionExit () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentumMid () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentumEntry () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentumExit () const
 get the relative memeber
 
ROOT::Math::XYZVector getPositionLocalMid () const
 get the relative memeber
 
ROOT::Math::XYZVector getPositionLocalEntry () const
 get the relative memeber
 
ROOT::Math::XYZVector getPositionLocalExit () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentumLocalMid () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentumLocalEntry () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentumLocalExit () const
 get the relative memeber
 
int getPDGID () const
 get the relative memeber
 
ROOT::Math::XYZVector getPosition0 () const
 get the relative memeber
 
ROOT::Math::XYZVector getMomentum0 () const
 get the relative memeber
 
double getTime () const
 get the relative memeber
 
int getSensorSensor () const
 get the relative memeber
 
int getSensorLadder () const
 get the relative memeber
 
int getSensorLayer () const
 get the relative memeber
 
int getClusterU () const
 get the relative memeber
 
int getClusterV () const
 get the relative memeber
 
bool isReconstructed () const
 get the relative memeber
 
double getCharge () const
 get the relative memeber
 
void setPositionMid (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setPositionEntry (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setPositionExit (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setMomentumMid (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setMomentumEntry (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setMomentumExit (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setPositionLocalMid (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setPositionLocalEntry (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setPositionLocalExit (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setMomentumLocalMid (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setMomentumLocalEntry (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setMomentumLocalExit (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setPDGID (int pdgid)
 get the relative memeber
 
void setPosition0 (ROOT::Math::XYZVector position)
 get the relative memeber
 
void setMomentum0 (ROOT::Math::XYZVector momentum)
 get the relative memeber
 
void setTime (double Time)
 get the relative memeber
 
void setSensorSensor (int sensor)
 get the relative memeber
 
void setSensorLayer (int layer)
 get the relative memeber
 
void setSensorLadder (int ladder)
 get the relative memeber
 
void setClusterU (int cluster)
 get the relative memeber
 
void setClusterV (int cluster)
 get the relative memeber
 
void setReconstructed (bool isReconstructed)
 get the relative memeber
 
void setCharge (double charge)
 get the relative memeber
 
double omega (ROOT::Math::XYZVector xx, ROOT::Math::XYZVector p, double charge) const
 evaluates the parameter omega (1/curvature radius) of a helicoidal track starting from position and momentum of the hit input(hit postion, hit momentum, hit charge) output(omega value)
 
double tanLambda (ROOT::Math::XYZVector xx, ROOT::Math::XYZVector p) const
 evaluates the parameter tanLambda (pz/pt) of a helicoidal track starting from position and momentum of the hit input(hit postion, hit momentum) output(tanlambda value)
 
double d0 (ROOT::Math::XYZVector xx, ROOT::Math::XYZVector p, double charge) const
 evaluates the parameter d0 (impact parameter) of a helicoidal track starting from position and momentum of the hit input(hit postion, hit momentum, hit charge) output(d0 value)
 
double phi0 (const ROOT::Math::XYZVector &xx, ROOT::Math::XYZVector p, double charge) const
 evaluates the parameter phi0 (angle between pT and x) of a helicoidal track starting from position and momentum of the hit input(hit postion, hit momentum, hit charge) output(phi0 value)
 
double z0 (ROOT::Math::XYZVector xx, ROOT::Math::XYZVector p, double charge) const
 evaluates the parameter z0 (distance transverse plane-POCA) of a helicoidal track starting from position and momentum of the hit input(hit postion, hit momentum, hit charge) output(z0 value)
 
double getOmegaMid () const
 evaluate relative parameter using midpoint position and momentum
 
double getOmegaEntry () const
 evaluate relative parameter using entrypoint position and momentum
 
double getOmegaExit () const
 evaluate relative parameter using exitpoint position and momentum
 
double getOmega0 () const
 evaluate relative parameter using IP position and momentum
 
double getTanLambdaMid () const
 evaluate relative parameter using midpoint position and momentum
 
double getTanLambdaEntry () const
 evaluate relative parameter using entrypoint position and momentum
 
double getTanLambdaExit () const
 evaluate relative parameter using exitpoint position and momentum
 
double getTanLambda0 () const
 evaluate relative parameter using IP position and momentum
 
double getD0Mid () const
 evaluate relative parameter using midpoint position and momentum
 
double getD0Entry () const
 evaluate relative parameter using entrypoint position and momentum
 
double getD0Exit () const
 evaluate relative parameter using exitpoint position and momentum
 
double getD00 () const
 evaluate relative parameter using IP position and momentum
 
double getPhi0Mid () const
 evaluate relative parameter using midpoint position and momentum
 
double getPhi0Entry () const
 evaluate relative parameter using entrypoint position and momentum
 
double getPhi0Exit () const
 evaluate relative parameter using exitpoint position and momentum
 
double getPhi00 () const
 evaluate relative parameter using IP position and momentum
 
double getZ0Mid () const
 evaluate relative parameter using midpoint position and momentum
 
double getZ0Entry () const
 evaluate relative parameter using entrypoint position and momentum
 
double getZ0Exit () const
 evaluate relative parameter using exitpoint position and momentum
 
double getZ00 () const
 evaluate relative parameter using IP position and momentum
 
 ClassDef (hitXP, 2)
 needed by root
 

Public Attributes

ROOT::Math::XYZVector m_positionMid
 poition of hit at midpoint of layer
 
ROOT::Math::XYZVector m_positionEntry
 poition of hit at entrypoint of layer
 
ROOT::Math::XYZVector m_positionExit
 poition of hit at exitpoint of layer
 
ROOT::Math::XYZVector m_momentumMid
 momentum of hit at midpoint of layer
 
ROOT::Math::XYZVector m_momentumEntry
 momentum of hit at entry of layer
 
ROOT::Math::XYZVector m_momentumExit
 momentum of hit at exit of layer
 
ROOT::Math::XYZVector m_positionLocalMid
 poition of hit at midpoint of layer, local coordinate
 
ROOT::Math::XYZVector m_positionLocalEntry
 poition of hit at entrypoint of layer, local coordinate
 
ROOT::Math::XYZVector m_positionLocalExit
 poition of hit at exitpoint of layer, local coordinate
 
ROOT::Math::XYZVector m_momentumLocalMid
 momentum of hit at midpoint of layer, local coordinate
 
ROOT::Math::XYZVector m_momentumLocalEntry
 momentum of hit at entrypoint of layer, local coordinate
 
ROOT::Math::XYZVector m_momentumLocalExit
 momentum of hit at exitpoint of layer, local coordinate
 
int m_PDGID = 0
 PDGID.
 
ROOT::Math::XYZVector m_position0
 position at IP
 
ROOT::Math::XYZVector m_momentum0
 momentum at IP
 
double m_time = 0
 time of the hit
 
int m_sensorSensor = 0
 sensor of the hit
 
int m_sensorLayer = 0
 layer of the hit
 
int m_sensorLadder = 0
 ladder of the hit
 
double m_info_d0 = 0
 d0 from MCParticle info evaluation. More...
 
double m_info_z0 = 0
 z0 from MCParticle info evaluation. More...
 
double m_info_phi0 = 0
 phi0 from MCParticle info evaluation. More...
 
double m_info_tanlambda = 0
 tanlambda from MCParticle info evaluation. More...
 
double m_info_omega = 0
 omega from MCParticle info evaluation. More...
 
int m_clusterU = 0
 flag for u cluster
 
int m_clusterV = 0
 flag for v cluster
 
bool m_reconstructed = 0
 flag for reconstructed track
 
double m_charge = 0
 charge of the track
 

Detailed Description

This class is the derivate of HitXP, and complete it with a constructor that use all other complex types (classes) of basf2.

It is necessary to buld a hitXP object.

Definition at line 27 of file hitXPDerivate.h.

Constructor & Destructor Documentation

◆ hitXPDerivate() [1/2]

hitXPDerivate ( const SVDTrueHit hit,
const SVDCluster cluster,
const MCParticle particle,
const VXD::SensorInfoBase sensor 
)

constructor for SVD hit with arguments: hit, cluster, particle, sensor info)

position at midpoint

position at entrypoint

position at exitpoint

momentum ad midpoint

momentum at entrypoint

momentum at exitpoint

local position at midpoint

local position at entrypoint

local position at exitpoint

local momentum at midpoint

local momentum ad entrypoint

local momentum at exitpoint

PDGID

position at IP

momentum at IP

time of the hit

sensor number

layer number

ladder number

d0 from particle info

z0 from particle info

phi0 from particle info

omega from particle info

omega from particle info

flag of u-cluser

return 1 if it is an V cluster. flag of v cluster

flag of reconstructed

charge of particle

Definition at line 15 of file hitXPDerivate.cc.

17 {
18  m_positionMid = sensor.pointToGlobal(ROOT::Math::XYZVector(hit.getU(), hit.getV(), hit.getW()), false);
19  m_positionEntry = sensor.pointToGlobal(ROOT::Math::XYZVector(hit.getEntryU(), hit.getEntryV(), hit.getEntryW()),
20  false);
21  m_positionExit = sensor.pointToGlobal(ROOT::Math::XYZVector(hit.getExitU(), hit.getExitV(), hit.getExitW()),
22  false);
23  m_momentumMid = sensor.vectorToGlobal(hit.getMomentum(), false);
24  m_momentumEntry = sensor.vectorToGlobal(hit.getEntryMomentum(), false);
25  m_momentumExit = sensor.vectorToGlobal(hit.getExitMomentum(), false);
26  m_positionLocalMid = ROOT::Math::XYZVector(hit.getU(), hit.getV(), hit.getW());
27  m_positionLocalEntry = ROOT::Math::XYZVector(hit.getEntryU(), hit.getEntryV(), hit.getEntryW());
28  m_positionLocalExit = ROOT::Math::XYZVector(hit.getExitU(), hit.getExitV(), hit.getExitW());
29  m_momentumLocalMid = hit.getMomentum();
30  m_momentumLocalEntry = hit.getEntryMomentum();
31  m_momentumLocalExit = hit.getExitMomentum();
32  m_PDGID = particle.getPDG();
33  m_position0 = B2Vector3D(particle.getVertex());
34  m_momentum0 = B2Vector3D(particle.getMomentum());
35  m_time = hit.getGlobalTime();
36  m_sensorSensor = hit.getSensorID().getSensorNumber();
37  m_sensorLayer = hit.getSensorID().getLayerNumber();
38  m_sensorLadder = hit.getSensorID().getLadderNumber();
39  m_info_d0 = MCParticleInfo(particle, ROOT::Math::XYZVector(0, 0, 1.5)).getD0();
40  m_info_z0 = MCParticleInfo(particle, ROOT::Math::XYZVector(0, 0, 1.5)).getZ0();
41  m_info_phi0 = MCParticleInfo(particle, ROOT::Math::XYZVector(0, 0, 1.5)).getPhi();
42  m_info_tanlambda = MCParticleInfo(particle, ROOT::Math::XYZVector(0, 0, 1.5)).getOmega();
43  m_info_omega = tan(MCParticleInfo(particle, ROOT::Math::XYZVector(0, 0, 1.5)).getLambda());
44  m_clusterU = cluster.isUCluster();
45  m_clusterV = cluster.isUCluster() ? 0 : 1;
46  m_reconstructed = false;
47  m_charge = particle.getCharge();
48 }
This struct is used by the TrackingPerformanceEvaluation Module to save information of reconstructed ...
double getZ0()
Getter for Z0.
double getPhi()
Getter for Phi.
double getOmega()
Getter for Omega.
double getD0()
Getter for D0.
ROOT::Math::XYZVector m_momentumEntry
momentum of hit at entry of layer
Definition: hitXP.h:39
double m_info_phi0
phi0 from MCParticle info evaluation.
Definition: hitXP.h:56
ROOT::Math::XYZVector m_momentumMid
momentum of hit at midpoint of layer
Definition: hitXP.h:38
int m_sensorLadder
ladder of the hit
Definition: hitXP.h:53
double m_time
time of the hit
Definition: hitXP.h:50
double m_info_d0
d0 from MCParticle info evaluation.
Definition: hitXP.h:54
ROOT::Math::XYZVector m_momentumExit
momentum of hit at exit of layer
Definition: hitXP.h:40
ROOT::Math::XYZVector m_positionEntry
poition of hit at entrypoint of layer
Definition: hitXP.h:36
int m_clusterV
flag for v cluster
Definition: hitXP.h:60
double m_info_tanlambda
tanlambda from MCParticle info evaluation.
Definition: hitXP.h:57
int m_sensorLayer
layer of the hit
Definition: hitXP.h:52
ROOT::Math::XYZVector m_positionMid
poition of hit at midpoint of layer
Definition: hitXP.h:35
ROOT::Math::XYZVector m_positionLocalExit
poition of hit at exitpoint of layer, local coordinate
Definition: hitXP.h:43
ROOT::Math::XYZVector m_momentumLocalMid
momentum of hit at midpoint of layer, local coordinate
Definition: hitXP.h:44
ROOT::Math::XYZVector m_positionExit
poition of hit at exitpoint of layer
Definition: hitXP.h:37
bool m_reconstructed
flag for reconstructed track
Definition: hitXP.h:61
ROOT::Math::XYZVector m_positionLocalEntry
poition of hit at entrypoint of layer, local coordinate
Definition: hitXP.h:42
int m_clusterU
flag for u cluster
Definition: hitXP.h:59
double m_info_z0
z0 from MCParticle info evaluation.
Definition: hitXP.h:55
ROOT::Math::XYZVector m_positionLocalMid
poition of hit at midpoint of layer, local coordinate
Definition: hitXP.h:41
ROOT::Math::XYZVector m_momentumLocalEntry
momentum of hit at entrypoint of layer, local coordinate
Definition: hitXP.h:45
double m_charge
charge of the track
Definition: hitXP.h:62
ROOT::Math::XYZVector m_momentumLocalExit
momentum of hit at exitpoint of layer, local coordinate
Definition: hitXP.h:46
ROOT::Math::XYZVector m_momentum0
momentum at IP
Definition: hitXP.h:49
double m_info_omega
omega from MCParticle info evaluation.
Definition: hitXP.h:58
ROOT::Math::XYZVector m_position0
position at IP
Definition: hitXP.h:48
int m_PDGID
PDGID.
Definition: hitXP.h:47
int m_sensorSensor
sensor of the hit
Definition: hitXP.h:51
B2Vector3< double > B2Vector3D
typedef for common usage with double
Definition: B2Vector3.h:516
double tan(double a)
tan for double
Definition: beamHelpers.h:31

◆ hitXPDerivate() [2/2]

hitXPDerivate ( const PXDTrueHit hit,
const MCParticle particle,
const VXD::SensorInfoBase sensor 
)

constructor for PXD hit with arguments: hit, particle, sensor info)

position at midpoint

position at entrypoint

position at exitpoint

momentum ad midpoint

momentum at entrypoint

momentum at exitpoint

local position at midpoint

local position at entrypoint

local position at exitpoint

local momentum at midpoint

local momentum ad entrypoint

local momentum at exitpoint

PDGID

position at IP

momentum at IP

time of the hit

sensor number

layer number

ladder number

d0 from particle info DO NOT USE, use the get

z0 from particle info DO NOT USE, use the get

phi0 from particle info DO NOT USE, use the get

omega from particle info DO NOT USE, use the get

omega from particle info DO NOT USE, use the get

flag of reconstructed

charge of the particle

Definition at line 51 of file hitXPDerivate.cc.

Member Data Documentation

◆ m_info_d0

double m_info_d0 = 0
inherited

d0 from MCParticle info evaluation.

DO NOT USE, use the get

Definition at line 54 of file hitXP.h.

◆ m_info_omega

double m_info_omega = 0
inherited

omega from MCParticle info evaluation.

DO NOT USE, use the get

Definition at line 58 of file hitXP.h.

◆ m_info_phi0

double m_info_phi0 = 0
inherited

phi0 from MCParticle info evaluation.

DO NOT USE, use the get

Definition at line 56 of file hitXP.h.

◆ m_info_tanlambda

double m_info_tanlambda = 0
inherited

tanlambda from MCParticle info evaluation.

DO NOT USE, use the get

Definition at line 57 of file hitXP.h.

◆ m_info_z0

double m_info_z0 = 0
inherited

z0 from MCParticle info evaluation.

DO NOT USE, use the get

Definition at line 55 of file hitXP.h.


The documentation for this class was generated from the following files: