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

Comparing UserCode/auterman/SusyScan/PlotScript/TheLimits.cc (file contents):
Revision 1.4 by auterman, Sat Nov 27 12:22:28 2010 UTC vs.
Revision 1.8 by auterman, Sun Feb 13 14:39:33 2011 UTC

# Line 6 | Line 6
6   #include <iostream>
7   #include <cmath>
8  
9 + void TheLimits::Fill(int argc, char** argv)
10 + {
11 +   for (int i = 1; i<argc; ++i)
12 +   {
13 +     add( new SusyScan(argv[i]) );
14 +   }
15 + }
16 +
17 + void TheLimits::Fill(const std::string filelist)
18 + {
19 +   std::ifstream masses_file;
20 +   masses_file.open(filelist.c_str());
21 +   std::string file;
22 +   while (1) {
23 +      GeneratorMasses * p = new GeneratorMasses;
24 +      masses_file >> file;
25 +      if (!masses_file.good()) break;
26 +      add( new SusyScan(file));
27 +   }
28 +   //std::cout << filelist << ": "<< _scan.size() <<std::endl;
29 +   masses_file.close();
30 + }
31  
32   void TheLimits::match()
33   {
# Line 97 | Line 119 | void TheLimits::FillGeneratorMasses(std:
119                    >> p->MHp;
120  
121        if (!masses_file.good()) break;
122 +      //std::cout << p->Mzero<<", "<<p->Mhalf<<", "<<p->TanBeta<<std::endl;
123        if (fabs(p->Mu)!=1.) {
124           std::cerr << "check lines near m0=" << p->Mzero << ", m1/2=" << p->Mhalf << std::endl;
125           break;
# Line 104 | Line 127 | void TheLimits::FillGeneratorMasses(std:
127        _masses.push_back( p );
128     }
129   }
130 +
131 +
132 + void TheLimits::OverwriteLimits(std::string flag)
133 + {
134 +  for (std::vector<SusyScan*>::iterator it=_scan.begin();it!=_scan.end();++it){
135 +    if (flag=="ABCD_MHT") {
136 +      (*it)->ExpNsigLimit = 17.85;
137 +      (*it)->PLExpNsigLimit = 12.558;
138 +      (*it)->FCExpNsigLimit = 15.75;
139 +      (*it)->MCMCExpNsigLimit = 15.8085;
140 +      (*it)->ObsNsigLimit = 10.0637;
141 +      (*it)->PLObsNsigLimit = 4.22124;
142 +      (*it)->FCObsNsigLimit  = 0.75;
143 +      (*it)->MCMCObsNsigLimit  = 8.75403;
144 +    }
145 +    else if (flag=="ABCD_HT") {
146 +      (*it)->ExpNsigLimit = 24.0438;
147 +      (*it)->PLExpNsigLimit = 17.8537;
148 +      (*it)->FCExpNsigLimit = 22.05;
149 +      (*it)->MCMCExpNsigLimit = 20.781;
150 +      (*it)->ObsNsigLimit    = 18.24;
151 +      (*it)->PLObsNsigLimit = 9.70375;
152 +      (*it)->FCObsNsigLimit  = 11.85;
153 +      (*it)->MCMCObsNsigLimit  = 14.34;
154 +    }
155 +    
156 +    
157 +      (*it)->ExpXsecLimit    = (*it)->ExpNsigLimit * (*it)->Xsection / (*it)->signal;
158 +      (*it)->PLExpXsecLimit  = (*it)->PLExpNsigLimit  * (*it)->Xsection / (*it)->signal;
159 +      (*it)->FCExpXsecLimit  = (*it)->FCExpNsigLimit  * (*it)->Xsection / (*it)->signal;
160 +      (*it)->MCMCExpXsecLimit= (*it)->MCMCExpNsigLimit  * (*it)->Xsection / (*it)->signal;
161 +      (*it)->ObsXsecLimit    = (*it)->ObsNsigLimit  * (*it)->Xsection / (*it)->signal;
162 +      (*it)->PLObsXsecLimit  = (*it)->PLObsNsigLimit  * (*it)->Xsection / (*it)->signal;
163 +      (*it)->FCObsXsecLimit  = (*it)->FCObsNsigLimit   * (*it)->Xsection / (*it)->signal;
164 +      (*it)->MCMCObsXsecLimit= (*it)->MCMCObsNsigLimit  * (*it)->Xsection / (*it)->signal;
165 +    
166 +  
167 +  }
168 +
169 +
170 + }
171 +

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines