CMS 3D CMS Logo

Public Member Functions | Protected Attributes

Covariance Class Reference

#include <Histograms.h>

List of all members.

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.

               :
    productXY_(0),
    sumX_(0),
    sumY_(0),
    N_(0)
  {}

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().

                      {
    if( N_ != 0 ) {
      double meanX = sumX_/N_;
      double meanY = sumY_/N_;
      // std::cout << "meanX*meanY = "<<meanX<<"*"<<meanY<< " = " << meanX*meanY << std::endl;
      return (productXY_/N_ - meanX*meanY);
    }
    return 0.;
  }
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().

                                                {
    productXY_ += x*y;
    sumX_ += x;
    sumY_ += y;
    ++N_;
  }
double Covariance::getN ( ) [inline]

Definition at line 1807 of file Histograms.h.

References N_.

{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().