ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitPhysics/Utils/interface/VertexTools.h
(Generate patch)

Comparing UserCode/MitPhysics/Utils/interface/VertexTools.h (file contents):
Revision 1.2 by maxi, Thu Jun 16 02:53:03 2011 UTC vs.
Revision 1.10 by fabstoec, Fri Oct 26 19:23:05 2012 UTC

# Line 25 | Line 25
25  
26   #include "TMVA/Reader.h"
27  
28 + namespace TMVA {//MVA
29 +  class Reader;
30 + }
31 +
32   namespace mithep {
33    typedef std::vector<double> VertexZarray;
34 +  typedef std::vector<const Track*> TrackArray;
35  
36    class VertexTools {
37    public:
38 <  
38 >
39 >    VertexTools();
40 >    
41      static double NewMass(const Photon* ph1, const Photon* ph2, const BaseVertex* vert);
42  
43      static VertexZarray ExtractZarray(const VertexCol* vcol, float zmin=-30, float zmax = 30,
# Line 39 | Line 46 | namespace mithep {
46      
47      static const Vertex* BestVtx(const PFCandidateCol *fPFJets, const VertexCol *c,
48                                   const BaseVertex  *fBeamSpot, FourVector diboso);
49 +
50 +
51      static double BestVtx(const PFCandidateCol *fPFJets, VertexZarray zcol,
52                            const BaseVertex  *fBeamSpot, FourVector diboso);
53 +
54      static double Prob(const PFCandidateCol *fPFJets, double zpos,  
55                         const BaseVertex  *fBeamSpot, FourVector diboso);
56      
57      static double VertexWidth(const Vertex*,  const BaseVertex* );
58 +
59 +    static void BanThisTrack(const Track*);
60 +    static void Reset();
61      
62      static VertexTools* instance(const char* str){
63        if(meobject == NULL){
64 <        meobject = new VertexTools(str);
64 >        meobject = new VertexTools();
65 >        meobject->InitM(str);
66        }
67        return meobject;
68 <    }
68 >    }        
69  
70 <    Float_t tmvar1, tmvar2, tmvar3, tmvar4, tmvar5, tmvar6;
71 <    TMVA::Reader* reader;
70 >    // ----------------------------------------------------------
71 >    // Methods (added by Fabian) on the EPS BaseLine Analysis
72 >    const Vertex* findVtxBasicRanking(const Photon*           ph1,
73 >                                      const Photon*           ph2,
74 >                                      const BaseVertex*       bsp,
75 >                                      const VertexCol*        vtcs,
76 >                                      const DecayParticleCol* conv, Bool_t useMva, Double_t &vtxProb,
77 >                                      std::vector<int>   * debugInds = NULL ,
78 >                                      std::vector<double>* debugVals = NULL ,
79 >                                      std::vector<int>   * debugConv = NULL );
80 >    // ----------------------------------------------------------
81 >
82 >    
83 >    static std::pair<double,double> VtxZFromConversion(const Photon *p, const DecayParticle *c, const BaseVertex *bsp);
84 >
85 >    void InitM(const char* str);
86 >    void InitP(int version = 1);
87 >    
88 >    Bool_t IsInitMvaM() const { return fIsInitMvaM; }
89 >    Bool_t IsInitMvaP() const { return fIsInitMvaP; }
90 >    
91 >    static Double_t DeltaMassVtx(Double_t xp1, Double_t yp1, Double_t zp1,
92 >            Double_t xp2, Double_t yp2, Double_t zp2,
93 >            Double_t xv,  Double_t yv,  Double_t zv,
94 >            Double_t dz);
95      
96    private:
97 +    
98 +    double VtxMvaP(float ptbal, float ptasym, float logsumpt2, float limPullToConv, float nConv) const;
99 +    
100      static VertexTools *meobject;
101 +    
102  
62    VertexTools();
63    VertexTools(const char* str);
103      TString relname;
104  
105 +    TrackArray excluded;
106 +    
107 +    Bool_t fIsInitMvaM;
108 +    Bool_t fIsInitMvaP;
109 +
110 +    Float_t tmvar1, tmvar2, tmvar3, tmvar4, tmvar5, tmvar6;
111 +    TMVA::Reader* reader;
112 +    
113 +    
114 +    TMVA::Reader *readervtx;
115 +    TMVA::Reader *readerevt;
116 +    mutable Float_t fMvaPVars[5];
117 +    mutable Float_t fMvaPEvtVars[8];
118 +    
119 +    TString fVtxProbMvaName;
120 +    
121      ClassDef(VertexTools, 0) // Muon tools
122        };
123   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines