Logo ROOT  
Reference Guide
RooUnblindOffset.cxx
Go to the documentation of this file.
1/*****************************************************************************
2 * Project: RooFit *
3 * Package: RooFitModels *
4 * @(#)root/roofit:$Id$
5 * Authors: *
6 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8 * *
9 * Copyright (c) 2000-2005, Regents of the University of California *
10 * and Stanford University. All rights reserved. *
11 * *
12 * Redistribution and use in source and binary forms, *
13 * with or without modification, are permitted according to the terms *
14 * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15 *****************************************************************************/
16
17/** \class RooUnblindOffset
18 \ingroup Roofit
19
20Implementation of BlindTools' offset blinding method
21A RooUnblindOffset object is a real valued function
22object, constructed from a blind value holder and a
23set of unblinding parameters. When supplied to a PDF
24in lieu of a regular parameter, the blind value holder
25supplied to the unblinded objects will in a fit be minimized
26to blind value corresponding to the actual minimum of the
27parameter. The transformation is chosen such that the
28the error on the blind parameters is identical to that
29of the unblind parameter
30**/
31
32#include "RooArgSet.h"
33#include "RooUnblindOffset.h"
34
35using namespace std;
36
38
39////////////////////////////////////////////////////////////////////////////////
40/// Default constructor
41
43{
44}
45
46////////////////////////////////////////////////////////////////////////////////
47/// Constructor from a given RooAbsReal (to hold the blind value) and a set of blinding parameters
48
49RooUnblindOffset::RooUnblindOffset(const char *name, const char *title,
50 const char *blindString, double scale, RooAbsReal& cpasym)
51 : RooAbsHiddenReal(name,title),
52 _value("value","Offset blinded value",this,cpasym),
53 _blindEngine(blindString,RooBlindTools::full,0.,scale)
54{
55}
56
57////////////////////////////////////////////////////////////////////////////////
58/// Constructor from a given RooAbsReal (to hold the blind value) and a set of blinding parameters
59
60RooUnblindOffset::RooUnblindOffset(const char *name, const char *title,
61 const char *blindString, double scale, RooAbsReal& cpasym,
62 RooAbsCategory& blindState)
63 : RooAbsHiddenReal(name,title,blindState),
64 _value("value","Offset blinded value",this,cpasym),
65 _blindEngine(blindString,RooBlindTools::full,0.,scale)
66{
67}
68
69////////////////////////////////////////////////////////////////////////////////
70/// Copy constructor
71
73 RooAbsHiddenReal(other, name),
74 _value("asym",this,other._value),
75 _blindEngine(other._blindEngine)
76{
77}
78
79////////////////////////////////////////////////////////////////////////////////
80/// Destructor
81
83{
84}
85
86////////////////////////////////////////////////////////////////////////////////
87/// Evaluate RooBlindTools unhide-offset method on blind value
88
90{
91 if (isHidden()) {
92 // Blinding is active for this event
94 } else {
95 // Blinding is not active for this event
96 return _value ;
97 }
98}
#define ClassImp(name)
Definition: Rtypes.h:375
char name[80]
Definition: TGX11.cxx:110
A space to attach TBranches.
RooAbsHiddenReal is a base class for objects that want to hide their return value from interactive us...
bool isHidden() const
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Definition: RooAbsReal.h:62
double UnHideOffset(double PrecisionBlind) const
Implementation of BlindTools' offset blinding method A RooUnblindOffset object is a real valued funct...
RooBlindTools _blindEngine
~RooUnblindOffset() override
Destructor.
RooRealProxy _value
RooUnblindOffset()
Default constructor.
double evaluate() const override
Evaluate RooBlindTools unhide-offset method on blind value.