CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes
tauImpactParameter::LagrangeMultipliersFitter Class Referenceabstract

#include <LagrangeMultipliersFitter.h>

Public Types

enum  ConvergeProc { ConstraintMin =0, Chi2Min, Chi2AndConstaintMin }
 
enum  Parameters {
  par_vx =0, par_vy, par_vz, par_px,
  par_py, par_pz, par_m, npardim
}
 
enum  Position { pos_x =0, pos_y, pos_z, nposdim }
 

Public Member Functions

virtual double chiSquare ()
 
virtual double cSum ()
 
virtual bool fit ()
 
virtual LorentzVectorParticle getMother ()=0
 
virtual std::vector
< LorentzVectorParticle
getRefitDaughters ()=0
 
virtual bool isConfigured ()
 
virtual bool isConverged ()
 
 LagrangeMultipliersFitter ()
 
virtual double nConstraints ()=0
 
virtual int nDaughters ()=0
 
virtual double ndf ()=0
 
virtual double nIter ()
 
virtual void setMaxDelta (double MaxDelta)
 
virtual void setNIterMax (int Nitermax)
 
virtual void setWeight (double weight)
 
virtual ~LagrangeMultipliersFitter ()
 

Protected Member Functions

virtual TVectorD value (const TVectorD &v)=0
 

Protected Attributes

TMatrixTSym< double > cov_
 
TMatrixTSym< double > cov_0_
 
bool isConfigured_
 
bool isFit_
 
TVectorD par_
 
TVectorD par_0_
 

Private Member Functions

bool applyLagrangianConstraints ()
 
double chiSquare (const TVectorT< double > &delta_alpha, const TVectorT< double > &lambda, const TMatrixT< double > &D, const TVectorT< double > &d)
 
double chiSquareUsingInitalPoint (const TVectorT< double > &alpha, const TVectorT< double > &lambda)
 
TMatrixT< double > computeVariance ()
 
double constraintDelta (const TVectorT< double > &par)
 
TMatrixT< double > derivative ()
 

Private Attributes

double chi2_
 
double chi2prev_
 
TMatrixT< double > D_
 
double delta_
 
double epsilon_
 
double maxDelta_
 
double niter_
 
double nitermax_
 
double ScaleFactor_
 
TMatrixTSym< double > V_alpha0_inv_
 
TMatrixT< double > V_corr_prev_
 
TMatrixTSym< double > V_D_
 
double weight_
 

Detailed Description

Definition at line 18 of file LagrangeMultipliersFitter.h.

Member Enumeration Documentation

Constructor & Destructor Documentation

LagrangeMultipliersFitter::LagrangeMultipliersFitter ( )

Definition at line 13 of file LagrangeMultipliersFitter.cc.

virtual tauImpactParameter::LagrangeMultipliersFitter::~LagrangeMultipliersFitter ( )
inlinevirtual

Definition at line 25 of file LagrangeMultipliersFitter.h.

25 {};

Member Function Documentation

bool LagrangeMultipliersFitter::applyLagrangianConstraints ( )
private

Definition at line 47 of file LagrangeMultipliersFitter.cc.

virtual double tauImpactParameter::LagrangeMultipliersFitter::chiSquare ( )
inlinevirtual

Definition at line 34 of file LagrangeMultipliersFitter.h.

References chi2_.

double LagrangeMultipliersFitter::chiSquare ( const TVectorT< double > &  delta_alpha,
const TVectorT< double > &  lambda,
const TMatrixT< double > &  D,
const TVectorT< double > &  d 
)
private

Definition at line 140 of file LagrangeMultipliersFitter.cc.

double LagrangeMultipliersFitter::chiSquareUsingInitalPoint ( const TVectorT< double > &  alpha,
const TVectorT< double > &  lambda 
)
private

Definition at line 145 of file LagrangeMultipliersFitter.cc.

TMatrixT< double > LagrangeMultipliersFitter::computeVariance ( )
private

Definition at line 181 of file LagrangeMultipliersFitter.cc.

double LagrangeMultipliersFitter::constraintDelta ( const TVectorT< double > &  par)
private

Definition at line 172 of file LagrangeMultipliersFitter.cc.

virtual double tauImpactParameter::LagrangeMultipliersFitter::cSum ( )
inlinevirtual

Definition at line 35 of file LagrangeMultipliersFitter.h.

References delta_.

TMatrixD LagrangeMultipliersFitter::derivative ( )
private

Definition at line 114 of file LagrangeMultipliersFitter.cc.

bool LagrangeMultipliersFitter::fit ( void  )
virtual

Definition at line 25 of file LagrangeMultipliersFitter.cc.

