ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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 /**
18 \file RooUnblindOffset.cxx
19 \class RooUnblindOffset
20 \ingroup Roofit
21 
22 Implementation of BlindTools' offset blinding method
23 A RooUnblindOffset object is a real valued function
24 object, constructed from a blind value holder and a
25 set of unblinding parameters. When supplied to a PDF
26 in lieu of a regular parameter, the blind value holder
27 supplied to the unblinder objects will in a fit be minimized
28 to blind value corresponding to the actual minimum of the
29 parameter. The transformation is chosen such that the
30 the error on the blind parameters is indentical to that
31 of the unblind parameter
32 **/
33 
34 #include "RooFit.h"
35 
36 #include "RooArgSet.h"
37 #include "RooArgSet.h"
38 #include "RooUnblindOffset.h"
39 
40 
41 using namespace std;
42 
44 ;
45 
46 
47 
48 ////////////////////////////////////////////////////////////////////////////////
49 /// Default constructor
50 
52 {
53 }
54 
55 
56 
57 ////////////////////////////////////////////////////////////////////////////////
58 /// Constructor from a given RooAbsReal (to hold the blind value) and a set of blinding parameters
59 
61  const char *blindString, Double_t scale, RooAbsReal& cpasym)
62  : RooAbsHiddenReal(name,title),
63  _value("value","Offset blinded value",this,cpasym),
64  _blindEngine(blindString,RooBlindTools::full,0.,scale)
65 {
66 }
67 
68 
69 ////////////////////////////////////////////////////////////////////////////////
70 /// Constructor from a given RooAbsReal (to hold the blind value) and a set of blinding parameters
71 
73  const char *blindString, Double_t scale, RooAbsReal& cpasym,
74  RooAbsCategory& blindState)
75  : RooAbsHiddenReal(name,title,blindState),
76  _value("value","Offset blinded value",this,cpasym),
77  _blindEngine(blindString,RooBlindTools::full,0.,scale)
78 {
79 }
80 
81 
82 
83 ////////////////////////////////////////////////////////////////////////////////
84 /// Copy constructor
85 
87  RooAbsHiddenReal(other, name),
88  _value("asym",this,other._value),
89  _blindEngine(other._blindEngine)
90 {
91 }
92 
93 
94 
95 ////////////////////////////////////////////////////////////////////////////////
96 /// Destructor
97 
99 {
100 }
101 
102 
103 
104 ////////////////////////////////////////////////////////////////////////////////
105 /// Evaluate RooBlindTools unhide-offset method on blind value
106 
108 {
109  if (isHidden()) {
110  // Blinding is active for this event
112  } else {
113  // Blinding is not active for this event
114  return _value ;
115  }
116 }
117 
118 
119 
120 
121 
RooRealProxy _value
Double_t UnHideOffset(Double_t PrecisionBlind) const
Bool_t isHidden() const
virtual ~RooUnblindOffset()
Destructor.
virtual Double_t evaluate() const
Evaluate RooBlindTools unhide-offset method on blind value.
RooUnblindOffset()
Default constructor.
TPaveLabel title(3, 27.1, 15, 28.7,"ROOT Environment and Tools")
RooBlindTools _blindEngine
double Double_t
Definition: RtypesCore.h:55
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Definition: RooAbsReal.h:53
ClassImp(RooUnblindOffset)
#define name(a, b)
Definition: linkTestLib0.cpp:5
RooAbsHiddenReal is a base class for objects that want to hide their return value from interactive us...
Implementation of BlindTools' offset blinding method A RooUnblindOffset object is a real valued funct...
RooAbsCategory is the common abstract base class for objects that represent a discrete value with a f...