// Implementation of BlindTools' precision blinding method
// A RooUnblindPrecision object is a real valued function
// object, constructed from a blind value holder and a
// set of unblinding parameters. When supplied to a PDF
// in lieu of a regular parameter, the blind value holder
// supplied to the unblinder objects will in a fit be minimized
// to blind value corresponding to the actual minimum of the
// parameter. The transformation is chosen such that the
// the error on the blind parameters is indentical to that
// of the unblind parameter
// END_HTML
#include "RooFit.h"
#include "RooArgSet.h"
#include "RooArgSet.h"
#include "RooUnblindPrecision.h"
ClassImp(RooUnblindPrecision)
;
RooUnblindPrecision::RooUnblindPrecision() : _blindEngine("")
{
}
RooUnblindPrecision::RooUnblindPrecision(const char *name, const char *title,
const char *blindString, Double_t centralValue,
Double_t scale, RooAbsReal& value,
Bool_t sin2betaMode)
: RooAbsHiddenReal(name,title),
_value("value","Precision blinded value",this,value),
_blindEngine(blindString,RooBlindTools::full,centralValue,scale,sin2betaMode)
{
}
RooUnblindPrecision::RooUnblindPrecision(const char *name, const char *title,
const char *blindString, Double_t centralValue,
Double_t scale, RooAbsReal& value, RooAbsCategory& blindState,
Bool_t sin2betaMode)
: RooAbsHiddenReal(name,title,blindState),
_value("value","Precision blinded value",this,value),
_blindEngine(blindString,RooBlindTools::full,centralValue,scale,sin2betaMode)
{
}
RooUnblindPrecision::RooUnblindPrecision(const RooUnblindPrecision& other, const char* name) :
RooAbsHiddenReal(other, name),
_value("asym",this,other._value),
_blindEngine(other._blindEngine)
{
}
RooUnblindPrecision::~RooUnblindPrecision()
{
}
Double_t RooUnblindPrecision::evaluate() const
{
if (isHidden()) {
return _blindEngine.UnHidePrecision(_value);
} else {
return _value ;
}
}
RooUnblindPrecision.cxx:1 RooUnblindPrecision.cxx:2 RooUnblindPrecision.cxx:3 RooUnblindPrecision.cxx:4 RooUnblindPrecision.cxx:5 RooUnblindPrecision.cxx:6 RooUnblindPrecision.cxx:7 RooUnblindPrecision.cxx:8 RooUnblindPrecision.cxx:9 RooUnblindPrecision.cxx:10 RooUnblindPrecision.cxx:11 RooUnblindPrecision.cxx:12 RooUnblindPrecision.cxx:13 RooUnblindPrecision.cxx:14 RooUnblindPrecision.cxx:15 RooUnblindPrecision.cxx:16 RooUnblindPrecision.cxx:17 RooUnblindPrecision.cxx:18 RooUnblindPrecision.cxx:19 RooUnblindPrecision.cxx:20 RooUnblindPrecision.cxx:21 RooUnblindPrecision.cxx:22 RooUnblindPrecision.cxx:23 RooUnblindPrecision.cxx:24 RooUnblindPrecision.cxx:25 RooUnblindPrecision.cxx:26 RooUnblindPrecision.cxx:27 RooUnblindPrecision.cxx:28 RooUnblindPrecision.cxx:29 RooUnblindPrecision.cxx:30 RooUnblindPrecision.cxx:31 RooUnblindPrecision.cxx:32 RooUnblindPrecision.cxx:33 RooUnblindPrecision.cxx:34 RooUnblindPrecision.cxx:35 RooUnblindPrecision.cxx:36 RooUnblindPrecision.cxx:37 RooUnblindPrecision.cxx:38 RooUnblindPrecision.cxx:39 RooUnblindPrecision.cxx:40 RooUnblindPrecision.cxx:41 RooUnblindPrecision.cxx:42 RooUnblindPrecision.cxx:43 RooUnblindPrecision.cxx:44 RooUnblindPrecision.cxx:45 RooUnblindPrecision.cxx:46 RooUnblindPrecision.cxx:47 RooUnblindPrecision.cxx:48 RooUnblindPrecision.cxx:49 RooUnblindPrecision.cxx:50 RooUnblindPrecision.cxx:51 RooUnblindPrecision.cxx:52 RooUnblindPrecision.cxx:53 RooUnblindPrecision.cxx:54 RooUnblindPrecision.cxx:55 RooUnblindPrecision.cxx:56 RooUnblindPrecision.cxx:57 RooUnblindPrecision.cxx:58 RooUnblindPrecision.cxx:59 RooUnblindPrecision.cxx:60 RooUnblindPrecision.cxx:61 RooUnblindPrecision.cxx:62 RooUnblindPrecision.cxx:63 RooUnblindPrecision.cxx:64 RooUnblindPrecision.cxx:65 RooUnblindPrecision.cxx:66 RooUnblindPrecision.cxx:67 RooUnblindPrecision.cxx:68 RooUnblindPrecision.cxx:69 RooUnblindPrecision.cxx:70 RooUnblindPrecision.cxx:71 RooUnblindPrecision.cxx:72 RooUnblindPrecision.cxx:73 RooUnblindPrecision.cxx:74 RooUnblindPrecision.cxx:75 RooUnblindPrecision.cxx:76 RooUnblindPrecision.cxx:77 RooUnblindPrecision.cxx:78 RooUnblindPrecision.cxx:79 RooUnblindPrecision.cxx:80 RooUnblindPrecision.cxx:81 RooUnblindPrecision.cxx:82 RooUnblindPrecision.cxx:83 RooUnblindPrecision.cxx:84 RooUnblindPrecision.cxx:85 RooUnblindPrecision.cxx:86 RooUnblindPrecision.cxx:87 RooUnblindPrecision.cxx:88 RooUnblindPrecision.cxx:89 RooUnblindPrecision.cxx:90 RooUnblindPrecision.cxx:91 RooUnblindPrecision.cxx:92 RooUnblindPrecision.cxx:93 RooUnblindPrecision.cxx:94 RooUnblindPrecision.cxx:95 RooUnblindPrecision.cxx:96 RooUnblindPrecision.cxx:97 RooUnblindPrecision.cxx:98 RooUnblindPrecision.cxx:99 RooUnblindPrecision.cxx:100 RooUnblindPrecision.cxx:101 RooUnblindPrecision.cxx:102 RooUnblindPrecision.cxx:103 RooUnblindPrecision.cxx:104 RooUnblindPrecision.cxx:105 RooUnblindPrecision.cxx:106 RooUnblindPrecision.cxx:107 RooUnblindPrecision.cxx:108 RooUnblindPrecision.cxx:109 RooUnblindPrecision.cxx:110 RooUnblindPrecision.cxx:111 RooUnblindPrecision.cxx:112 RooUnblindPrecision.cxx:113 RooUnblindPrecision.cxx:114 RooUnblindPrecision.cxx:115 RooUnblindPrecision.cxx:116