1 #ifndef _Q_CHANNELCOVARIANCE_HH_
2 #define _Q_CHANNELCOVARIANCE_HH_
41 void SetCovariance(
int chI,
int chJ,
const Diana::QVectorC& cov);
74 void Dump(std::ostream& o)
const;
Complex covariance matrix of an array of bolometers.
std::map< int, int > fChannels
map real channel number into channel index
void SetNEvents(int chI, int chJ, int nev)
set number of events of the couple I,J
void DumpMeanCorrelationMatrix(std::ostream &o, const int fmin=-1, const int fmax=-1) const
dump mean correlation matrix
void Dump(std::ostream &o) const
dump summary of content
double GetMeanCorrelation(int chI, int chJ, int fmin=-1, int fmax=-1) const
get mean correlation between frequency indices fmin and fmax of the couple (chI,chJ)
Diana::QVectorC GetCorrelation(int chI, int chJ) const
get correlation
void SetChannels(const std::vector< int > &channels)
set channels
QChannelCovariance GetSubMatrix(const std::vector< int > &channels) const
Get sub matrix of channels.
std::vector< int > GetChannels() const
get channels
QObjectDef(QChannelCovariance, 2)
void Clear()
clear members
size_t GetNFreq() const
get number of frequencies
QChannelCovariance Inverse() const
get inverse matrix
size_t GetNChan() const
get number of channels
void SetNFreq(size_t nfreq)
set number of frequencies
Diana::QVectorC GetCovarianceByIndex(int i, int j) const
int GetNEvents(int chI, int chJ) const
get number of events of the couple I,J
Diana::QVectorC GetCovariance(int chI, int chJ) const
get covariance between channel I and J
Diana::QMatrix fNevents
number of events used to build each element of fCovariance
void Channels2Indices(const int chI, const int chJ, int &i, int &j) const
convert channel numbers to indices
std::vector< Diana::QMatrixC > fCovariance
std::vector< int > GetChannelsByCorrelation(int chI, int fmin=-1, int fmax=-1) const
get mean correlation between frequency indices fmin and fmax of the couple (chI,chJ)
void SetCovariance(int chI, int chJ, const Diana::QVectorC &cov)
set covariance (size equal to nfreq) of channels I and J