#include <MSLayersKeeperX0DetLayer.h>
Definition at line 7 of file MSLayersKeeperX0DetLayer.h.
MSLayersKeeperX0DetLayer::MSLayersKeeperX0DetLayer |
( |
| ) |
|
|
inline |
MSLayersKeeperX0DetLayer::~MSLayersKeeperX0DetLayer |
( |
| ) |
|
|
inlineoverride |
Reimplemented from MSLayersKeeper.
Definition at line 13 of file MSLayersKeeperX0DetLayer.cc.
References GeomDetEnumerators::barrel, PixelRecoLineRZ::cotLine(), slope, combinedConstraintHelpers::sum2(), and MSLayer::DataX0::sumX0D.
19 vector<MSLayer> allLayers;
22 vector<MSLayer>::iterator it;
24 for (it = allLayers.begin(); it != allLayers.end(); it++) {
35 dataX0 =
DataX0(x0, sumX0D, cotTheta);
37 float hrange = (it->range().max() - it->range().min()) / 2.;
38 float cot1 = it->position() / (it->range().mean() - hrange / 2);
39 float cot2 = it->position() / (it->range().mean() + hrange / 2);
44 float slope = (sum2 - sum1) / (1 / cot2 - 1 / cot1);
45 float sumX0D = sum1 + slope * (1 / cotTheta - 1 / cot1);
46 dataX0 =
DataX0(x0, sumX0D, cotTheta);
47 dataX0.setForwardSumX0DSlope(slope);
static const double slope[3]
void update(const MSLayer &layer)
MSLayersAtAngle theLayersData
static void setDataX0(MSLayer &l, const DataX0 &x0Data)
static const DataX0 & getDataX0(const MSLayer &l)
float sumX0D(const PixelRecoPointRZ &pointI, const PixelRecoPointRZ &pointO) const
const MSLayersAtAngle& MSLayersKeeperX0DetLayer::layers |
( |
float |
cotTheta | ) |
const |
|
inlineoverridevirtual |
bool MSLayersKeeperX0DetLayer::isInitialised |
|
private |