ROOT
6.16/01
Reference Guide
roofit
roofit
inc
RooBlindTools.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* Project: RooFit *
3
* Package: RooFitModels *
4
* File: $Id: RooBlindTools.h,v 1.10 2007/05/11 10:15:52 verkerke Exp $
5
* Authors: *
6
* AR, Aaron Roodman, Stanford University, roodman@slac.stanford.edu *
7
* WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.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
#ifndef ROO_BLIND_TOOLS
17
#define ROO_BLIND_TOOLS
18
19
// ---------------------
20
// -- Class Interface --
21
// ---------------------
22
23
#include "
Rtypes.h
"
24
#include "
TString.h
"
25
26
class
RooBlindTools
{
27
28
//--------------------
29
// Instance Members --
30
//--------------------
31
32
public
:
33
34
enum
blindMode
{
35
full
=0,
// blind both parameters and data
36
dataonly
// blind data only
37
38
};
39
40
public
:
41
42
// Constructors
43
RooBlindTools
() {} ;
44
45
RooBlindTools
46
(
const
char
*
stSeed
,
// blinding seed string
47
blindMode
Mode
=
full
,
// blinding mode
48
Double_t
centralValue=0.0,
// Central value for Precision measurements
49
Double_t
sigmaOffset=1.0,
// range for Offset
50
Bool_t
s2bMode=
kFALSE
// Use sin2beta modifications?
51
);
52
53
// Copy
54
RooBlindTools
(
const
RooBlindTools
& );
55
56
// Destructor
57
virtual
~RooBlindTools
( );
58
59
// Operators
60
61
Double_t
Randomizer
(
const
char
*StringAlphabet)
const
;
62
63
Double_t
PseudoRandom
(
Int_t
Seed)
const
;
64
65
Double_t
MakeOffset
(
const
char
*StringAlphabet)
const
;
66
67
Double_t
MakeGaussianOffset
(
const
char
*StringAlphabet)
const
;
68
69
Double_t
MakeSignFlip
(
const
char
*StringAlphabet)
const
;
70
71
Int_t
SignOfTag
(
Double_t
STag)
const
;
72
73
Double_t
HideDeltaZ
(
Double_t
DeltaZ,
Double_t
STag)
const
;
74
75
Double_t
HiDelZPdG
(
Double_t
DeltaZ,
Double_t
STag,
Double_t
PdG)
const
;
76
77
Double_t
UnHideDeltaZ
(
Double_t
DeltaZPrime,
Double_t
STag)
const
;
78
79
Double_t
UnHiDelZPdG
(
Double_t
DeltaZPrime,
Double_t
STag,
Double_t
PdG)
const
;
80
81
Double_t
HideAsym
(
Double_t
Asym)
const
;
82
83
Double_t
HiAsPdG
(
Double_t
Asym,
Double_t
PdG)
const
;
84
85
Double_t
UnHideAsym
(
Double_t
AsymPrime)
const
;
86
87
Double_t
UnHiAsPdG
(
Double_t
AsymPrime,
Double_t
PdG)
const
;
88
89
Double_t
HideDeltaM
(
Double_t
DeltaM)
const
;
90
91
Double_t
UnHideDeltaM
(
Double_t
DeltaMPrime)
const
;
92
93
Double_t
MysteryPhase
()
const
;
94
95
Double_t
RandomizeTag
(
Double_t
STag,
Int_t
EventNumber)
const
;
96
97
Double_t
HidePrecision
(
Double_t
Precision
)
const
;
98
99
Double_t
UnHidePrecision
(
Double_t
PrecisionPrime)
const
;
100
101
Double_t
HideOffset
(
Double_t
Precision
)
const
;
102
103
Double_t
UnHideOffset
(
Double_t
PrecisionBlind )
const
;
104
105
Double_t
HideUniform
(
Double_t
Precision
)
const
;
106
107
Double_t
UnHideUniform
(
Double_t
PrecisionBlind )
const
;
108
109
110
const
char
*
stSeed
()
const
{
return
_stSeed
;}
111
112
const
blindMode
&
mode
()
const
{
return
_mode
;}
113
114
void
setMode
(
blindMode
bmode) {
_mode
=bmode;}
115
116
Double_t
getPrecisionCentralValue
()
const
{
return
_PrecisionCentralValue
;}
117
118
Double_t
getPrecisionOffsetScale
()
const
{
return
_PrecisionOffsetScale
;}
119
120
private
:
121
122
// Friends
123
// Data members
124
125
TString
_stSeed
;
126
Double_t
_DeltaZOffset
;
127
Double_t
_DeltaZSignFlip
;
128
Double_t
_DeltaZScale
;
129
Double_t
_AsymOffset
;
130
Double_t
_AsymSignFlip
;
131
Double_t
_DeltaMScale
;
132
Double_t
_DeltaMOffset
;
133
Double_t
_MysteryPhase
;
134
Double_t
_STagConstant
;
135
Double_t
_PrecisionSignFlip
;
136
Double_t
_PrecisionOffsetScale
;
137
Double_t
_PrecisionOffset
;
138
Double_t
_PrecisionUniform
;
139
Double_t
_PrecisionCentralValue
;
140
blindMode
_mode
;
141
Bool_t
_s2bMode
;
142
143
// setup data members from string seed
144
void
setup
(
const
char
*
stSeed
);
145
146
protected
:
147
148
// Helper functions
149
ClassDef
(
RooBlindTools
,1)
// Root implementation of BlindTools
150
};
151
152
#endif
Int_t
int Int_t
Definition:
RtypesCore.h:41
kFALSE
const Bool_t kFALSE
Definition:
RtypesCore.h:88
Bool_t
bool Bool_t
Definition:
RtypesCore.h:59
Double_t
double Double_t
Definition:
RtypesCore.h:55
Rtypes.h
ClassDef
#define ClassDef(name, id)
Definition:
Rtypes.h:324
TString.h
RooBlindTools
Definition:
RooBlindTools.h:26
RooBlindTools::_DeltaMScale
Double_t _DeltaMScale
Definition:
RooBlindTools.h:131
RooBlindTools::HiAsPdG
Double_t HiAsPdG(Double_t Asym, Double_t PdG) const
Definition:
RooBlindTools.cxx:201
RooBlindTools::_DeltaMOffset
Double_t _DeltaMOffset
Definition:
RooBlindTools.h:132
RooBlindTools::_MysteryPhase
Double_t _MysteryPhase
Definition:
RooBlindTools.h:133
RooBlindTools::~RooBlindTools
virtual ~RooBlindTools()
Destructor.
Definition:
RooBlindTools.cxx:103
RooBlindTools::HiDelZPdG
Double_t HiDelZPdG(Double_t DeltaZ, Double_t STag, Double_t PdG) const
Definition:
RooBlindTools.cxx:116
RooBlindTools::RandomizeTag
Double_t RandomizeTag(Double_t STag, Int_t EventNumber) const
Definition:
RooBlindTools.cxx:278
RooBlindTools::PseudoRandom
Double_t PseudoRandom(Int_t Seed) const
Definition:
RooBlindTools.cxx:339
RooBlindTools::blindMode
blindMode
Definition:
RooBlindTools.h:34
RooBlindTools::dataonly
@ dataonly
Definition:
RooBlindTools.h:36
RooBlindTools::full
@ full
Definition:
RooBlindTools.h:35
RooBlindTools::MakeSignFlip
Double_t MakeSignFlip(const char *StringAlphabet) const
Definition:
RooBlindTools.cxx:389
RooBlindTools::HideDeltaM
Double_t HideDeltaM(Double_t DeltaM) const
Definition:
RooBlindTools.cxx:173
RooBlindTools::MysteryPhase
Double_t MysteryPhase() const
Definition:
RooBlindTools.cxx:193
RooBlindTools::_DeltaZOffset
Double_t _DeltaZOffset
Definition:
RooBlindTools.h:126
RooBlindTools::_PrecisionCentralValue
Double_t _PrecisionCentralValue
Definition:
RooBlindTools.h:139
RooBlindTools::_PrecisionOffset
Double_t _PrecisionOffset
Definition:
RooBlindTools.h:137
RooBlindTools::HideAsym
Double_t HideAsym(Double_t Asym) const
Definition:
RooBlindTools.cxx:153
RooBlindTools::_PrecisionSignFlip
Double_t _PrecisionSignFlip
Definition:
RooBlindTools.h:135
RooBlindTools::_DeltaZScale
Double_t _DeltaZScale
Definition:
RooBlindTools.h:128
RooBlindTools::setup
void setup(const char *stSeed)
Definition:
RooBlindTools.cxx:66
RooBlindTools::RooBlindTools
RooBlindTools()
Definition:
RooBlindTools.h:43
RooBlindTools::HideDeltaZ
Double_t HideDeltaZ(Double_t DeltaZ, Double_t STag) const
Definition:
RooBlindTools.cxx:107
RooBlindTools::MakeOffset
Double_t MakeOffset(const char *StringAlphabet) const
Definition:
RooBlindTools.cxx:361
RooBlindTools::UnHiAsPdG
Double_t UnHiAsPdG(Double_t AsymPrime, Double_t PdG) const
Definition:
RooBlindTools.cxx:183
RooBlindTools::_s2bMode
Bool_t _s2bMode
Definition:
RooBlindTools.h:141
RooBlindTools::UnHideUniform
Double_t UnHideUniform(Double_t PrecisionBlind) const
Definition:
RooBlindTools.cxx:262
RooBlindTools::_AsymOffset
Double_t _AsymOffset
Definition:
RooBlindTools.h:129
RooBlindTools::getPrecisionCentralValue
Double_t getPrecisionCentralValue() const
Definition:
RooBlindTools.h:116
RooBlindTools::UnHiDelZPdG
Double_t UnHiDelZPdG(Double_t DeltaZPrime, Double_t STag, Double_t PdG) const
Definition:
RooBlindTools.cxx:134
RooBlindTools::_mode
blindMode _mode
Definition:
RooBlindTools.h:140
RooBlindTools::_stSeed
TString _stSeed
Definition:
RooBlindTools.h:125
RooBlindTools::getPrecisionOffsetScale
Double_t getPrecisionOffsetScale() const
Definition:
RooBlindTools.h:118
RooBlindTools::_PrecisionOffsetScale
Double_t _PrecisionOffsetScale
Definition:
RooBlindTools.h:136
RooBlindTools::setMode
void setMode(blindMode bmode)
Definition:
RooBlindTools.h:114
RooBlindTools::_AsymSignFlip
Double_t _AsymSignFlip
Definition:
RooBlindTools.h:130
RooBlindTools::_STagConstant
Double_t _STagConstant
Definition:
RooBlindTools.h:134
RooBlindTools::stSeed
const char * stSeed() const
Definition:
RooBlindTools.h:110
RooBlindTools::SignOfTag
Int_t SignOfTag(Double_t STag) const
Definition:
RooBlindTools.cxx:404
RooBlindTools::_PrecisionUniform
Double_t _PrecisionUniform
Definition:
RooBlindTools.h:138
RooBlindTools::UnHideDeltaM
Double_t UnHideDeltaM(Double_t DeltaMPrime) const
Definition:
RooBlindTools.cxx:163
RooBlindTools::HideUniform
Double_t HideUniform(Double_t Precision) const
Definition:
RooBlindTools.cxx:270
RooBlindTools::mode
const blindMode & mode() const
Definition:
RooBlindTools.h:112
RooBlindTools::HidePrecision
Double_t HidePrecision(Double_t Precision) const
Definition:
RooBlindTools.cxx:229
RooBlindTools::_DeltaZSignFlip
Double_t _DeltaZSignFlip
Definition:
RooBlindTools.h:127
RooBlindTools::UnHidePrecision
Double_t UnHidePrecision(Double_t PrecisionPrime) const
Definition:
RooBlindTools.cxx:211
RooBlindTools::UnHideDeltaZ
Double_t UnHideDeltaZ(Double_t DeltaZPrime, Double_t STag) const
Definition:
RooBlindTools.cxx:125
RooBlindTools::MakeGaussianOffset
Double_t MakeGaussianOffset(const char *StringAlphabet) const
Definition:
RooBlindTools.cxx:371
RooBlindTools::UnHideAsym
Double_t UnHideAsym(Double_t AsymPrime) const
Definition:
RooBlindTools.cxx:143
RooBlindTools::HideOffset
Double_t HideOffset(Double_t Precision) const
Definition:
RooBlindTools.cxx:254
RooBlindTools::UnHideOffset
Double_t UnHideOffset(Double_t PrecisionBlind) const
Definition:
RooBlindTools.cxx:246
RooBlindTools::Randomizer
Double_t Randomizer(const char *StringAlphabet) const
Definition:
RooBlindTools.cxx:295
TString
Basic string class.
Definition:
TString.h:131
ROOT::Math::MCIntegration::Mode
Mode
Definition:
MCIntegrationTypes.h:49
RooFit::Precision
RooCmdArg Precision(Double_t prec)
Definition:
RooGlobalFunc.cxx:48