FairRoot/PandaRoot
Classes | Functions
PndEmcErrorMatrix.h File Reference
#include "TMatrixD.h"
#include "PndEmcCluster.h"
#include "TString.h"
#include <cstdlib>

Go to the source code of this file.

Classes

class  PndEmcErrorMatrix
 Calculate Error Matrix for the given EmcCluster with parametrization defined by the given parameter PndEmcErrorMatrixPar. More...
 

Functions

TMatrixD similarityWith (const TMatrixD &mat, const TMatrixD &m1)
 

Function Documentation

TMatrixD similarityWith ( const TMatrixD mat,
const TMatrixD m1 
)

Definition at line 305 of file PndEmcErrorMatrix.cxx.

References c, and r.

Referenced by PndEmcErrorMatrix::Get4MomentumErrorMatrix(), PndEmcErrorMatrix::GetErrorMatrix(), and PndEmcErrorMatrix::GetErrorP7().

306 {
307  TMatrixD result(m1.GetNrows(),m1.GetNrows());
308 
309  TMatrixD temp = m1*mat;
310  double tmp;
311 
312  for (int r = 0; r < m1.GetNrows(); r++) {
313  for (int c = 0; c <= r; c++) {
314  tmp = 0.;
315  for (int k = 0; k < m1.GetNcols(); k++) {
316  tmp += temp(r,k)*m1(c,k);
317  }
318  result(r,c) = tmp;
319  // Modification from original code, to make output matrix explicitly symmetric
320  // In original babar code symmetric matrix were stored as lower triangular.
321  if (r!=c)
322  result(c,r) = tmp;
323  }
324  }
325  return result;
326 }
double r
Definition: RiemannTest.C:14
TMatrixT< double > TMatrixD
Definition: PndLmdDim.h:52