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

Constructor & Destructor Documentation

Covariance::Covariance ( )
inline

Definition at line 1786 of file Histograms.h.

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

Member Function Documentation

double Covariance::covariance ( void  )
inline

Definition at line 1798 of file Histograms.h.

References N_, productXY_, sumX_, and sumY_.

Referenced by HCovarianceVSxy::Write().

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

Definition at line 1792 of file Histograms.h.

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

Referenced by HCovarianceVSxy::Fill().

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

Definition at line 1807 of file Histograms.h.

References N_.

1807 {return N_;}

Member Data Documentation

int Covariance::N_
protected

Definition at line 1812 of file Histograms.h.

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

double Covariance::productXY_
protected

Definition at line 1809 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumX_
protected

Definition at line 1810 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumY_
protected

Definition at line 1811 of file Histograms.h.

Referenced by covariance(), and fill().