ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/auterman/SusyScan/PlotScript/SusyScan.cc
(Generate patch)

Comparing UserCode/auterman/SusyScan/PlotScript/SusyScan.cc (file contents):
Revision 1.4 by auterman, Sat Jan 29 11:00:19 2011 UTC vs.
Revision 1.8 by auterman, Wed Jun 22 15:03:36 2011 UTC

# Line 1 | Line 1
1   #include "SusyScan.h"
2   #include "ConfigFile.h"
3  
4 +
5 + SusyScan::SusyScan()
6 + {
7 +  SetPtr();
8 +  for (std::vector<double*>::iterator it=p.begin(); it!=p.end(); ++it)
9 +    **it = 0.;
10 + }
11 + SusyScan::SusyScan(const SusyScan& c)
12 + {
13 +  SetPtr();
14 +  //std::cout<<Mzero<<"=m0, "<<Mhalf <<"=m12, " <<p.size()<<"<-this, c:"<<c.p.size()<<std::endl;
15 +
16 +  std::vector<double*>::iterator it=p.begin();
17 +  std::vector<double*>::const_iterator ct=c.p.begin();
18 +  for (; ct!=c.p.end(); ++it, ++ct)
19 +    **it = **ct;
20 + }
21 +
22 +
23   SusyScan::SusyScan(std::string filename)
24   {
25 +  SetPtr();
26    ConfigFile config(filename);
27 <  Mzero         = config.read<double>("Mzero", 0);
28 <  Mhalf         = config.read<double>("Mhalf", 0);
27 >  Mzero         = config.read<double>("Mzero", 0);
28 >  Mhalf         = config.read<double>("Mhalf", 0);
29    Mu            = config.read<double>("Mu", 0);
30    TanBeta       = config.read<double>("TanBeta", 0);
31    Azero         = config.read<double>("Azero", 0);
# Line 13 | Line 33 | SusyScan::SusyScan(std::string filename)
33    background    = config.read<double>("background", 0);
34    background_uncertainty = config.read<double>("background.uncertainty", 0);
35    data          = config.read<double>("data", 0);
36 <  signal        = config.read<double>("signal", 0);
37 <  signal_uncertainty = config.read<double>("signal.uncertainty", 0);
36 >  signal_JEC_UP         = config.read<double>("signal.JEC_.UP", 0);
37 >  signal_JEC_DN         = config.read<double>("signal.JEC_.DN", 0);
38 >  signal_MuIso_UP       = config.read<double>("signal.MuIso_.UP", 0);
39 >  signal_MuIso_DN       = config.read<double>("signal.MuIso_.DN", 0);
40 >  signal_kfactor_UP     = config.read<double>("signal.kFactorUP", 0);
41 >  signal_kfactor_DN     = config.read<double>("signal.kFactorDN", 0);
42 >  signal_PDF_UP         = config.read<double>("signal.PDF.UP", 0);
43 >  signal_PDF_DN         = config.read<double>("signal.PDF.DN", 0);
44 >  signal_XSPDF_UP       = config.read<double>("signal.PDFXsec.UP", 0);
45 >  signal_XSPDF_DN       = config.read<double>("signal.PDFXsec.DN", 0);
46 >  signal_kfactor        = config.read<double>("signal.kFactor", 0);
47 >
48 >  signal_contamination  = config.read<double>("signal.LO.signalregion.IsoMuon", 0) +
49 >                          config.read<double>("signal.LO.signalregion.Tau", 0);
50 >  signal        = config.read<double>("signal.LO", 0);
51 >  signal_uncertainty = config.read<double>("signal.LO.uncertainty", 0);
52    Xsection      = config.read<double>("Xsection", 0);
53 <  ExpXsecLimit  = config.read<double>("ExpXsecLimit", 0);
54 <  ObsXsecLimit  = config.read<double>("ObsXsecLimit", 0);
55 <  ExpNsigLimit  = config.read<double>("ExpNsigLimit", 0);
56 <  ObsNsigLimit  = config.read<double>("ObsNsigLimit", 0);
57 <  lnQ_b_exp     = config.read<double>("-2lnQ_b@exp", 0);
58 <  lnQ_b_obs     = config.read<double>("-2lnQ_b@obs", 0);
59 <  lnQ_b_xsec    = config.read<double>("-2lnQ_b@xsec", 0);
60 <  lnQ_sb_exp    = config.read<double>("-2lnQ_sb@exp", 0);
61 <  lnQ_sb_obs    = config.read<double>("-2lnQ_sb@obs", 0);
62 <  lnQ_sb_xsec   = config.read<double>("-2lnQ_sb@xsec", 0);
63 <  CLb_b_exp     = config.read<double>("CLb_b@exp", 0);
64 <  CLb_b_obs     = config.read<double>("CLb_b@obs", 0);
65 <  CLb_b_xsec    = config.read<double>("CLb_b@xsec", 0);
66 <  CLs_exp       = config.read<double>("CLs@exp", 0);
67 <  CLs_obs       = config.read<double>("CLs@obs", 0);
68 <  CLs_xsec      = config.read<double>("CLs@xsec", 0);
69 <  CLs_b_exp     = config.read<double>("CLs_b@exp", 0);
70 <  CLs_b_obs     = config.read<double>("CLs_b@obs", 0);
71 <  CLs_b_xsec    = config.read<double>("CLs_b@xsec", 0);
72 <  CLs_b_n1_exp  = config.read<double>("CLs_b_n1@exp", 0);
73 <  CLs_b_n1_obs  = config.read<double>("CLs_b_n1@obs", 0);
74 <  CLs_b_n1_xsec = config.read<double>("CLs_b_n1@xsec", 0);
75 <  CLs_b_n2_exp  = config.read<double>("CLs_b_n2@exp", 0);
76 <  CLs_b_n2_obs  = config.read<double>("CLs_b_n2@obs", 0);
77 <  CLs_b_n2_xsec = config.read<double>("CLs_b_n2@xsec", 0);
78 <  CLs_b_p1_exp  = config.read<double>("CLs_b_p1@exp", 0);
79 <  CLs_b_p1_obs  = config.read<double>("CLs_b_p1@obs", 0);
80 <  CLs_b_p1_xsec = config.read<double>("CLs_b_p1@xsec", 0);
81 <  CLs_b_p2_exp  = config.read<double>("CLs_b_p2@exp", 0);
82 <  CLs_b_p2_obs  = config.read<double>("CLs_b_p2@obs", 0);
83 <  CLs_b_p2_xsec = config.read<double>("CLs_b_p2@xsec", 0);
84 <  CLsb_b_exp    = config.read<double>("CLsb_b@exp", 0);
85 <  CLsb_b_obs    = config.read<double>("CLsb_b@obs", 0);
86 <  CLsb_b_xsec   = config.read<double>("CLsb_b@xsec", 0);
87 <  PLExpXsecLimit= config.read<double>("RooSimpleProfile.xsec.ExpUpperLimit", 0);
88 <  PLObsXsecLimit= config.read<double>("RooSimpleProfile.xsec.ObsUpperLimit", 0);
89 <  PLExpNsigLimit= config.read<double>("RooSimpleProfile.signal.ExpUpperLimit", 0);
90 <  PLObsNsigLimit= config.read<double>("RooSimpleProfile.signal.ObsUpperLimit", 0);
91 <  FCExpXsecLimit= config.read<double>("RooFC.xsec.ExpUpperLimit", 0);
92 <  FCObsXsecLimit= config.read<double>("RooFC.xsec.ObsUpperLimit", 0);
93 <  FCExpNsigLimit= config.read<double>("RooFC.signal.ExpUpperLimit", 0);
94 <  FCObsNsigLimit= config.read<double>("RooFC.signal.ObsUpperLimit", 0);
95 <  MCMCExpXsecLimit= config.read<double>("RooMCMC.xsec.ExpUpperLimit", 0);
96 <  MCMCObsXsecLimit= config.read<double>("RooMCMC.xsec.ObsUpperLimit", 0);
97 <  MCMCExpNsigLimit= config.read<double>("RooMCMC.signal.ExpUpperLimit", 0);
98 <  MCMCObsNsigLimit= config.read<double>("RooMCMC.signal.ObsUpperLimit", 0);
53 >  ExpXsecLimit  = config.read<double>("LO.ExpXsecLimit", 0);
54 >  ObsXsecLimit  = config.read<double>("LO.ObsXsecLimit", 0);
55 >  ExpNsigLimit  = config.read<double>("LO.ExpNsigLimit", 0);
56 >  ObsNsigLimit  = config.read<double>("LO.ObsNsigLimit", 0);
57 >  lnQ_b_exp     = config.read<double>("LO.-2lnQ_b@exp", 0);
58 >  lnQ_b_obs     = config.read<double>("LO.-2lnQ_b@obs", 0);
59 >  lnQ_b_xsec    = config.read<double>("LO.-2lnQ_b@xsec", 0);
60 >  lnQ_sb_exp    = config.read<double>("LO.-2lnQ_sb@exp", 0);
61 >  lnQ_sb_obs    = config.read<double>("LO.-2lnQ_sb@obs", 0);
62 >  lnQ_sb_xsec   = config.read<double>("LO.-2lnQ_sb@xsec", 0);
63 >  CLb_b_exp     = config.read<double>("LO.CLb_b@exp", 0);
64 >  CLb_b_obs     = config.read<double>("LO.CLb_b@obs", 0);
65 >  CLb_b_xsec    = config.read<double>("LO.CLb_b@xsec", 0);
66 >  CLs_exp       = config.read<double>("LO.CLs@exp", 0);
67 >  CLs_obs       = config.read<double>("LO.CLs@obs", 0);
68 >  CLs_xsec      = config.read<double>("LO.CLs@xsec", 0);
69 >  CLs_bNoSig_xsec=config.read<double>("LO.CLs_b_DataNoSignalHyp@xsec", 0);
70 >  CLs_b_exp     = config.read<double>("LO.CLs_b@exp", 0);
71 >  CLs_b_obs     = config.read<double>("LO.CLs_b@obs", 0);
72 >  CLs_b_xsec    = config.read<double>("LO.CLs_b@xsec", 0);
73 >  CLs_b_n1_exp  = config.read<double>("LO.CLs_b_n1@exp", 0);
74 >  CLs_b_n1_obs  = config.read<double>("LO.CLs_b_n1@obs", 0);
75 >  CLs_b_n1_xsec = config.read<double>("LO.CLs_b_n1@xsec", 0);
76 >  CLs_b_n2_exp  = config.read<double>("LO.CLs_b_n2@exp", 0);
77 >  CLs_b_n2_obs  = config.read<double>("LO.CLs_b_n2@obs", 0);
78 >  CLs_b_n2_xsec = config.read<double>("LO.CLs_b_n2@xsec", 0);
79 >  CLs_b_p1_exp  = config.read<double>("LO.CLs_b_p1@exp", 0);
80 >  CLs_b_p1_obs  = config.read<double>("LO.CLs_b_p1@obs", 0);
81 >  CLs_b_p1_xsec = config.read<double>("LO.CLs_b_p1@xsec", 0);
82 >  CLs_b_p2_exp  = config.read<double>("LO.CLs_b_p2@exp", 0);
83 >  CLs_b_p2_obs  = config.read<double>("LO.CLs_b_p2@obs", 0);
84 >  CLs_b_p2_xsec = config.read<double>("LO.CLs_b_p2@xsec", 0);
85 >  CLsb_b_exp    = config.read<double>("LO.CLsb_b@exp", 0);
86 >  CLsb_b_obs    = config.read<double>("LO.CLsb_b@obs", 0);
87 >  CLsb_b_xsec   = config.read<double>("LO.CLsb_b@xsec", 0);
88 >  PLExpXsecLimit= config.read<double>("RooSimpleProfile.xsec.LO.ExpUpperLimit", 0);
89 >  PLObsXsecLimit= config.read<double>("RooSimpleProfile.xsec.LO.ObsUpperLimit", 0);
90 >  PLExpNsigLimit= config.read<double>("RooSimpleProfile.signal.LO.ExpUpperLimit", 0);
91 >  PLObsNsigLimit= config.read<double>("RooSimpleProfile.signal.LO.ObsUpperLimit", 0);
92 >  FCExpXsecLimit= config.read<double>("RooFC.xsec.LO.ExpUpperLimit", 0);
93 >  FCObsXsecLimit= config.read<double>("RooFC.xsec.LO.ObsUpperLimit", 0);
94 >  FCExpNsigLimit= config.read<double>("RooFC.signal.LO.ExpUpperLimit", 0);
95 >  FCObsNsigLimit= config.read<double>("RooFC.signal.LO.ObsUpperLimit", 0);
96 >  MCMCExpXsecLimit= config.read<double>("RooMCMC.xsec.LO.ExpUpperLimit", 0);
97 >  MCMCObsXsecLimit= config.read<double>("RooMCMC.xsec.LO.ObsUpperLimit", 0);
98 >  MCMCExpNsigLimit= config.read<double>("RooMCMC.signal.LO.ExpUpperLimit", 0);
99 >  MCMCObsNsigLimit= config.read<double>("RooMCMC.signal.LO.ObsUpperLimit", 0);
100 >
101 >  NLO_signal_contamination      = config.read<double>("signal.NLO.signalregion.IsoMuon", 0) +
102 >                                  config.read<double>("signal.NLO.signalregion.Tau", 0);
103 >  NLO_signal    = config.read<double>("signal.NLO", 0);
104 >  NLO_signal_uncertainty = config.read<double>("signal.NLO.uncertainty", 0);
105 >  NLO_ExpXsecLimit      = config.read<double>("NLO.ExpXsecLimit", 0);
106 >  NLO_ObsXsecLimit      = config.read<double>("NLO.ObsXsecLimit", 0);
107 >  NLO_ExpNsigLimit      = config.read<double>("NLO.ExpNsigLimit", 0);
108 >  NLO_ObsNsigLimit      = config.read<double>("NLO.ObsNsigLimit", 0);
109 >  NLO_lnQ_b_exp         = config.read<double>("NLO.-2lnQ_b@exp", 0);
110 >  NLO_lnQ_b_obs         = config.read<double>("NLO.-2lnQ_b@obs", 0);
111 >  NLO_lnQ_b_xsec        = config.read<double>("NLO.-2lnQ_b@xsec", 0);
112 >  NLO_lnQ_sb_exp        = config.read<double>("NLO.-2lnQ_sb@exp", 0);
113 >  NLO_lnQ_sb_obs        = config.read<double>("NLO.-2lnQ_sb@obs", 0);
114 >  NLO_lnQ_sb_xsec       = config.read<double>("NLO.-2lnQ_sb@xsec", 0);
115 >  NLO_CLb_b_exp         = config.read<double>("NLO.CLb_b@exp", 0);
116 >  NLO_CLb_b_obs         = config.read<double>("NLO.CLb_b@obs", 0);
117 >  NLO_CLb_b_xsec        = config.read<double>("NLO.CLb_b@xsec", 0);
118 >  NLO_CLs_exp   = config.read<double>("NLO.CLs@exp", 0);
119 >  NLO_CLs_obs   = config.read<double>("NLO.CLs@obs", 0);
120 >  NLO_CLs_xsec  = config.read<double>("NLO.CLs@xsec", 0);
121 >  NLOHybrid_CLs_xsec    = config.read<double>("NLOHybrid_CLs@xsec", 0);
122 >  NLOHybrid_CLs_xsec_error      = config.read<double>("NLOHybrid_CLs_error@xsec", 0);
123 >  NLO_CLs_bNoSig_xsec   = config.read<double>("NLO.CLs_b_DataNoSignalHyp@xsec", 0);
124 >  NLO_CLs_b_exp         = config.read<double>("NLO.CLs_b@exp", 0);
125 >  NLO_CLs_b_obs         = config.read<double>("NLO.CLs_b@obs", 0);
126 >  NLO_CLs_b_xsec        = config.read<double>("NLO.CLs_b@xsec", 0);
127 >  NLO_CLs_b_n1_exp      = config.read<double>("NLO.CLs_b_n1@exp", 0);
128 >  NLO_CLs_b_n1_obs      = config.read<double>("NLO.CLs_b_n1@obs", 0);
129 >  NLO_CLs_b_n1_xsec = config.read<double>("NLO.CLs_b_n1@xsec", 0);
130 >  NLO_CLs_b_n2_exp      = config.read<double>("NLO.CLs_b_n2@exp", 0);
131 >  NLO_CLs_b_n2_obs      = config.read<double>("NLO.CLs_b_n2@obs", 0);
132 >  NLO_CLs_b_n2_xsec     = config.read<double>("NLO.CLs_b_n2@xsec", 0);
133 >  NLO_CLs_b_p1_exp      = config.read<double>("NLO.CLs_b_p1@exp", 0);
134 >  NLO_CLs_b_p1_obs      = config.read<double>("NLO.CLs_b_p1@obs", 0);
135 >  NLO_CLs_b_p1_xsec     = config.read<double>("NLO.CLs_b_p1@xsec", 0);
136 >  NLO_CLs_b_p2_exp      = config.read<double>("NLO.CLs_b_p2@exp", 0);
137 >  NLO_CLs_b_p2_obs      = config.read<double>("NLO.CLs_b_p2@obs", 0);
138 >  NLO_CLs_b_p2_xsec     = config.read<double>("NLO.CLs_b_p2@xsec", 0);
139 >  NLO_CLsb_b_exp        = config.read<double>("NLO.CLsb_b@exp", 0);
140 >  NLO_CLsb_b_obs        = config.read<double>("NLO.CLsb_b@obs", 0);
141 >  NLO_CLsb_b_xsec       = config.read<double>("NLO.CLsb_b@xsec", 0);
142 >  NLO_PLExpXsecLimit= config.read<double>("RooSimpleProfile.xsec.NLO.ExpUpperLimit", 0);
143 >  NLO_PLObsXsecLimit= config.read<double>("RooSimpleProfile.xsec.NLO.ObsUpperLimit", 0);
144 >  NLO_PLExpNsigLimit= config.read<double>("RooSimpleProfile.signal.NLO.ExpUpperLimit", 0);
145 >  NLO_PLObsNsigLimit= config.read<double>("RooSimpleProfile.signal.NLO.ObsUpperLimit", 0);
146 >  NLO_FCExpXsecLimit= config.read<double>("RooFC.xsec.NLO.ExpUpperLimit", 0);
147 >  NLO_FCObsXsecLimit= config.read<double>("RooFC.xsec.NLO.ObsUpperLimit", 0);
148 >  NLO_FCExpNsigLimit= config.read<double>("RooFC.signal.NLO.ExpUpperLimit", 0);
149 >  NLO_FCObsNsigLimit= config.read<double>("RooFC.signal.NLO.ObsUpperLimit", 0);
150 >  NLO_MCMCExpXsecLimit= config.read<double>("RooMCMC.xsec.NLO.ExpUpperLimit", 0);
151 >  NLO_MCMCObsXsecLimit= config.read<double>("RooMCMC.xsec.NLO.ObsUpperLimit", 0);
152 >  NLO_MCMCExpNsigLimit= config.read<double>("RooMCMC.signal.NLO.ExpUpperLimit", 0);
153 >  NLO_MCMCObsNsigLimit= config.read<double>("RooMCMC.signal.NLO.ObsUpperLimit", 0);
154 > }
155 >
156 > void SusyScan::SetPtr()
157 > {
158 >  if (p.size()!=0) return;
159 >  p.push_back( &Mzero);
160 >  p.push_back( &Mhalf);
161 >  p.push_back( &Mu);
162 >  p.push_back( &TanBeta);
163 >  p.push_back( &Azero);
164 >  p.push_back( &Run);
165 >  p.push_back( &data);
166 >  p.push_back( &Xsection);
167 >  p.push_back( &background);
168 >  p.push_back( &background_uncertainty);
169 >  p.push_back( &signal_JEC_UP);
170 >  p.push_back( &signal_JEC_DN);
171 >  p.push_back( &signal_MuIso_UP);
172 >  p.push_back( &signal_MuIso_DN);
173 >  p.push_back( &signal_kfactor_UP);
174 >  p.push_back( &signal_kfactor_DN);
175 >  p.push_back( &signal_PDF_UP);
176 >  p.push_back( &signal_PDF_DN);
177 >  p.push_back( &signal_XSPDF_UP);
178 >  p.push_back( &signal_XSPDF_DN);
179 >  p.push_back( &signal_kfactor);
180 >  p.push_back( &signal);
181 >  p.push_back( &signal_uncertainty);
182 >  p.push_back( &signal_contamination);
183 >  p.push_back( &ExpXsecLimit);
184 >  p.push_back( &ObsXsecLimit);
185 >  p.push_back( &ExpNsigLimit);
186 >  p.push_back( &ObsNsigLimit);
187 >  p.push_back( &lnQ_b_exp);
188 >  p.push_back( &lnQ_b_obs);
189 >  p.push_back( &lnQ_b_xsec);
190 >  p.push_back( &lnQ_sb_exp);
191 >  p.push_back( &lnQ_sb_obs);
192 >  p.push_back( &lnQ_sb_xsec);
193 >  p.push_back( &CLb_b_exp);
194 >  p.push_back( &CLb_b_obs);
195 >  p.push_back( &CLb_b_xsec);
196 >  p.push_back( &CLs_exp);
197 >  p.push_back( &CLs_obs);
198 >  p.push_back( &CLs_xsec);
199 >  p.push_back( &CLs_b_exp);
200 >  p.push_back( &CLs_bNoSig_xsec);
201 >  p.push_back( &CLs_b_obs);
202 >  p.push_back( &CLs_b_xsec);
203 >  p.push_back( &CLs_b_n1_exp);
204 >  p.push_back( &CLs_b_n1_obs);
205 >  p.push_back( &CLs_b_n1_xsec);
206 >  p.push_back( &CLs_b_n2_exp);
207 >  p.push_back( &CLs_b_n2_obs);
208 >  p.push_back( &CLs_b_n2_xsec);
209 >  p.push_back( &CLs_b_p1_exp);
210 >  p.push_back( &CLs_b_p1_obs);
211 >  p.push_back( &CLs_b_p1_xsec);
212 >  p.push_back( &CLs_b_p2_exp);
213 >  p.push_back( &CLs_b_p2_obs);
214 >  p.push_back( &CLs_b_p2_xsec);
215 >  p.push_back( &CLsb_b_exp);
216 >  p.push_back( &CLsb_b_obs);
217 >  p.push_back( &CLsb_b_xsec);
218 >  p.push_back( &PLExpXsecLimit);
219 >  p.push_back( &PLObsXsecLimit);
220 >  p.push_back( &PLExpNsigLimit);
221 >  p.push_back( &PLObsNsigLimit);
222 >  p.push_back( &FCExpXsecLimit);
223 >  p.push_back( &FCObsXsecLimit);
224 >  p.push_back( &FCExpNsigLimit);
225 >  p.push_back( &FCObsNsigLimit);
226 >  p.push_back( &MCMCExpXsecLimit);
227 >  p.push_back( &MCMCObsXsecLimit);
228 >  p.push_back( &MCMCExpNsigLimit);
229 >  p.push_back( &MCMCObsNsigLimit);
230 >  p.push_back( &NLO_signal);
231 >  p.push_back( &NLO_signal_uncertainty);
232 >  p.push_back( &NLO_signal_contamination);
233 >  p.push_back( &NLO_ExpXsecLimit);
234 >  p.push_back( &NLO_ObsXsecLimit);
235 >  p.push_back( &NLO_ExpNsigLimit);
236 >  p.push_back( &NLO_ObsNsigLimit);
237 >  p.push_back( &NLO_lnQ_b_exp);
238 >  p.push_back( &NLO_lnQ_b_obs);
239 >  p.push_back( &NLO_lnQ_b_xsec);
240 >  p.push_back( &NLO_lnQ_sb_exp);
241 >  p.push_back( &NLO_lnQ_sb_obs);
242 >  p.push_back( &NLO_lnQ_sb_xsec);
243 >  p.push_back( &NLO_CLb_b_exp);
244 >  p.push_back( &NLO_CLb_b_obs);
245 >  p.push_back( &NLO_CLb_b_xsec);
246 >  p.push_back( &NLO_CLs_exp);
247 >  p.push_back( &NLO_CLs_obs);
248 >  p.push_back( &NLOHybrid_CLs_xsec);
249 >  p.push_back( &NLOHybrid_CLs_xsec_error);
250 >  p.push_back( &NLO_CLs_xsec);
251 >  p.push_back( &NLO_CLs_bNoSig_xsec);
252 >  p.push_back( &NLO_CLs_b_exp);
253 >  p.push_back( &NLO_CLs_b_obs);
254 >  p.push_back( &NLO_CLs_b_xsec);
255 >  p.push_back( &NLO_CLs_b_n1_exp);
256 >  p.push_back( &NLO_CLs_b_n1_obs);
257 >  p.push_back( &NLO_CLs_b_n1_xsec);
258 >  p.push_back( &NLO_CLs_b_n2_exp);
259 >  p.push_back( &NLO_CLs_b_n2_obs);
260 >  p.push_back( &NLO_CLs_b_n2_xsec);
261 >  p.push_back( &NLO_CLs_b_p1_exp);
262 >  p.push_back( &NLO_CLs_b_p1_obs);
263 >  p.push_back( &NLO_CLs_b_p1_xsec);
264 >  p.push_back( &NLO_CLs_b_p2_exp);
265 >  p.push_back( &NLO_CLs_b_p2_obs);
266 >  p.push_back( &NLO_CLs_b_p2_xsec);
267 >  p.push_back( &NLO_CLsb_b_exp);
268 >  p.push_back( &NLO_CLsb_b_obs);
269 >  p.push_back( &NLO_CLsb_b_xsec);
270 >  p.push_back( &NLO_PLExpXsecLimit);
271 >  p.push_back( &NLO_PLObsXsecLimit);
272 >  p.push_back( &NLO_PLExpNsigLimit);
273 >  p.push_back( &NLO_PLObsNsigLimit);
274 >  p.push_back( &NLO_FCExpXsecLimit);
275 >  p.push_back( &NLO_FCObsXsecLimit);
276 >  p.push_back( &NLO_FCExpNsigLimit);
277 >  p.push_back( &NLO_FCObsNsigLimit);
278 >  p.push_back( &NLO_MCMCExpXsecLimit);
279 >  p.push_back( &NLO_MCMCObsXsecLimit);
280 >  p.push_back( &NLO_MCMCExpNsigLimit);
281 >  p.push_back( &NLO_MCMCObsNsigLimit);
282 >  p.push_back( &M1);
283 >  p.push_back( &M2);
284 >  p.push_back( &M3);
285 >  p.push_back( &MGL);
286 >  p.push_back( &MUL);
287 >  p.push_back( &MB1);
288 >  p.push_back( &MSN);
289 >  p.push_back( &MNTAU);
290 >  p.push_back( &MZ1);
291 >  p.push_back( &MW1);
292 >  p.push_back( &MHL);
293 >  p.push_back( &MUR);
294 >  p.push_back( &MB2);
295 >  p.push_back( &MEL);
296 >  p.push_back( &MTAU1);
297 >  p.push_back( &MZ2);
298 >  p.push_back( &MW2);
299 >  p.push_back( &MHH);
300 >  p.push_back( &MDL);
301 >  p.push_back( &MT1);
302 >  p.push_back( &MER);
303 >  p.push_back( &MTAU2);
304 >  p.push_back( &MZ3);
305 >  p.push_back( &MHA);
306 >  p.push_back( &MDR);
307 >  p.push_back( &MT2);
308 >  p.push_back( &MZ4);
309 >  p.push_back( &MHp);
310 >
311 > }
312 >
313 > const SusyScan SusyScan::operator*(const double f) const
314 > {
315 >  SusyScan res(*this);
316 >  for (std::vector<double*>::iterator it=res.p.begin(); it!=res.p.end(); ++it)
317 >    **it *= f;
318 >  return res;
319 > }
320 >
321 > const SusyScan SusyScan::operator+(const SusyScan& f) const
322 > {
323 >  SusyScan res(*this);
324 >  std::vector<double*>::iterator it=res.p.begin();
325 >  std::vector<double*>::const_iterator fi=  f.p.begin();
326 >  for (; it!=res.p.end(); ++it, ++fi)
327 >    **it += **fi;
328 >  return res;
329   }

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines