Report problems to ATLAS LXR Team (with time and IP address indicated)

The LXR Cross Referencer

source navigation ]
diff markup ]
identifier search ]
general search ]
 
 
Architecture: linux ]
Version: head ] [ nightly ] [ GaudiDev ]
  Links to LXR source navigation pages for stable releases [ 12.*.* ]   [ 13.*.* ]   [ 14.*.* ] 

001  ///////////////////////////////////////////////////////////////////
002 // HggFitter.h, (c) ATLAS Detector software 2007
003 // author: Marcello Fanti, marcello.fanti@mi.infn.it
004 ///////////////////////////////////////////////////////////////////
005 
006 
007 #ifndef RECOTOOLS_HGGFITTER_H
008 #define RECOTOOLS_HGGFITTER_H
009 
010 // Gaudi
011 #include "GaudiKernel/AlgTool.h"
012 #include "StoreGate/StoreGateSvc.h"
013 #include "HiggsAnalysisUtils/IHggFitter.h"
014 
015 class TH1;
016 
017 class HggFitter : public AlgTool, virtual public IHggFitter {
018  public:
019   
020   /** AlgTool like constructor */
021   HggFitter(const std::string&,const std::string&,const IInterface*);
022   
023   /**Virtual destructor*/
024   virtual ~HggFitter();
025   
026   /** AlgTool initialize method.*/
027   StatusCode initialize();
028   /** AlgTool finalize method */
029   StatusCode finalize();
030 
031   // public methods:
032  
033   void SetEtas(const CaloCluster* clus1,const CaloCluster* clus2) ;
034   void SetPrimVertexInfo(float Zinput,float DZinput) ;
035   void SetConversion(unsigned gamma_index, const Trk::VxCandidate* conv) ;
036   void SetTrack(unsigned gamma_index, const Rec::TrackParticle* trk) ;
037 
038   bool FitHgg(float& Zrec, float& ZrecRes, float& eta1rec, float& eta2rec) ;
039   bool getEtaSinglePhoton(float& eta1,float& eta2) const ;
040   bool gimeRZ(int layer, float eta, float& R, float& Z) const ;
041   bool inEMBarrel( float eta ) const ;
042   float EtaFromVertex(int layer, float eta, float Zvtx) const ;
043 
044   // old methods...
045   void SetEtas(std::vector<float>, std::vector<float>) ;
046   void SetPrimVertexInfo(bool usevtx,float Zinput,float DZinput) ;
047   void SetConvInfo(bool usecv,bool conv1,float rcv1,float zcv1,bool conv2,float rcv2,float zcv2) ;
048 
049  private:
050   
051   void combineZ() ;
052   bool AssignRZ(int jphot,std::vector<float>& r,std::vector<float>& z,std::vector<float>& weight) ;
053   bool SinglePhotonFit(int jphot,bool FillHistos=false) ;
054   void killWorst(std::vector<float>& x, std::vector<float>& y, std::vector<float>& w, unsigned iworst) ;
055   bool FitDir( std::vector<float> x, std::vector<float> y, std::vector<float> weight, bool rej=false );   
056   StatusCode GetErrors();  
057 
058  private:
059 
060   std::vector<int> m_p_where ;  
061 
062   // indexing: m_etas[j] = all points of (jth photon), m_etas[j][i] = (ith point) of (jth photon)
063   std::vector<float> m_etas[2] ;  
064   std::vector<float> m_ZVertexRec,m_ZVertexRecRes;  // Z of vertex from linear fit
065   std::vector<float> m_NewRecoEtaSeparate;          // eta from fit (separately fitted photons)
066   std::vector<float> m_NewRecoEta, m_NewRecoTheta;  // eta and theta from linear fit
067   float m_PI ;  
068   bool m_useIDVert, m_useConversion, m_isConv[2];
069   float m_IDVert, m_IDVertRes, m_Rconv[2], m_Zconv[2]; 
070   float m_chi2[2], m_zfit[2];
071   bool m_fit_ok[2] ;
072   float m_errors_ps[100], m_errors_strip[100], m_errors_mid[100]; 
073 
074   float m_chi2worst ;
075   unsigned m_nfitmin ;
076   bool m_usePS, m_useDummyVertex, m_useCombinedFit ;
077 
078   // variables used for fitting  y = ax + b 
079   unsigned m_nFitPoints ;
080   unsigned m_iworst ;
081   float m_a, m_sigmaa, m_b, m_sigmab, m_chiquad, m_covab ;
082   std::vector<float> m_r, m_z, m_weight, m_chi2point ;  // (r,z) points to fit
083 
084 
085   /// a handle on Store Gate 
086   StoreGateSvc* m_storeGate;
087 
088 
089   
090 };
091 
092 
093 #endif // RECOTOOLS_HGGFITTER_H
094 

source navigation ] diff markup ] identifier search ] general search ]

Due to the LXR bug, the updates fail sometimes to remove references to deleted files. The Saturday's full rebuilds fix these problems
This page was automatically generated by the LXR engine. Valid HTML 4.01!