CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Protected Attributes
Covariance Class Reference

#include <Histograms.h>

Public Member Functions

 Covariance ()
 
double covariance ()
 
void fill (const double &x, const double &y)
 
double getN ()
 

Protected Attributes

int N_
 
double productXY_
 
double sumX_
 
double sumY_
 

Detailed Description

This class can be used to compute the covariance between two input variables. The Fill method needs the two input variables. In the end the covariance method computes the covariance as: cov(x,y) = Sum_i(x_i*y_i)/N - x_mean*y_mean. Of course passing the same variable for x and y gives the variance of that variable.

Definition at line 1782 of file Histograms.h.

Constructor & Destructor Documentation

Covariance::Covariance ( )
inline

Definition at line 1785 of file Histograms.h.

1785  :
1786  productXY_(0),
1787  sumX_(0),
1788  sumY_(0),
1789  N_(0)
1790  {}
double productXY_
Definition: Histograms.h:1808
double sumY_
Definition: Histograms.h:1810
double sumX_
Definition: Histograms.h:1809

Member Function Documentation

double Covariance::covariance ( void  )
inline

Definition at line 1797 of file Histograms.h.

References N_, productXY_, sumX_, and sumY_.

Referenced by HCovarianceVSxy::Write().

1797  {
1798  if( N_ != 0 ) {
1799  double meanX = sumX_/N_;
1800  double meanY = sumY_/N_;
1801  // std::cout << "meanX*meanY = "<<meanX<<"*"<<meanY<< " = " << meanX*meanY << std::endl;
1802  return (productXY_/N_ - meanX*meanY);
1803  }
1804  return 0.;
1805  }
double productXY_
Definition: Histograms.h:1808
double sumY_
Definition: Histograms.h:1810
double sumX_
Definition: Histograms.h:1809
void Covariance::fill ( const double &  x,
const double &  y 
)
inline

Definition at line 1791 of file Histograms.h.

References N_, productXY_, sumX_, sumY_, x, and detailsBasic3DVector::y.

Referenced by HCovarianceVSxy::Fill().

1791  {
1792  productXY_ += x*y;
1793  sumX_ += x;
1794  sumY_ += y;
1795  ++N_;
1796  }
double productXY_
Definition: Histograms.h:1808
double sumY_
Definition: Histograms.h:1810
Definition: DDAxes.h:10
double sumX_
Definition: Histograms.h:1809
double Covariance::getN ( )
inline

Definition at line 1806 of file Histograms.h.

References N_.

1806 {return N_;}

Member Data Documentation

int Covariance::N_
protected

Definition at line 1811 of file Histograms.h.

Referenced by covariance(), fill(), and getN().

double Covariance::productXY_
protected

Definition at line 1808 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumX_
protected

Definition at line 1809 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumY_
protected

Definition at line 1810 of file Histograms.h.

Referenced by covariance(), and fill().