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

Constructor & Destructor Documentation

Covariance::Covariance ( )
inline

Definition at line 1784 of file Histograms.h.

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

Member Function Documentation

double Covariance::covariance ( void  )
inline

Definition at line 1796 of file Histograms.h.

References N_, productXY_, sumX_, and sumY_.

Referenced by HCovarianceVSxy::Write().

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

Definition at line 1790 of file Histograms.h.

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

Referenced by HCovarianceVSxy::Fill().

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

Definition at line 1805 of file Histograms.h.

References N_.

1805 {return N_;}

Member Data Documentation

int Covariance::N_
protected

Definition at line 1810 of file Histograms.h.

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

double Covariance::productXY_
protected

Definition at line 1807 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumX_
protected

Definition at line 1808 of file Histograms.h.

Referenced by covariance(), and fill().

double Covariance::sumY_
protected

Definition at line 1809 of file Histograms.h.

Referenced by covariance(), and fill().