virtual LorentzVectorParticle tauImpactParameter::LagrangeMultipliersFitter::getMother ( )
pure virtual
virtual std::vector<LorentzVectorParticle> tauImpactParameter::LagrangeMultipliersFitter::getRefitDaughters ( )
pure virtual
virtual bool tauImpactParameter::LagrangeMultipliersFitter::isConfigured ( )
inlinevirtual
bool LagrangeMultipliersFitter::isConverged ( )
virtual

Definition at line 133 of file LagrangeMultipliersFitter.cc.

virtual double tauImpactParameter::LagrangeMultipliersFitter::nConstraints ( )
pure virtual
virtual int tauImpactParameter::LagrangeMultipliersFitter::nDaughters ( )
pure virtual
virtual double tauImpactParameter::LagrangeMultipliersFitter::ndf ( )
pure virtual
virtual double tauImpactParameter::LagrangeMultipliersFitter::nIter ( )
inlinevirtual

Definition at line 36 of file LagrangeMultipliersFitter.h.

References niter_.

virtual void tauImpactParameter::LagrangeMultipliersFitter::setMaxDelta ( double  MaxDelta)
inlinevirtual

Definition at line 28 of file LagrangeMultipliersFitter.h.

References maxDelta_.

virtual void tauImpactParameter::LagrangeMultipliersFitter::setNIterMax ( int  Nitermax)
inlinevirtual

Definition at line 29 of file LagrangeMultipliersFitter.h.

References nitermax_.

virtual void tauImpactParameter::LagrangeMultipliersFitter::setWeight ( double  weight)
inlinevirtual
virtual TVectorD tauImpactParameter::LagrangeMultipliersFitter::value ( const TVectorD &  v)
protectedpure virtual

Member Data Documentation

double tauImpactParameter::LagrangeMultipliersFitter::chi2_
private

Definition at line 66 of file LagrangeMultipliersFitter.h.

Referenced by chiSquare().

double tauImpactParameter::LagrangeMultipliersFitter::chi2prev_
private

Definition at line 66 of file LagrangeMultipliersFitter.h.

TMatrixTSym<double> tauImpactParameter::LagrangeMultipliersFitter::cov_
protected

Definition at line 50 of file LagrangeMultipliersFitter.h.

TMatrixTSym<double> tauImpactParameter::LagrangeMultipliersFitter::cov_0_
protected

Definition at line 49 of file LagrangeMultipliersFitter.h.

TMatrixT<double> tauImpactParameter::LagrangeMultipliersFitter::D_
private

Definition at line 70 of file LagrangeMultipliersFitter.h.

double tauImpactParameter::LagrangeMultipliersFitter::delta_
private

Definition at line 66 of file LagrangeMultipliersFitter.h.

Referenced by cSum().

double tauImpactParameter::LagrangeMultipliersFitter::epsilon_
private

Definition at line 63 of file LagrangeMultipliersFitter.h.

bool tauImpactParameter::LagrangeMultipliersFitter::isConfigured_
protected

Definition at line 51 of file LagrangeMultipliersFitter.h.

Referenced by isConfigured().

bool tauImpactParameter::LagrangeMultipliersFitter::isFit_
protected

Definition at line 52 of file LagrangeMultipliersFitter.h.

double tauImpactParameter::LagrangeMultipliersFitter::maxDelta_
private

Definition at line 63 of file LagrangeMultipliersFitter.h.

Referenced by setMaxDelta().

double tauImpactParameter::LagrangeMultipliersFitter::niter_
private

Definition at line 66 of file LagrangeMultipliersFitter.h.

Referenced by nIter().

double tauImpactParameter::LagrangeMultipliersFitter::nitermax_
private

Definition at line 63 of file LagrangeMultipliersFitter.h.

Referenced by setNIterMax().

TVectorD tauImpactParameter::LagrangeMultipliersFitter::par_
protected

Definition at line 48 of file LagrangeMultipliersFitter.h.

TVectorD tauImpactParameter::LagrangeMultipliersFitter::par_0_
protected

Definition at line 47 of file LagrangeMultipliersFitter.h.

double tauImpactParameter::LagrangeMultipliersFitter::ScaleFactor_
private

Definition at line 72 of file LagrangeMultipliersFitter.h.

TMatrixTSym<double> tauImpactParameter::LagrangeMultipliersFitter::V_alpha0_inv_
private

Definition at line 69 of file LagrangeMultipliersFitter.h.

TMatrixT<double> tauImpactParameter::LagrangeMultipliersFitter::V_corr_prev_
private

Definition at line 73 of file LagrangeMultipliersFitter.h.

TMatrixTSym<double> tauImpactParameter::LagrangeMultipliersFitter::V_D_
private

Definition at line 71 of file LagrangeMultipliersFitter.h.

double tauImpactParameter::LagrangeMultipliersFitter::weight_
private

Definition at line 63 of file LagrangeMultipliersFitter.h.

Referenced by setWeight().