Changeset 2630 in Sophya for trunk/SophyaLib/HiStats
- Timestamp:
- Oct 26, 2004, 6:26:39 PM (21 years ago)
- Location:
- trunk/SophyaLib/HiStats
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaLib/HiStats/histerr.cc
r2628 r2630 72 72 Histo::Zero(); 73 73 if(mNData) memset(mNData,0,mBins*sizeof(r_8)); 74 }75 76 /********* Methode *********/77 /*!78 Addition du contenu de l'histo pour abscisse x poids w et l'erreur e79 */80 void HistoErr::Add(r_8 x, r_8 w, r_8 e)81 {82 int_4 numBin = (int_4)floor((x-mMin)/binWidth);83 if(numBin<0) mUnder += w;84 else if(numBin>=mBins) mOver += w;85 else {86 mData[numBin] += w; mNData[numBin] += 1.; mErr2[numBin] += e*e;87 nHist += w; nEntries++;88 }89 }90 91 /********* Methode *********/92 /*!93 Addition du contenu de l'histo pour le bin numBin poids w et l'erreur e94 */95 void HistoErr::AddBin(int_4 numBin, r_8 w, r_8 e)96 {97 if(numBin<0) mUnder += w;98 else if(numBin>=mBins) mOver += w;99 else {100 mData[numBin] += w; mNData[numBin] += 1.; mErr2[numBin] += e*e;101 nHist += w; nEntries++;102 }103 74 } 104 75 -
trunk/SophyaLib/HiStats/histerr.h
r2628 r2630 23 23 void Zero(void); 24 24 //! Addition du contenu de l'histo pour abscisse x poids w et l'erreur e 25 void Add(r_8 x, r_8 w=1., r_8 e=1.); 25 inline void Add(r_8 x, r_8 w, r_8 e) 26 { 27 int_4 numBin = (int_4)floor((x-mMin)/binWidth); 28 if(numBin<0) mUnder += w; 29 else if(numBin>=mBins) mOver += w; 30 else { 31 mData[numBin] += w; mNData[numBin] += 1.; mErr2[numBin] += e*e; 32 nHist += w; nEntries++; 33 } 34 } 35 inline void Add(r_8 x, r_8 w) {Add(x,w,1.);} 36 inline void Add(r_8 x) {Add(x,1.,1.);} 26 37 //! Addition du contenu de l'histo pour le bin numBin poids w et l'erreur e 27 void AddBin(int_4 numBin, r_8 w=1., r_8 e=1.); 38 inline void AddBin(int_4 numBin, r_8 w, r_8 e) 39 { 40 if(numBin<0) mUnder += w; 41 else if(numBin>=mBins) mOver += w; 42 else { 43 mData[numBin] += w; mNData[numBin] += 1.; mErr2[numBin] += e*e; 44 nHist += w; nEntries++; 45 } 46 } 47 inline void AddBin(int_4 numBin, r_8 w) {AddBin(numBin,w,1.);} 48 inline void AddBin(int_4 numBin) {AddBin(numBin,1.,1.);} 28 49 //! remplissage contenu de l'histo pour le bin numBin poids w et l'erreur e 29 void SetBin(int_4 numBin, r_8 w=1., r_8 e=1., r_8 nb=1.); 50 void SetBin(int_4 numBin, r_8 w, r_8 e, r_8 nb); 51 inline void SetBin(int_4 numBin, r_8 w, r_8 e) {SetBin(numBin,w,e,1.);} 52 inline void SetBin(int_4 numBin, r_8 w) {SetBin(numBin,w,1.,1.);} 53 inline void SetBin(int_4 numBin) {SetBin(numBin,1.,1.,1.);} 30 54 //! remplissage nombre d'entrees pour le bin numBin 31 55 void SetNentB(int_4 numBin, r_8 nb=1.); -
trunk/SophyaLib/HiStats/histos.h
r2628 r2630 1 1 // This may look like C code, but it is really -*- C++ -*- 2 2 // 3 // $Id: histos.h,v 1. 19 2004-10-13 16:41:33cmv Exp $3 // $Id: histos.h,v 1.20 2004-10-26 16:26:39 cmv Exp $ 4 4 // 5 5 … … 34 34 // UPDATING or SETTING 35 35 void Zero(); 36 void Add(r_8 x, r_8 w = 1.); 37 void AddBin(int_4 numBin, r_8 w = 1.); 38 void SetBin(r_8 x, r_8 w = 1.); 39 void SetBin(int_4 numBin, r_8 w = 1.); 36 void Add(r_8 x, r_8 w); 37 inline void Add(r_8 x) {Add(x,1.);} 38 void AddBin(int_4 numBin, r_8 w); 39 inline void AddBin(int_4 numBin) {AddBin(numBin,1.);} 40 void SetBin(r_8 x, r_8 w); 41 inline void SetBin(r_8 x) {SetBin(x,1.);} 42 void SetBin(int_4 numBin, r_8 w); 43 inline void SetBin(int_4 numBin) {SetBin(numBin,1.);} 40 44 void SetErr2(r_8 x, r_8 e2); 41 45 void SetErr2(int_4 numBin, r_8 e2);
Note:
See TracChangeset
for help on using the changeset viewer.