#include <Alignment/LaserAlignment/plugins/TkLasBeamFitter.cc>
Public Member Functions | |
virtual void | endRun (edm::Run &run, const edm::EventSetup &setup) |
virtual void | produce (edm::Event &event, const edm::EventSetup &setup) |
TkLasBeamFitter (const edm::ParameterSet &config) | |
~TkLasBeamFitter () | |
Public Member Functions inherited from edm::EDProducer | |
EDProducer () | |
virtual | ~EDProducer () |
Public Member Functions inherited from edm::ProducerBase | |
ProducerBase () | |
void | registerProducts (ProducerBase *, ProductRegistry *, ModuleDescription const &) |
boost::function< void(const BranchDescription &)> | registrationCallback () const |
used by the fwk to register list of products More... | |
virtual | ~ProducerBase () |
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::EDProducer | |
typedef EDProducer | ModuleType |
typedef WorkerT< EDProducer > | WorkerType |
Public Types inherited from edm::ProducerBase | |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Static Public Member Functions inherited from edm::EDProducer | |
static const std::string & | baseType () |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &descriptions) |
Protected Member Functions inherited from edm::EDProducer | |
CurrentProcessingContext const * | currentContext () const |
Protected Member Functions inherited from edm::ProducerBase | |
template<class TProducer , class TMethod > | |
void | callWhenNewProductsRegistered (TProducer *iProd, TMethod iMethod) |
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 67 of file TkLasBeamFitter.cc.
|
explicit |
Definition at line 183 of file TkLasBeamFitter.cc.
TkLasBeamFitter::~TkLasBeamFitter | ( | ) |
Definition at line 202 of file TkLasBeamFitter.cc.
|
staticprivate |
Definition at line 620 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBeamZ0, gBSparam, gFitBeamSplitters, gIsInnerBarrel, gTIBparam, gTOBparam, and detailsBasic3DVector::z.
Referenced by fitter().
|
private |
Definition at line 843 of file TkLasBeamFitter.cc.
References SurfaceSideDefinition::beforeSurface, fieldHandle, gBeamSplitterZprime, gBeamZ0, gHitZprime, TkLasBeam::isTecInternal(), and edm::ESHandle< class >::product().
Referenced by getLasBeams().
|
virtual |
Reimplemented from edm::EDProducer.
Definition at line 224 of file TkLasBeamFitter.cc.
References 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, TFileDirectory::make(), and edm::Run::put().
|
private |
Definition at line 881 of file TkLasBeamFitter.cc.
References fitBeamSplitters_, gBarrelModuleOffset, gBeamSplitterZprime, gBeamZ0, gHitsAtTecMinus, gHitZprime, TkLasBeam::isAlignmentTube(), TkLasBeam::isTecInternal(), evf::evtn::offset(), TkFittedLasBeam::setParameters(), and slope.
Referenced by getLasBeams().
|
private |
Definition at line 665 of file TkLasBeamFitter.cc.
References asciidump::at, atFunction(), 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 332 of file TkLasBeamFitter.cc.
References abs, TkLasBeam::begin(), buildTrajectory(), 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_, evf::evtn::offset(), perp(), phi, slope, trackPhi(), PV3DBase< T, PVType, FrameType >::x(), and detailsBasic3DVector::z.
Referenced by endRun().
|
private |
Definition at line 562 of file TkLasBeamFitter.cc.
References abs, geometry, SiStripLaserRecHit2D::getDetId(), gHitsAtTecMinus, TkLasBeam::isAlignmentTube(), SiStripLaserRecHit2D::localPosition(), and PV3DBase< T, PVType, FrameType >::z().
Referenced by getLasBeams().
|
private |
Definition at line 810 of file TkLasBeamFitter.cc.
References gBeamR, gHitsAtTecMinus, gHitZprime, TkLasBeam::isTecInternal(), perp(), and detailsBasic3DVector::z.
Referenced by getLasBeams().
|
virtual |
Implements edm::EDProducer.
Definition at line 217 of file TkLasBeamFitter.cc.
Referenced by JSONExport.JsonExport::export(), HTMLExport.HTMLExport::export(), and HTMLExport.HTMLExportStatic::export().
|
staticprivate |
Definition at line 602 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBSparam, gFitBeamSplitters, and detailsBasic3DVector::z.
Referenced by fitter().
|
staticprivate |
Definition at line 583 of file TkLasBeamFitter.cc.
References gBeamR, gBeamSplitterZprime, gBSparam, gFitBeamSplitters, and detailsBasic3DVector::z.
Referenced by fitter().
|
private |
Definition at line 739 of file TkLasBeamFitter.cc.
References abs, gBarrelModuleOffset, gBeamR, gBeamSplitterZprime, gBeamZ0, gHitsAtTecMinus, gHitZprime, gIsInnerBarrel, gTIBparam, gTOBparam, and TkLasBeam::isTecInternal().
Referenced by getLasBeams().
|
private |
Definition at line 124 of file TkLasBeamFitter.cc.
Referenced by endRun(), fitBeam(), fitter(), and getLasBeams().
|
private |
Definition at line 127 of file TkLasBeamFitter.cc.
Referenced by endRun().
|
staticprivate |
Definition at line 132 of file TkLasBeamFitter.cc.
Referenced by fitBeam(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 131 of file TkLasBeamFitter.cc.
Referenced by getLasBeams().
|
staticprivate |
Definition at line 135 of file TkLasBeamFitter.cc.
Referenced by atFunction(), getLasBeams(), globalTrackPoint(), tecMinusFunction(), tecPlusFunction(), and trackPhi().
|
staticprivate |
Definition at line 137 of file TkLasBeamFitter.cc.
Referenced by atFunction(), buildTrajectory(), fitBeam(), getLasBeams(), tecMinusFunction(), tecPlusFunction(), and trackPhi().
|
staticprivate |
Definition at line 136 of file TkLasBeamFitter.cc.
Referenced by atFunction(), buildTrajectory(), fitBeam(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 139 of file TkLasBeamFitter.cc.
Referenced by atFunction(), endRun(), fitter(), tecMinusFunction(), and tecPlusFunction().
|
staticprivate |
Definition at line 140 of file TkLasBeamFitter.cc.
Referenced by atFunction(), endRun(), tecMinusFunction(), and tecPlusFunction().
|
staticprivate |
Definition at line 138 of file TkLasBeamFitter.cc.
Referenced by fitBeam(), getLasBeams(), getLasHits(), globalTrackPoint(), and trackPhi().
|
staticprivate |
Definition at line 130 of file TkLasBeamFitter.cc.
Referenced by buildTrajectory(), fitBeam(), fitter(), getLasBeams(), globalTrackPoint(), and trackPhi().
|
staticprivate |
Definition at line 141 of file TkLasBeamFitter.cc.
Referenced by atFunction(), getLasBeams(), and trackPhi().
|
staticprivate |
Definition at line 133 of file TkLasBeamFitter.cc.
Referenced by atFunction(), and trackPhi().
|
staticprivate |
Definition at line 134 of file TkLasBeamFitter.cc.
Referenced by atFunction(), and trackPhi().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 144 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 147 of file TkLasBeamFitter.cc.
Referenced by endRun(), and getLasBeams().
|
private |
Definition at line 125 of file TkLasBeamFitter.cc.
Referenced by getLasBeams().
|
private |
Definition at line 123 of file TkLasBeamFitter.cc.