CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
SingleGaussianState< N > Class Template Reference

#include <SingleGaussianState.h>

Public Types

using Matrix = ROOT::Math::SMatrix< double, N, N, ROOT::Math::MatRepSym< double, N > >
 
using Vector = ROOT::Math::SVector< double, N >
 

Public Member Functions

const Matrixcovariance () const
 covariance matrix More...
 
unsigned int dimension () const
 size of parameter vector More...
 
const Vectormean () const
 parameter vector More...
 
void rescaleWeight (double scale)
 change weight More...
 
 SingleGaussianState ()
 
 SingleGaussianState (const Vector &aMean, const Matrix &aCovariance, double aWeight=1.)
 
double weight () const
 weight More...
 
const MatrixweightMatrix () const
 weight matrix More...
 

Private Attributes

Matrix theCovariance
 
bool theHasWeightMatrix = false
 
Vector theMean
 
double theWeight
 
Matrix theWeightMatrix = ROOT::Math::SMatrixNoInit()
 

Detailed Description

template<unsigned int N>
class SingleGaussianState< N >

Multi-dimensional (single) Gaussian state. Used for the description of Gaussian mixtures.

Definition at line 14 of file SingleGaussianState.h.

Member Typedef Documentation

◆ Matrix

template<unsigned int N>
using SingleGaussianState< N >::Matrix = ROOT::Math::SMatrix<double, N, N, ROOT::Math::MatRepSym<double, N> >

Definition at line 17 of file SingleGaussianState.h.

◆ Vector

template<unsigned int N>
using SingleGaussianState< N >::Vector = ROOT::Math::SVector<double, N>

Definition at line 16 of file SingleGaussianState.h.

Constructor & Destructor Documentation

◆ SingleGaussianState() [1/2]

template<unsigned int N>
SingleGaussianState< N >::SingleGaussianState ( )
inline

Definition at line 20 of file SingleGaussianState.h.

20 {}

◆ SingleGaussianState() [2/2]

template<unsigned int N>
SingleGaussianState< N >::SingleGaussianState ( const Vector aMean,
const Matrix aCovariance,
double  aWeight = 1. 
)
inline

Definition at line 22 of file SingleGaussianState.h.

23  : theCovariance(aCovariance), theMean(aMean), theWeight(aWeight) {}

Member Function Documentation

◆ covariance()

template<unsigned int N>
const Matrix& SingleGaussianState< N >::covariance ( void  ) const
inline

covariance matrix

Definition at line 30 of file SingleGaussianState.h.

References SingleGaussianState< N >::theCovariance.

Referenced by MultiGaussianStateTransform::tsosFromSingleState().

30 { return theCovariance; }

◆ dimension()

template<unsigned int N>
unsigned int SingleGaussianState< N >::dimension ( ) const
inline

size of parameter vector

Definition at line 34 of file SingleGaussianState.h.

References N.

34 { return N; }
#define N
Definition: blowfish.cc:9

◆ mean()

template<unsigned int N>
const Vector& SingleGaussianState< N >::mean ( ) const
inline

parameter vector

Definition at line 28 of file SingleGaussianState.h.

References SingleGaussianState< N >::theMean.

Referenced by MultiGaussianStateTransform::tsosFromSingleState().

28 { return theMean; }

◆ rescaleWeight()

template<unsigned int N>
void SingleGaussianState< N >::rescaleWeight ( double  scale)
inline

◆ weight()

template<unsigned int N>
double SingleGaussianState< N >::weight ( ) const
inline

weight

Definition at line 26 of file SingleGaussianState.h.

References SingleGaussianState< N >::theWeight.

26 { return theWeight; }

◆ weightMatrix()

template<unsigned int N>
const Matrix& SingleGaussianState< N >::weightMatrix ( ) const

weight matrix

Member Data Documentation

◆ theCovariance

template<unsigned int N>
Matrix SingleGaussianState< N >::theCovariance
private

Definition at line 39 of file SingleGaussianState.h.

Referenced by SingleGaussianState< N >::covariance().

◆ theHasWeightMatrix

template<unsigned int N>
bool SingleGaussianState< N >::theHasWeightMatrix = false
mutableprivate

Definition at line 44 of file SingleGaussianState.h.

◆ theMean

template<unsigned int N>
Vector SingleGaussianState< N >::theMean
private

Definition at line 40 of file SingleGaussianState.h.

Referenced by SingleGaussianState< N >::mean().

◆ theWeight

template<unsigned int N>
double SingleGaussianState< N >::theWeight
private

◆ theWeightMatrix

template<unsigned int N>
Matrix SingleGaussianState< N >::theWeightMatrix = ROOT::Math::SMatrixNoInit()
mutableprivate

Definition at line 43 of file SingleGaussianState.h.