1 #ifndef __fastNLOCoeffAddFix__ 2 #define __fastNLOCoeffAddFix__ 4 #include "fastNLOCoeffAddBase.h" 5 #include "fastNLOConstants.h" 20 static bool CheckCoeffConstants(
const fastNLOCoeffBase* c,
bool quiet =
false);
21 virtual void Read(std::istream&table);
22 void ReadRest(std::istream& table);
23 virtual void Write(std::ostream& table,
int ITabVersionWrite);
25 virtual void Print(
int iprint)
const;
32 virtual void MultiplyBin(
unsigned int iObsIdx,
double fact);
33 virtual void MultiplyBinProc(
unsigned int iObsIdx,
unsigned int iProc,
double fact);
35 virtual void EraseBin(
unsigned int iObsIdx);
42 int GetNScalevar()
const {
return Nscalevar[0];}
43 fastNLO::v1d GetAvailableScaleFactors()
const {
return ScaleFac[0]; }
44 double GetScaleFactor(
int iVar)
const {
45 if ( iVar >= (
int)ScaleFac[0].size() )
46 this->error[
"GetScaleFactor"]<<
"Scalevariation no. "<<iVar<<
" not available. There are only "<<GetNScalevar()<<
" available in this table."<< std::endl;
47 return ScaleFac[0][iVar];
50 double GetSigmaTilde(
int iObs,
int iSvar,
int ix,
int is,
int iN )
const {
return SigmaTilde[iObs][iSvar][ix][is][iN];}
51 double GetScaleNode(
int iObs,
int iSvar,
int iNode )
const {
return ScaleNode[iObs][0][iSvar][iNode]; }
52 std::vector < double > GetScaleNodes(
int iObs,
int iSvar)
const {
return ScaleNode[iObs][0][iSvar]; }
61 void ReadCoeffAddFix(std::istream& table);
63 std::vector < int > Nscalevar;
65 fastNLO::v2d ScaleFac;
66 fastNLO::v4d ScaleNode;
67 fastNLO::v5d SigmaTilde;
70 fastNLO::v2d AlphasTwoPi_v20;
72 fastNLO::v4d PdfSplLc1;
73 fastNLO::v4d PdfSplLc2;
virtual void NormalizeCoefficients(double wgt=1)
a Set number of events to wgt and re-normalize coefficients accordingly
Definition: fastNLOCoeffAddFix.cc:324
void ResizePdfLC()
Definition: fastNLOCoeffAddFix.cc:125
virtual void EraseBin(unsigned int iObsIdx)
Multiply coefficients of one observable bin a factor (idx starting from 0)
Definition: fastNLOCoeffAddFix.cc:418
bool IsCompatible(const fastNLOCoeffAddFix &other) const
Check for compatibility of two contributions for merging/adding.
Definition: fastNLOCoeffAddFix.cc:267
void ResizePdfSplLC()
Definition: fastNLOCoeffAddFix.cc:139
void ResizeSigmaTilde()
Definition: fastNLOCoeffAddFix.cc:101
virtual void MultiplyCoefficientsByConstant(double fact)
Multiply all coefficients of all bins by a constant factor.
Definition: fastNLOCoeffAddFix.cc:356
Definition: fastNLOCoeffBase.h:15
Definition: fastNLOCreate.h:22
bool IsCatenable(const fastNLOCoeffAddFix &other) const
Check for compatibility of two contributions for merging/adding.
Definition: fastNLOCoeffAddFix.cc:295
virtual void MultiplyBin(unsigned int iObsIdx, double fact)
Multiply coefficients of one bin a factor.
Definition: fastNLOCoeffAddFix.cc:363
Definition: fastNLOReader.h:17
virtual void Add(const fastNLOCoeffAddBase &other, fastNLO::EMerge moption=fastNLO::kMerge)
Definition: fastNLOCoeffAddFix.cc:175
virtual void Read(std::istream &table)
_____________________________________________________________________________________________________...
Definition: fastNLOCoeffAddFix.cc:50
virtual void Write(std::ostream &table, int ITabVersionWrite)
Definition: fastNLOCoeffAddFix.cc:158
virtual void MultiplyBinProc(unsigned int iObsIdx, unsigned int iProc, double fact)
Multiply coefficients of one bin and subprocess by a factor.
Definition: fastNLOCoeffAddFix.cc:370
int GetTotalScalevars() const
Definition: fastNLOCoeffAddFix.cc:241
Definition: fastNLOCoeffAddBase.h:57
Definition: fastNLOCoeffAddFix.h:8
virtual fastNLOCoeffAddFix * Clone() const
returns 'new' copy of this instance.
Definition: fastNLOCoeffAddFix.cc:43
int GetTotalScalenodes() const
Definition: fastNLOCoeffAddFix.cc:252
Definition: fastNLOTable.h:20
virtual void Clear()
Clear all coefficients and event counters.
Definition: fastNLOCoeffAddFix.cc:316