Fork me on GitHub

Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • external/TrackCovariance/ObsTrk.h

    ra617744 ra0f5d71  
    66#include <TMatrixDSym.h>
    77#include <TDecompChol.h>
    8 #include "TrkUtil.h"
    98#include "SolGridCov.h"
    109//
     
    1413//         INFN - Sezione di Pisa, Italy
    1514//
    16 class ObsTrk: public TrkUtil
    17 {
     15class ObsTrk{
    1816        //
    1917        // Class to handle simulation of tracking resolution
     
    2220        //
    2321private:       
    24         Double_t fB;                                    // Solenoid magnetic field
    25         SolGridCov *fGC;                                // Covariance matrix grid
     22        Double_t fB;                                            // Solenoid magnetic field
     23        SolGridCov *fGC;                                        // Covariance matrix grid
    2624        Double_t fGenQ;                                 // Generated track charge
    2725        Double_t fObsQ;                                 // Observed  track charge
     
    3028        TVector3 fGenP;                                 // Generated track momentum at track origin
    3129        TVector3 fObsP;                                 // Observed  track momentum @ track minimum approach
    32         TVectorD fGenPar;                               // Generated helix track parameters (D, phi0, C, z0, cot(th)) in meters
    33         TVectorD fGenParMm;                             // Generated helix track parameters (D, phi0, C, z0, cot(th)) in mm
     30        TVectorD fGenPar;                               // Generated helix track parameters (D, phi0, C, z0, cot(th))
    3431        TVectorD fGenParACTS;                   // Generated helix track parameters (D, z0, phi0, th, q/p, time
    35         TVectorD fGenParILC;                    // Generated helix track parameters (w, phi0, d0, z0, tan(lambda))
    36         TVectorD fObsPar;                               // Observed  helix track parameters (D, phi0, C, z0, cot(th)) in meters
    37         TVectorD fObsParMm;                             // Observed  helix track parameters (D, phi0, C, z0, cot(th)) in mm
     32        TVectorD fGenParILC;                            // Generated helix track parameters (w, phi0, d0, z0, tan(lambda))
     33        TVectorD fObsPar;                               // Observed  helix track parameters (D, phi0, C, z0, cot(th))
    3834        TVectorD fObsParACTS;                   // Observed  helix track parameters (D, z0, phi0, th, q/p, time
    39         TVectorD fObsParILC;                    // Observed  helix track parameters (d0, phi0, w, z0, tan(lambda))
    40         TMatrixDSym fCov;                               // Interpolated covariance of track in meters
    41         TMatrixDSym fCovMm;                             // Interpolated covariance of track parameters in mm
     35        TVectorD fObsParILC;                            // Observed  helix track parameters (d0, phi0, w, z0, tan(lambda))
     36        TMatrixDSym fCov;                               // INterpolated covariance of track parameters
    4237        TMatrixDSym fCovACTS;                   // Covariance of track parameters in ACTS format
    4338                                                                        // (D, z0, phi0, theta, q/p, time)
    44         TMatrixDSym fCovILC;                    // Covariance of track parameters in ILC format
     39        TMatrixDSym fCovILC;                            // Covariance of track parameters in ILC format
    4540                                                                        // (d0, phi0, w, z0, tan(lambda))
    4641        //
    47         // Service routines
     42        // Conversion to ACTS parametrization
    4843        //
    49         TVectorD GenToObsPar(TVectorD gPar, SolGridCov* GC);
     44        TVectorD ParToACTS(TVectorD Par);               // Parameter conversion
     45        TMatrixDSym CovToACTS(TMatrixDSym Cov); // Covariance
     46        //
     47        // Conversion to ILC parametrization
     48        //
     49        TVectorD ParToILC(TVectorD Par);                // Parameter conversion
     50        TMatrixDSym CovToILC(TMatrixDSym Cov);  // Covariance conversion
    5051        //
    5152public:
     
    5354        // Constructors
    5455        // x(3) track origin, p(3) track momentum at origin, Q charge, B magnetic field in Tesla
    55         ObsTrk(TVector3 x, TVector3 p, Double_t Q, Double_t B, SolGridCov *GC); // Initialize and generate smeared
    56         ObsTrk(Double_t *x, Double_t *p, Double_t Q, Double_t B, SolGridCov* GC);       // Initialize and generate smeared track
     56        ObsTrk(TVector3 x, TVector3 p, Double_t Q, Double_t B, SolGridCov *GC); // Initialize and generate smeared track
    5757        // Destructor
    5858        ~ObsTrk();
     59        //
     60        // Service routines
     61        //
     62        TVectorD XPtoPar(TVector3 x, TVector3 p, Double_t Q);
     63        TVectorD GenToObsPar(TVectorD gPar, SolGridCov *GC);
     64        TVector3 ParToX(TVectorD Par);
     65        TVector3 ParToP(TVectorD Par);
     66        Double_t ParToQ(TVectorD Par);
    5967        //
    6068        // Accessors
     
    6674        TVector3 GetGenP()      { return fGenP; }
    6775        // D, phi0, C, z0, cot(th)
    68         TVectorD GetGenPar()    { return fGenPar; }             // in meters
    69         TVectorD GetGenParMm()  { return fGenParMm; }           // in mm
     76        TVectorD GetGenPar()    { return fGenPar; }
    7077        // D, z0, phi0, theta, q/p, time
    7178        TVectorD GetGenParACTS()        { return fGenParACTS; }
     
    7784        TVector3 GetObsP()      { return fObsP; }
    7885        // D, phi0, C, z0, cot(th)
    79         TVectorD GetObsPar()    { return fObsPar; }             // in meters
    80         TVectorD GetObsParMm()  { return fObsParMm; }   // In mm
     86        TVectorD GetObsPar()    { return fObsPar; }
    8187        // D, z0, phi0, theta, q/p, time
    8288        TVectorD GetObsParACTS()        { return fObsParACTS; }
     
    8490        TVectorD GetObsParILC() { return fObsParILC; }
    8591        // Covariances
    86         TMatrixDSym GetCov()    { return fCov; }        // in meters
    87         TMatrixDSym GetCovMm()  { return fCov; }        // in mm
     92        TMatrixDSym GetCov(){ return fCov; }
    8893        TMatrixDSym GetCovACTS(){ return fCovACTS; }
    8994        TMatrixDSym GetCovILC(){ return fCovILC; }
    90         //
    9195};
    9296
Note: See TracChangeset for help on using the changeset viewer.