 |
Belle II Software
release-05-02-19
|
11 #include <pxd/utilities/PXDPerformanceStructs.h>
12 #include <framework/logging/Logger.h>
13 #include <pxd/reconstruction/PXDGainCalibrator.h>
26 charge = pxdCluster.getCharge();
27 size = pxdCluster.getSize();
28 uSize = pxdCluster.getUSize();
29 vSize = pxdCluster.getVSize();
30 posU = pxdCluster.getU();
37 VxdID sensorID(pxdIntercept.getSensorID());
44 if (!recoTracks.size())
return nullptr;
50 auto statePtr = getTrackStateOnModule(sensorInfo, *recoTracks[0]);
51 if (statePtr ==
nullptr)
return nullptr;
52 auto intersec = statePtr -> getPos();
53 auto intersec_p = statePtr -> getMom();
59 tol = local_p.CosTheta();
64 sensorInfo.
getUCellID(pxdIntercept.getCoorU()),
65 sensorInfo.
getVCellID(pxdIntercept.getCoorV()));
73 const std::string recoTracksName,
74 const std::string pxdTrackClustersName)
79 if (!recoTrackPtr)
return nullptr;
84 if (!pxdClusters.
size())
return nullptr;
85 for (
auto& aCluster : pxdClusters) {
86 if (aCluster.getSensorID().getID() == pxdIntercept.getSensorID()) {
88 dU = aCluster.getU() - pxdIntercept.getCoorU();
89 dV = aCluster.getV() - pxdIntercept.getCoorV();
size_t size() const
Get number of relations.
unsigned short charge
Cluster charge in ADU.
Class to uniquely identify a any structure of the PXD and SVD.
int getUCellID(double u, double v=0, bool clamp=false) const
Return the corresponding pixel/strip ID of a given u coordinate.
RecoTrack * setValues(const PXDIntercept &pxdIntercept, const std::string recoTracksName="")
Update values from a PXDCluster.
unsigned short getPXDModuleID(const VxdID &sensorID)
Helper function to get DHE id like module id from VxdID.
static const SensorInfoBase & get(Belle2::VxdID id)
Return a reference to the SensorInfo of a given SensorID.
TrackPoint_t intersection
The track-module intersection.
unsigned short uSize
Cluster size in U.
float chargeMPV
Expected charge in ADU.
float posU
Local position in r-phi.
Base class to provide Sensor Information for PXD and SVD.
unsigned short size
Cluster size.
float posV
Local position along z.
float dU
Residual (meas - prediction) in U.
Cluster_t cluster
Cluster associated to the track.
unsigned short vSize
Cluster size in V.
float dV
Residual (meas - prediciton) in V.
This is the Reconstruction Event-Data Model Track.
float tol
The variables below are included here as they can be calculated w.o.
float getADUToEnergy(VxdID id, unsigned int uid, unsigned int vid) const
Get conversion factor from ADU to energy.
Class for type safe access to objects that are referred to in relations.
int getVCellID(double v, bool clamp=false) const
Return the corresponding pixel/strip ID of a given v coordinate.
float y
Global position in y.
static GeoCache & getInstance()
Return a reference to the singleton instance.
Abstract base class for different kinds of events.
double getThickness() const
Return the thickness of the sensor.
RelationVector< FROM > getRelationsFrom(const std::string &name="", const std::string &namedRelation="") const
Get the relations that point from another store array to this object.
RecoTrack * setValues(const PXDIntercept &pxdIntercept, const std::string recoTracksName="", const std::string pxdTrackClustersName="PXDClustersFromTracks")
Update values from a PXDIntercept.
double getDeltaP(const double mom, const double length, const double mass=Const::electronMass)
helper function to estimate the most probable energy loss for a given track length.
bool usedInTrack
True if the cluster is used in tracking.
unsigned short pxdID
Human readable id: layer * 1000 + ladder * 10 + sensor.
void setValues(const PXDCluster &pxdCluster)
Update values from a PXDCluster.
static PXDGainCalibrator & getInstance()
Main (and only) way to access the PXDGainCalibrator.
TVector3 vectorToLocal(const TVector3 &global, bool reco=false) const
Convert a vector from global to local coordinates.
PXDIntercept stores the U,V coordinates and uncertainties of the intersection of a track with an PXD ...
float x
Global position in x.
float z
Global position in z.