2 #ifndef EcalCalibBlock_H
3 #define EcalCalibBlock_H
9 #include "CLHEP/Matrix/GenMatrix.h"
10 #include "CLHEP/Matrix/Matrix.h"
11 #include "CLHEP/Matrix/Vector.h"
12 #include "CLHEP/Random/RandGaussQ.h"
35 void Fill (std::map<int,double>::const_iterator,
36 std::map<int,double>::const_iterator,
44 int solve (
int usingBlockSolver,
double min,
double max) ;
52 void riempiMtr (
const std::vector<double> & piena, CLHEP::HepMatrix & vuota) ;
54 void riempiVtr (
const std::vector<double> & pieno, CLHEP::HepVector & vuoto) ;
IMACalibBlock(const int)
ctor
void Fill(std::map< int, double >::const_iterator, std::map< int, double >::const_iterator, double pTk, double pSubtract, double sigma=1.)
insert an entry
element for the single ECAL block intercalibration
std::vector< double > m_kaliVector
vector for the chi2 inversion
void riempiMtr(const std::vector< double > &piena, CLHEP::HepMatrix &vuota)
copy a vector into a CLHEP object
const T & max(const T &a, const T &b)
std::vector< double > m_kaliMatrix
matrix for the chi2 inversion
void riempiVtr(const std::vector< double > &pieno, CLHEP::HepVector &vuoto)
copy a vector into a CLHEP object
int evalX2Size()
give the size of a chi2 matrix
int solve(int usingBlockSolver, double min, double max)
solve the chi2 linear system
void reset()
reset the chi2 matrices
void fillMap(const CLHEP::HepVector &result)
fill the coefficients map from the CLHEP vector solution
void complete()
complete the triangolar chi2 matrix to a sym one