FairRoot/PandaRoot
Functions
PndTrkTrackFinder.cxx File Reference
#include "PndTrkTrackFinder.h"
#include "PndSttHit.h"
#include "PndSttTube.h"
#include "PndSttMapCreator.h"
#include "PndSdsHit.h"
#include "PndTrackCand.h"
#include "PndTrackCandHit.h"
#include "PndTrack.h"
#include "PndTrkConformalHit.h"
#include "PndTrkConformalHitList.h"
#include "PndTrkConformalTransform.h"
#include "PndTrkTools.h"
#include "PndTrkSkewHit.h"
#include "PndTrkFitter.h"
#include "FairRootManager.h"
#include "FairRunAna.h"
#include "FairRuntimeDb.h"
#include "TClonesArray.h"
#include "TVector3.h"
#include "TArc.h"
#include "TLine.h"
#include "TMarker.h"
#include "TSpectrum2.h"
#include "TSpectrum.h"
#include "TStopwatch.h"
#include "TH3D.h"
#include "TMinuit.h"
#include "PndTrkClusterList.h"
#include "PndTrkTrackList.h"
#include "PndTrkClean.h"
#include "PndTrkNeighboringMap.h"
#include "PndTrkIndivisibleHit.h"
#include <iostream>

Go to the source code of this file.

Functions

Double_t fit_distance (float x, float y, Double_t *par)
 
void Chi2Calculation (Int_t &, Double_t *, Double_t &f, Double_t *par, Int_t)
 
void Chi2Calculation2 (Int_t &, Double_t *, Double_t &f, Double_t *par, Int_t)
 

Function Documentation

void Chi2Calculation ( Int_t &  ,
Double_t ,
Double_t f,
Double_t par,
Int_t   
)

Definition at line 65 of file PndTrkTrackFinder.cxx.

References Double_t, and fit_distance().

Referenced by PndTrkTrackFinder::MinuitFit().

66 {
67 
68 
69  TMatrixT<Double_t> *objtofit = (TMatrixT<Double_t> *) gMinuit->GetObjectFit();
70 
71  Double_t chi2 = 0;
72  Int_t hitcounter = objtofit->GetNrows();
73 
74  for (Int_t ihit = 0; ihit < hitcounter; ihit++)
75  {
76  double r_reco = fit_distance(objtofit[0][ihit][0], objtofit[0][ihit][1], par);
77  double delta = (objtofit[0][ihit][2] - r_reco)/objtofit[0][ihit][3];
78 
79  cout << "reco iso " << r_reco << endl;
80  cout << "drift " << objtofit[0][ihit][2] << endl;
81  cout << "delta " << delta << endl;
82  chi2 += delta * delta;
83  }
84  f = chi2;
85  return;
86 }
Double_t par[3]
Double_t fit_distance(float x, float y, Double_t *par)
Double_t
TFile * f
Definition: bump_analys.C:12
void Chi2Calculation2 ( Int_t &  ,
Double_t ,
Double_t f,
Double_t par,
Int_t   
)

Definition at line 88 of file PndTrkTrackFinder.cxx.

References Double_t, and CAMath::Sqrt().

Referenced by PndTrkTrackFinder::MinuitFit2().

89 {
90 
91  TMatrixT<Double_t> *objtofit = (TMatrixT<Double_t> *) gMinuit->GetObjectFit();
92 
93  Double_t chi2 = 0;
94  Int_t hitcounter = objtofit->GetNrows();
95 
96  for (Int_t ihit = 0; ihit < hitcounter; ihit++)
97  {
98 
99  double delta = TMath::Sqrt((objtofit[0][ihit][0] - par[0])*(objtofit[0][ihit][0] - par[0])+(objtofit[0][ihit][1] - par[1])*(objtofit[0][ihit][1] - par[1])) - par[2]+ par[3] * objtofit[0][ihit][2];
100  if(objtofit[0][ihit][2] == 0) chi2 += (delta * delta * 12.);
101  else chi2 += (delta*delta)/(pow(objtofit[0][ihit][3],2));
102  }
103  f = chi2;
104  return;
105 }
static T Sqrt(const T &x)
Definition: PndCAMath.h:37
Double_t par[3]
Double_t
TFile * f
Definition: bump_analys.C:12
Double_t fit_distance ( float  x,
float  y,
Double_t par 
)

Definition at line 58 of file PndTrkTrackFinder.cxx.

References CAMath::Sqrt().

Referenced by Chi2Calculation().

59 {
60  double value=(par[0] * x - y + par[1]) / TMath::Sqrt(par[0] * par[0] + 1);
61  return value;
62 }
static T Sqrt(const T &x)
Definition: PndCAMath.h:37
Double_t par[3]
Double_t x
Double_t y