CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
UnbinnedFitDeDxEstimator Class Reference

#include <UnbinnedFitDeDxEstimator.h>

Inheritance diagram for UnbinnedFitDeDxEstimator:
BaseDeDxEstimator

Public Member Functions

virtual std::pair< float, float > dedx (const reco::DeDxHitCollection &Hits)
 
 UnbinnedFitDeDxEstimator (const edm::ParameterSet &iConfig)
 
virtual ~UnbinnedFitDeDxEstimator ()
 
- Public Member Functions inherited from BaseDeDxEstimator
virtual void beginRun (edm::Run const &run, const edm::EventSetup &iSetup)
 
virtual ~BaseDeDxEstimator ()
 

Public Attributes

double data [50]
 
TF1 * f1
 
UnbinnedLikelihoodFit fitter
 

Detailed Description

Definition at line 13 of file UnbinnedFitDeDxEstimator.h.

Constructor & Destructor Documentation

UnbinnedFitDeDxEstimator::UnbinnedFitDeDxEstimator ( const edm::ParameterSet iConfig)
inline

Definition at line 17 of file UnbinnedFitDeDxEstimator.h.

References f1, fitter, and UnbinnedLikelihoodFit::setFunction().

17  {
18  fitter.setFunction((f1 = new TF1("myLandau","TMath::Landau(x,[0],[1],1)",0,255)));
19  }
virtual UnbinnedFitDeDxEstimator::~UnbinnedFitDeDxEstimator ( )
inlinevirtual

Definition at line 21 of file UnbinnedFitDeDxEstimator.h.

References f1.

21  {
22  // clean up everything
23  delete f1;
24  }

Member Function Documentation

virtual std::pair<float,float> UnbinnedFitDeDxEstimator::dedx ( const reco::DeDxHitCollection Hits)
inlinevirtual

Implements BaseDeDxEstimator.

Definition at line 26 of file UnbinnedFitDeDxEstimator.h.

References data, f1, UnbinnedLikelihoodFit::fit(), fitter, and mps_fire::i.

26  {
27  // if there is no hit, returns invalid.
28  if(Hits.size()==0) return std::make_pair(-1,-1);
29  // sets the initial parameters
30  f1->SetParameters(3.0 , 0.3);
31  // fills a temporary array and performs the fit
32  uint32_t i=0;
33  for (reco::DeDxHitCollection::const_iterator hit = Hits.begin(); hit!=Hits.end(); ++hit,++i) {
34  data[i] = hit->charge();
35  }
36  // fit !
37  fitter.fit(Hits.size(),data);
38  // returns the mpv and its error
39  return std::make_pair(f1->GetParameter(0),f1->GetParError(0));
40  }
int32_t fit(int32_t verbosity=-1)

Member Data Documentation

double UnbinnedFitDeDxEstimator::data[50]
TF1* UnbinnedFitDeDxEstimator::f1
UnbinnedLikelihoodFit UnbinnedFitDeDxEstimator::fitter

Definition at line 45 of file UnbinnedFitDeDxEstimator.h.

Referenced by dedx(), and UnbinnedFitDeDxEstimator().