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 1784 of file Histograms.h.

Constructor & Destructor Documentation

Covariance::Covariance ( )
inline

Definition at line 1787 of file Histograms.h.

1787  :
1788  productXY_(0),
1789  sumX_(0),
1790  sumY_(0),
1791  N_(0)
1792  {}
double productXY_
Definition: Histograms.h:1810
double sumY_
Definition: Histograms.h:1812
double sumX_
Definition: Histograms.h:1811

Member Function Documentation

double Covariance::covariance ( void  )
inline

Definition at line 1799 of file Histograms.h.

References N_, productXY_, sumX_, and sumY_.

Referenced by HCovarianceVSxy::Write().

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

Definition at line 1793 of file Histograms.h.

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

Referenced by HCovarianceVSxy::Fill().

1793  {
1794  productXY_ += x*y;
1795  sumX_ += x;
1796  sumY_ += y;
1797  ++N_;
1798  }
double productXY_
Definition: Histograms.h:1810
double sumY_
Definition: Histograms.h:1812
x
Definition: VDTMath.h:216
double sumX_
Definition: Histograms.h:1811
double Covariance::getN ( )
inline

Definition at line 1808 of file Histograms.h.

References N_.

1808 {return N_;}

Member Data Documentation

int Covariance::N_
protected

Definition at line 1813 of file Histograms.h.

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

double Covariance::productXY_
protected

Definition at line 1810 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumX_
protected

Definition at line 1811 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumY_
protected

Definition at line 1812 of file Histograms.h.

Referenced by covariance(), and fill().