#include <Alignment/LaserAlignment/plugins/TkLasBeamFitter.cc>
Public Member Functions | |
virtual void | endRunProduce (edm::Run &run, const edm::EventSetup &setup) override |
virtual void | produce (edm::Event &event, const edm::EventSetup &setup) override |
TkLasBeamFitter (const edm::ParameterSet &config) | |
~TkLasBeamFitter () | |
Public Member Functions inherited from edm::one::EDProducer< edm::EndRunProducer > | |
EDProducer ()=default | |
Public Member Functions inherited from edm::one::EDProducerBase | |
EDProducerBase () | |
ModuleDescription const & | moduleDescription () const |
virtual | ~EDProducerBase () |
Public Member Functions inherited from edm::ProducerBase | |
void | callWhenNewProductsRegistered (std::function< void(BranchDescription const &)> const &func) |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
std::function< void(BranchDescription const &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
Public Member Functions inherited from edm::EDConsumerBase | |
std::vector< ConsumesInfo > | consumesInfo () const |
EDConsumerBase () | |
ProductHolderIndexAndSkipBit | indexFrom (EDGetToken, BranchType, TypeID const &) const |
void | itemsMayGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
void | itemsToGet (BranchType, std::vector< ProductHolderIndexAndSkipBit > &) const |
std::vector < ProductHolderIndexAndSkipBit > const & | itemsToGetFromEvent () const |
void | labelsForToken (EDGetToken iToken, Labels &oLabels) const |
void | modulesDependentUpon (std::string const &iProcessName, std::string const &iModuleLabel, bool iPrint, std::vector< char const * > &oModuleLabels) const |
void | modulesWhoseProductsAreConsumed (std::vector< ModuleDescription const * > &modules, ProductRegistry const &preg, std::map< std::string, ModuleDescription const * > const &labelsToDesc, std::string const &processName) const |
bool | registeredToConsume (ProductHolderIndex, bool, BranchType) const |
bool | registeredToConsumeMany (TypeID const &, BranchType) const |
void | updateLookup (BranchType iBranchType, ProductHolderIndexHelper const &) |
virtual | ~EDConsumerBase () |
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 | |
bool | fitBeamSplitters_ |
edm::Service< TFileService > | fs |
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 |
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 = 0 |
static unsigned int | gHitsAtTecMinus = 0 |
static vector< double > | gHitZprime |
static bool | gIsInnerBarrel = 0 |
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 | |
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::EDConsumerBase | |
template<typename ProductType , BranchType B = InEvent> | |
EDGetTokenT< ProductType > | consumes (edm::InputTag const &tag) |
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 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) |
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 65 of file TkLasBeamFitter.cc.
|
explicit |
Definition at line 181 of file TkLasBeamFitter.cc.
TkLasBeamFitter::~TkLasBeamFitter | ( | ) |
Definition at line 200 of file TkLasBeamFitter.cc.
|
staticprivate |
Definition at line 618 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBeamZ0, gBSparam, gFitBeamSplitters, gIsInnerBarrel, gTIBparam, gTOBparam, and z.
Referenced by fitter().
|
private |
Definition at line 841 of file TkLasBeamFitter.cc.
References SurfaceSideDefinition::beforeSurface, fieldHandle, gBeamSplitterZprime, gBeamZ0, gHitZprime, TkLasBeam::isTecInternal(), HLT_25ns10e33_v2_cff::magneticField, and edm::ESHandle< class >::product().
Referenced by getLasBeams().
|
overridevirtual |
Definition at line 222 of file TkLasBeamFitter.cc.
References EcalCondDBWriter_cfi::beam, gather_cfg::cout, fieldHandle, fitBeamSplitters_, fs, gBSparam, geometry, edm::EventSetup::get(), edm::Run::getByLabel(), 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, TFileService::make(), and edm::Run::put().
|
private |
Definition at line 879 of file TkLasBeamFitter.cc.
References fitBeamSplitters_, gBarrelModuleOffset, gBeamSplitterZprime, gBeamZ0, gHitsAtTecMinus, gHitZprime, TkLasBeam::isAlignmentTube(), TkLasBeam::isTecInternal(), hltrates_dqm_sourceclient-live_cfg::offset, TkFittedLasBeam::setParameters(), and slope.
Referenced by getLasBeams().
|
private |
Definition at line 663 of file TkLasBeamFitter.cc.
References atFunction(), cuy::col, fitBeamSplitters_, gBSparam, gHitZprime, fitWZ::gMinuit, 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 330 of file TkLasBeamFitter.cc.
References funct::abs(), TkLasBeam::begin(), buildTrajectory(), beam_dqm_sourceclient-live_cfg::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 560 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 808 of file TkLasBeamFitter.cc.
References gBeamR, gHitsAtTecMinus, gHitZprime, TkLasBeam::isTecInternal(), perp(), and z.
Referenced by getLasBeams().
|
overridevirtual |
Implements edm::one::EDProducerBase.
Definition at line 215 of file TkLasBeamFitter.cc.
Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().
|
staticprivate |
Definition at line 600 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBSparam, gFitBeamSplitters, and z.
Referenced by fitter().
|
staticprivate |
Definition at line 581 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBSparam, gFitBeamSplitters, and z.
Referenced by fitter().
|
private |
Definition at line 737 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 122 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), fitBeam(), fitter(), and getLasBeams().
|
private |
Definition at line 125 of file TkLasBeamFitter.cc.
Referenced by endRunProduce().
|
staticprivate |
Definition at line 130 of file TkLasBeamFitter.cc.
Referenced by fitBeam(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 129 of file TkLasBeamFitter.cc.
Referenced by getLasBeams().
|
staticprivate |
Definition at line 133 of file TkLasBeamFitter.cc.
Referenced by atFunction(), getLasBeams(), globalTrackPoint(), tecMinusFunction(), tecPlusFunction(), and trackPhi().
|
staticprivate |
Definition at line 135 of file TkLasBeamFitter.cc.
Referenced by atFunction(), buildTrajectory(), fitBeam(), getLasBeams(), tecMinusFunction(), tecPlusFunction(), and trackPhi().
|
staticprivate |
Definition at line 134 of file TkLasBeamFitter.cc.
Referenced by atFunction(), buildTrajectory(), fitBeam(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 137 of file TkLasBeamFitter.cc.
Referenced by atFunction(), endRunProduce(), fitter(), tecMinusFunction(), and tecPlusFunction().
|
staticprivate |
Definition at line 138 of file TkLasBeamFitter.cc.
Referenced by atFunction(), endRunProduce(), tecMinusFunction(), and tecPlusFunction().
|
staticprivate |
Definition at line 136 of file TkLasBeamFitter.cc.
Referenced by fitBeam(), getLasBeams(), getLasHits(), globalTrackPoint(), and trackPhi().
|
staticprivate |
Definition at line 128 of file TkLasBeamFitter.cc.
Referenced by buildTrajectory(), fitBeam(), fitter(), getLasBeams(), globalTrackPoint(), and trackPhi().
|
staticprivate |
Definition at line 139 of file TkLasBeamFitter.cc.
Referenced by atFunction(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 131 of file TkLasBeamFitter.cc.
Referenced by atFunction(), and trackPhi().
|
staticprivate |
Definition at line 132 of file TkLasBeamFitter.cc.
Referenced by atFunction(), and trackPhi().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 142 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 145 of file TkLasBeamFitter.cc.
Referenced by endRunProduce(), and getLasBeams().
|
private |
Definition at line 123 of file TkLasBeamFitter.cc.
Referenced by getLasBeams().
|
private |
Definition at line 121 of file TkLasBeamFitter.cc.