CMS 3D CMS Logo

IMACalibBlock.h
Go to the documentation of this file.
1 #ifndef __CINT__
2 #ifndef EcalCalibBlock_H
3 #define EcalCalibBlock_H
4 
5 #include <map>
6 #include <string>
7 #include <vector>
8 
9 #include "CLHEP/Matrix/GenMatrix.h"
10 #include "CLHEP/Matrix/Matrix.h"
11 #include "CLHEP/Matrix/Vector.h"
12 #include "CLHEP/Random/RandGaussQ.h"
13 
16 
23 public:
25  IMACalibBlock(const int);
27  ~IMACalibBlock() override;
28 
30  void Fill(std::map<int, double>::const_iterator,
31  std::map<int, double>::const_iterator,
32  double pTk,
33  double pSubtract,
34  double sigma = 1.) override;
35 
37  void reset() override;
39  int solve(int usingBlockSolver, double min, double max) override;
40 
41 private:
43  int evalX2Size();
45  void complete();
47  void riempiMtr(const std::vector<double>& piena, CLHEP::HepMatrix& vuota);
49  void riempiVtr(const std::vector<double>& pieno, CLHEP::HepVector& vuoto);
51  void fillMap(const CLHEP::HepVector& result);
52 
53 private:
55  std::vector<double> m_kaliVector;
57  std::vector<double> m_kaliMatrix;
58 };
59 
60 #endif
61 #endif
InvMatrixCommonDefs.h
IMACalibBlock::m_kaliMatrix
std::vector< double > m_kaliMatrix
matrix for the chi2 inversion
Definition: IMACalibBlock.h:57
IMACalibBlock::riempiVtr
void riempiVtr(const std::vector< double > &pieno, CLHEP::HepVector &vuoto)
copy a vector into a CLHEP object
Definition: IMACalibBlock.cc:130
VEcalCalibBlock
element for the single ECAL block intercalibration
Definition: VEcalCalibBlock.h:13
IMACalibBlock::complete
void complete()
complete the triangolar chi2 matrix to a sym one
Definition: IMACalibBlock.cc:56
IMACalibBlock::riempiMtr
void riempiMtr(const std::vector< double > &piena, CLHEP::HepMatrix &vuota)
copy a vector into a CLHEP object
Definition: IMACalibBlock.cc:112
min
T min(T a, T b)
Definition: MathUtil.h:58
IMACalibBlock::Fill
void Fill(std::map< int, double >::const_iterator, std::map< int, double >::const_iterator, double pTk, double pSubtract, double sigma=1.) override
insert an entry
Definition: IMACalibBlock.cc:25
IMACalibBlock::fillMap
void fillMap(const CLHEP::HepVector &result)
fill the coefficients map from the CLHEP vector solution
Definition: IMACalibBlock.cc:157
IMACalibBlock::~IMACalibBlock
~IMACalibBlock() override
dtor
Definition: IMACalibBlock.cc:21
VEcalCalibBlock.h
IMACalibBlock::reset
void reset() override
reset the chi2 matrices
Definition: IMACalibBlock.cc:144
IMACalibBlock
Definition: IMACalibBlock.h:22
IMACalibBlock::IMACalibBlock
IMACalibBlock(const int)
ctor
Definition: IMACalibBlock.cc:14
IMACalibBlock::evalX2Size
int evalX2Size()
give the size of a chi2 matrix
Definition: IMACalibBlock.cc:108
SiStripPI::max
Definition: SiStripPayloadInspectorHelper.h:169
IMACalibBlock::m_kaliVector
std::vector< double > m_kaliVector
vector for the chi2 inversion
Definition: IMACalibBlock.h:55
IMACalibBlock::solve
int solve(int usingBlockSolver, double min, double max) override
solve the chi2 linear system
Definition: IMACalibBlock.cc:72
mps_fire.result
result
Definition: mps_fire.py:303