#include <Alignment/LaserAlignment/plugins/TkLasBeamFitter.cc>
Private Member Functions | |
void | buildTrajectory (TkFittedLasBeam &beam, unsigned int &hit, vector< const GeomDetUnit * > &gd, std::vector< GlobalPoint > &globPtrack, vector< TrajectoryStateOnSurface > &tsosLas, GlobalPoint &globPref) |
bool | fitBeam (TkFittedLasBeam &beam, AlgebraicSymMatrix &covMatrix, unsigned int &hitsAtTecPlus, unsigned int &nFitParams, double &offset, double &slope, vector< GlobalPoint > &globPtrack, double &bsAngleParam, double &chi2) |
void | fitter (TkFittedLasBeam &beam, AlgebraicSymMatrix &covMatrix, unsigned int &hitsAtTecPlus, unsigned int &nFitParams, std::vector< double > &hitPhi, std::vector< double > &hitPhiError, std::vector< double > &hitZprimeError, double &zMin, double &zMax, double &bsAngleParam, double &offset, double &offsetError, double &slope, double &slopeError, double &phiAtMinusParam, double &phiAtPlusParam, double &atThetaSplitParam) |
void | getLasBeams (TkFittedLasBeam &beam, vector< TrajectoryStateOnSurface > &tsosLas) |
void | getLasHits (TkFittedLasBeam &beam, const SiStripLaserRecHit2D &hit, vector< const GeomDetUnit * > &gd, vector< GlobalPoint > &globHit, unsigned int &hitsAtTecPlus) |
void | globalTrackPoint (TkFittedLasBeam &beam, unsigned int &hit, unsigned int &hitsAtTecPlus, double &trackPhi, double &trackPhiRef, std::vector< GlobalPoint > &globHit, std::vector< GlobalPoint > &globPtrack, GlobalPoint &globPref, std::vector< double > &hitPhiError) |
void | trackPhi (TkFittedLasBeam &beam, unsigned int &hit, double &trackPhi, double &trackPhiRef, double &offset, double &slope, double &bsAngleParam, double &phiAtMinusParam, double &phiAtPlusParam, double &atThetaSplitParam, std::vector< GlobalPoint > &globHit) |
Static Private Member Functions | |
static double | atFunction (double *x, double *par) |
static double | tecMinusFunction (double *x, double *par) |
static double | tecPlusFunction (double *x, double *par) |
Private Attributes | |
edm::ESHandle< MagneticField > | fieldHandle |
bool | fitBeamSplitters_ |
edm::Service< TFileService > | fs |
edm::ESHandle< TrackerGeometry > | geometry |
const edm::ESGetToken < TrackerGeometry, TrackerDigiGeometryRecord > | geomToken_ |
TH1F * | h_bsAngle |
TH2F * | h_bsAngleVsBeam |
TH1F * | h_chi2 |
TH1F * | h_chi2ndof |
TH1F * | h_hitX |
TH1F * | h_hitXAt |
TH1F * | h_hitXTecMinus |
TH1F * | h_hitXTecPlus |
TH2F * | h_hitXvsZAt |
TH2F * | h_hitXvsZTecMinus |
TH2F * | h_hitXvsZTecPlus |
TH1F * | h_pull |
TH1F * | h_res |
TH1F * | h_resAt |
TH1F * | h_resTecMinus |
TH1F * | h_resTecPlus |
TH2F * | h_resVsHitAt |
TH2F * | h_resVsHitTecMinus |
TH2F * | h_resVsHitTecPlus |
TH2F * | h_resVsZAt |
TH2F * | h_resVsZTecMinus |
TH2F * | h_resVsZTecPlus |
edm::Handle< TkLasBeamCollection > | laserBeams |
const edm::ESGetToken < MagneticField, IdealMagneticFieldRecord > | magFieldToken_ |
unsigned int | nAtParameters_ |
const edm::InputTag | src_ |
Static Private Attributes | |
static vector< double > | gBarrelModuleOffset |
static vector< double > | gBarrelModuleRadius |
static double | gBeamR = 0.0 |
static double | gBeamSplitterZprime = 0.0 |
static double | gBeamZ0 = 0.0 |
static double | gBSparam = 0.0 |
static bool | gFitBeamSplitters = false |
static unsigned int | gHitsAtTecMinus = 0 |
static vector< double > | gHitZprime |
static bool | gIsInnerBarrel = false |
static float | gTIBparam = 0.097614 |
static float | gTOBparam = 0.034949 |
Additional Inherited Members | |
Public Types inherited from edm::one::EDProducerBase | |
typedef EDProducerBase | ModuleType |
Public Types inherited from edm::ProducerBase | |
using | ModuleToResolverIndicies = std::unordered_multimap< std::string, std::tuple< edm::TypeID const *, const char *, edm::ProductResolverIndex >> |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Types inherited from edm::EDConsumerBase | |
typedef ProductLabels | Labels |
Static Public Member Functions inherited from edm::one::EDProducerBase | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::ProducerBase | |
ProducesCollector | producesCollector () |
Protected Member Functions inherited from edm::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
template<BranchType B = InEvent> | |
EDConsumerBaseAdaptor< B > | consumes (edm::InputTag tag) noexcept |
EDGetToken | consumes (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | consumes (TypeToGet const &id, edm::InputTag const &tag) |
ConsumesCollector | consumesCollector () |
Use a ConsumesCollector to gather consumes information from helper functions. More... | |
template<typename ProductType , BranchType B = InEvent> | |
void | consumesMany () |
void | consumesMany (const TypeToGet &id) |
template<BranchType B> | |
void | consumesMany (const TypeToGet &id) |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes () |
template<typename ESProduct , typename ESRecord , Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag const &tag) |
template<Transition Tr = Transition::Event> | |
constexpr auto | esConsumes () noexcept |
template<Transition Tr = Transition::Event> | |
auto | esConsumes (ESInputTag tag) noexcept |
template<Transition Tr = Transition::Event> | |
ESGetTokenGeneric | esConsumes (eventsetup::EventSetupRecordKey const &iRecord, eventsetup::DataKey const &iKey) |
Used with EventSetupRecord::doGet. More... | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | mayConsume (edm::InputTag const &tag) |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
template<BranchType B> | |
EDGetToken | mayConsume (const TypeToGet &id, edm::InputTag const &tag) |
void | resetItemsToGetFrom (BranchType iType) |
Original Authors: Gero Flucke/Kolja Kaschube Created: Wed May 6 08:43:02 CEST 2009
Description: Fitting LAS beams with track model and providing TrajectoryStateOnSurface for hits.
Implementation:
Definition at line 62 of file TkLasBeamFitter.cc.
|
explicit |
Definition at line 210 of file TkLasBeamFitter.cc.
|
override |
Definition at line 246 of file TkLasBeamFitter.cc.
|
staticprivate |
Definition at line 693 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBeamZ0, gBSparam, gFitBeamSplitters, gIsInnerBarrel, gTIBparam, gTOBparam, and z.
Referenced by fitter().
|
private |
Definition at line 915 of file TkLasBeamFitter.cc.
References SurfaceSideDefinition::beforeSurface, fieldHandle, gBeamSplitterZprime, gBeamZ0, gHitZprime, TkLasBeam::isTecInternal(), HLT_FULL_cff::magneticField, and edm::ESHandle< class >::product().
Referenced by getLasBeams().
|
override |
Definition at line 263 of file TkLasBeamFitter.cc.
References EcalCondDBWriter_cfi::beam, gather_cfg::cout, fieldHandle, fitBeamSplitters_, fs, gBSparam, geometry, geomToken_, edm::Run::getByLabel(), edm::EventSetup::getHandle(), getLasBeams(), gFitBeamSplitters, h_bsAngle, h_bsAngleVsBeam, h_chi2, h_chi2ndof, h_hitX, h_hitXAt, h_hitXTecMinus, h_hitXTecPlus, h_hitXvsZAt, h_hitXvsZTecMinus, h_hitXvsZTecPlus, h_pull, h_res, h_resAt, h_resTecMinus, h_resTecPlus, h_resVsHitAt, h_resVsHitTecMinus, h_resVsHitTecPlus, h_resVsZAt, h_resVsZTecMinus, h_resVsZTecPlus, laserBeams, magFieldToken_, TFileService::make(), eostools::move(), and edm::Run::put().
|
private |
Definition at line 953 of file TkLasBeamFitter.cc.
References fitBeamSplitters_, gBarrelModuleOffset, gBeamSplitterZprime, gBeamZ0, gHitsAtTecMinus, gHitZprime, TkLasBeam::isAlignmentTube(), TkLasBeam::isTecInternal(), hltrates_dqm_sourceclient-live_cfg::offset, submitPVValidationJobs::params, TkFittedLasBeam::setParameters(), and slope.
Referenced by getLasBeams().
|
private |
Definition at line 735 of file TkLasBeamFitter.cc.
References atFunction(), cuy::col, fitBeamSplitters_, gBSparam, gHitZprime, TkLasBeam::isAlignmentTube(), TkLasBeam::isTecInternal(), tecMinusFunction(), and tecPlusFunction().
Referenced by getLasBeams().
|
private |
Fit 'beam' using info from its base class TkLasBeam and set its parameters. Also fill 'tsoses' with TSOS for each LAS hit.
Definition at line 405 of file TkLasBeamFitter.cc.
References funct::abs(), TkLasBeam::begin(), buildTrajectory(), HLT_FULL_cff::chi2, gather_cfg::cout, TkLasBeam::end(), fitBeam(), fitBeamSplitters_, fitter(), gBarrelModuleOffset, gBarrelModuleRadius, gBeamR, gBeamSplitterZprime, gBeamZ0, TkLasBeam::getBeamId(), getLasHits(), gHitsAtTecMinus, gHitZprime, gIsInnerBarrel, globalTrackPoint(), h_bsAngle, h_bsAngleVsBeam, h_chi2, h_chi2ndof, h_hitX, h_hitXAt, h_hitXTecMinus, h_hitXTecPlus, h_hitXvsZAt, h_hitXvsZTecMinus, h_hitXvsZTecPlus, h_pull, h_res, h_resAt, h_resTecMinus, h_resTecPlus, h_resVsHitAt, h_resVsHitTecMinus, h_resVsHitTecPlus, h_resVsZAt, h_resVsZTecMinus, h_resVsZTecPlus, TkLasBeam::isAlignmentTube(), TkLasBeam::isRing6(), TkLasBeam::isTecInternal(), SiStripLaserRecHit2D::localPosition(), nAtParameters_, hltrates_dqm_sourceclient-live_cfg::offset, perp(), phi, slope, trackPhi(), and z.
Referenced by endRunProduce().
|
private |
Definition at line 640 of file TkLasBeamFitter.cc.
References funct::abs(), geometry, SiStripLaserRecHit2D::getDetId(), gHitsAtTecMinus, TkLasBeam::isAlignmentTube(), SiStripLaserRecHit2D::localPosition(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by getLasBeams().
|
private |
Definition at line 880 of file TkLasBeamFitter.cc.
References gBeamR, gHitsAtTecMinus, gHitZprime, TkLasBeam::isTecInternal(), perp(), and z.
Referenced by getLasBeams().
|
overridevirtual |
Implements edm::one::EDProducerBase.
Definition at line 257 of file TkLasBeamFitter.cc.
|
staticprivate |
Definition at line 678 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBSparam, gFitBeamSplitters, and z.
Referenced by fitter().
|
staticprivate |
Definition at line 663 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBSparam, gFitBeamSplitters, and z.
Referenced by fitter().
|
private |
Definition at line 812 of file TkLasBeamFitter.cc.
References funct::abs(), gBarrelModuleOffset, gBeamR, gBeamSplitterZprime, gBeamZ0, gHitsAtTecMinus, gHitZprime, gIsInnerBarrel, gTIBparam, gTOBparam, and TkLasBeam::isTecInternal().
Referenced by getLasBeams().
|
private |
Definition at line 155 of file TkLasBeamFitter.cc.
Referenced by buildTrajectory(), and endRunProduce().
|
private |
Definition at line 159 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), fitBeam(), fitter(), and getLasBeams().
|
private |
Definition at line 162 of file TkLasBeamFitter.cc.
Referenced by endRunProduce().
|
staticprivate |
Definition at line 167 of file TkLasBeamFitter.cc.
Referenced by fitBeam(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 166 of file TkLasBeamFitter.cc.
Referenced by getLasBeams().
|
staticprivate |
Definition at line 170 of file TkLasBeamFitter.cc.
Referenced by atFunction(), getLasBeams(), globalTrackPoint(), tecMinusFunction(), tecPlusFunction(), and trackPhi().
|
staticprivate |
Definition at line 172 of file TkLasBeamFitter.cc.
Referenced by atFunction(), buildTrajectory(), fitBeam(), getLasBeams(), tecMinusFunction(), tecPlusFunction(), and trackPhi().
|
staticprivate |
Definition at line 171 of file TkLasBeamFitter.cc.
Referenced by atFunction(), buildTrajectory(), fitBeam(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 174 of file TkLasBeamFitter.cc.
Referenced by atFunction(), endRunProduce(), fitter(), tecMinusFunction(), and tecPlusFunction().
|
private |
Definition at line 156 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasHits().
|
private |
Definition at line 151 of file TkLasBeamFitter.cc.
Referenced by endRunProduce().
|
staticprivate |
Definition at line 175 of file TkLasBeamFitter.cc.
Referenced by atFunction(), endRunProduce(), tecMinusFunction(), and tecPlusFunction().
|
staticprivate |
Definition at line 173 of file TkLasBeamFitter.cc.
Referenced by fitBeam(), getLasBeams(), getLasHits(), globalTrackPoint(), and trackPhi().
|
staticprivate |
Definition at line 165 of file TkLasBeamFitter.cc.
Referenced by buildTrajectory(), fitBeam(), fitter(), getLasBeams(), globalTrackPoint(), and trackPhi().
|
staticprivate |
Definition at line 176 of file TkLasBeamFitter.cc.
Referenced by atFunction(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 168 of file TkLasBeamFitter.cc.
Referenced by atFunction(), and trackPhi().
|
staticprivate |
Definition at line 169 of file TkLasBeamFitter.cc.
Referenced by atFunction(), and trackPhi().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 179 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 181 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 154 of file TkLasBeamFitter.cc.
Referenced by endRunProduce().
|
private |
Definition at line 150 of file TkLasBeamFitter.cc.
Referenced by endRunProduce().
|
private |
Definition at line 160 of file TkLasBeamFitter.cc.
Referenced by getLasBeams().
|
private |
Definition at line 158 of file TkLasBeamFitter.cc.