Definition at line 18 of file ALEPH_2004_S5765862.cc.
Public Member Functions | |
ALEPH_2004_S5765862 () | |
void | init () |
void | analyze (const Event &e) |
void | finalize () |
virtual bool | isCompatible (PdgId beam1, PdgId beam2) const |
Is this analysis able to run on the supplied pair of beams? | |
virtual bool | isCompatible (const PdgIdPair &beams) const |
Is this analysis able to run on the PdgIdPair beams ? | |
AnalysisHandler & | handler () const |
Access the controlling AnalysisHandler object. | |
void | normalize (AIDA::IHistogram1D *&histo, double norm=1.0) |
void | scale (AIDA::IHistogram1D *&histo, double scale) |
Analysis & | setCrossSection (double xs) |
Set the cross section from the generator. | |
bool | needsCrossSection () const |
Return true if this analysis needs to know the process cross-section. | |
Metadata | |
Metadata is used for querying from the command line and also for building web pages and the analysis pages in the Rivet manual. | |
virtual const AnalysisInfo & | info () const |
Get the actual AnalysisInfo object in which all this metadata is stored. | |
virtual std::string | name () const |
Get the name of the analysis. | |
virtual std::string | spiresId () const |
Get a the SPIRES/Inspire ID code for this analysis. | |
virtual std::vector< std::string > | authors () const |
Names & emails of paper/analysis authors. | |
virtual std::string | summary () const |
Get a short description of the analysis. | |
virtual std::string | description () const |
Get a full description of the analysis. | |
virtual std::string | runInfo () const |
Information about the events needed as input for this analysis. | |
virtual std::string | experiment () const |
Experiment which performed and published this analysis. | |
virtual std::string | collider () const |
Collider on which the experiment ran. | |
virtual const std::vector < PdgIdPair > & | requiredBeams () const |
Return the pair of incoming beams required by this analysis. | |
virtual const std::vector < std::pair< double, double > > & | energies () const |
Sets of valid beam energy pairs, in GeV. | |
virtual std::string | year () const |
When the original experimental analysis was published. | |
virtual std::vector< std::string > | references () const |
Journal, and preprint references. | |
virtual std::string | bibKey () const |
BibTeX citation key for this article. | |
virtual std::string | bibTeX () const |
BibTeX citation entry for this article. | |
virtual std::string | status () const |
Whether this analysis is trusted (in any way!). | |
virtual std::vector< std::string > | todos () const |
Any work to be done on this analysis. | |
Run conditions | |
const ParticlePair & | beams () const |
Incoming beams for this run. | |
const PdgIdPair | beamIds () const |
Incoming beam IDs for this run. | |
double | sqrtS () const |
Centre of mass energy for this run. | |
Projection "getting" functions | |
std::set< ConstProjectionPtr > | getProjections () const |
Get the contained projections, including recursion. | |
template<typename PROJ> | |
const PROJ & | getProjection (const std::string &name) const |
Get the named projection, specifying return type via a template argument. | |
const Projection & | getProjection (const std::string &name) const |
Projection applying functions | |
template<typename PROJ> | |
const PROJ & | applyProjection (const Event &evt, const PROJ &proj) const |
Apply the supplied projection on event. | |
template<typename PROJ> | |
const PROJ & | applyProjection (const Event &evt, const Projection &proj) const |
Apply the supplied projection on event. | |
template<typename PROJ> | |
const PROJ & | applyProjection (const Event &evt, const std::string &name) const |
Apply the named projection on event. | |
Protected Member Functions | |
Log & | getLog () const |
Get a Log object based on the name() property of the calling analysis object. | |
double | crossSection () const |
Get the process cross-section in pb. Throws if this hasn't been set. | |
double | crossSectionPerEvent () const |
size_t | numEvents () const |
double | sumOfWeights () const |
Analysis & | setBeams (PdgId beam1, PdgId beam2) |
Analysis & | setNeedsCrossSection (bool needed) |
Declare whether this analysis needs to know the process cross-section from the generator. | |
ProjectionHandler & | getProjHandler () const |
Get a reference to the ProjectionHandler for this thread. | |
AIDA analysis infrastructure. | |
AIDA::IAnalysisFactory & | analysisFactory () |
Access the AIDA analysis factory of the controlling AnalysisHandler object. | |
AIDA::ITree & | tree () |
Access the AIDA tree of the controlling AnalysisHandler object. | |
AIDA::IHistogramFactory & | histogramFactory () |
Access the AIDA histogram factory of the controlling AnalysisHandler object. | |
AIDA::IDataPointSetFactory & | datapointsetFactory () |
Access the AIDA histogram factory of the controlling AnalysisHandler object. | |
const std::string | histoDir () const |
Get the canonical histogram "directory" path for this analysis. | |
const std::string | histoPath (const std::string &hname) const |
Get the canonical histogram path for the named histogram in this analysis. | |
Internal histogram booking (for use by Analysis sub-classes). | |
const BinEdges & | binEdges (const std::string &hname) const |
Get bin edges for a named histo (using ref AIDA caching). | |
const BinEdges & | binEdges (size_t datasetId, size_t xAxisId, size_t yAxisId) const |
Get bin edges for a numbered histo (using ref AIDA caching). | |
BinEdges | logBinEdges (size_t nbins, double lower, double upper) |
Get bin edges with logarithmic widths. | |
AIDA::IHistogram1D * | bookHistogram1D (const std::string &name, size_t nbins, double lower, double upper, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IHistogram1D * | bookHistogram1D (const std::string &name, const std::vector< double > &binedges, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IHistogram1D * | bookHistogram1D (const std::string &name, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IHistogram1D * | bookHistogram1D (size_t datasetId, size_t xAxisId, size_t yAxisId, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
Internal profile histogram booking (for use by Analysis sub-classes). | |
AIDA::IProfile1D * | bookProfile1D (const std::string &name, size_t nbins, double lower, double upper, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IProfile1D * | bookProfile1D (const std::string &name, const std::vector< double > &binedges, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IProfile1D * | bookProfile1D (const std::string &name, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IProfile1D * | bookProfile1D (size_t datasetId, size_t xAxisId, size_t yAxisId, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
Internal data point set booking (for use by Analysis sub-classes). | |
AIDA::IDataPointSet * | bookDataPointSet (const std::string &name, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IDataPointSet * | bookDataPointSet (const std::string &name, size_t npts, double lower, double upper, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
AIDA::IDataPointSet * | bookDataPointSet (size_t datasetId, size_t xAxisId, size_t yAxisId, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="") |
Projection registration functions | |
template<typename PROJ> | |
const PROJ & | addProjection (const PROJ &proj, const std::string &name) |
const Projection & | _addProjection (const Projection &proj, const std::string &name) |
Untemplated function to do the work... | |
Protected Attributes | |
string | _defaultname |
Name passed to constructor (used to find .info analysis data file, and as a fallback). | |
shared_ptr< AnalysisInfo > | _info |
Pointer to analysis metadata object. | |
bool | _allowProjReg |
Flag to forbid projection registration in analyses until the init phase. | |
Private Attributes | |
bool | _initialisedJets |
bool | _initialisedSpectra |
AIDA::IHistogram1D * | _h_xp |
AIDA::IHistogram1D * | _h_xi |
AIDA::IHistogram1D * | _h_xe |
AIDA::IHistogram1D * | _h_pTin |
AIDA::IHistogram1D * | _h_pTout |
AIDA::IHistogram1D * | _h_rapidityT |
AIDA::IHistogram1D * | _h_rapidityS |
AIDA::IHistogram1D * | _h_thrust |
AIDA::IHistogram1D * | _h_heavyjetmass |
AIDA::IHistogram1D * | _h_totaljetbroadening |
AIDA::IHistogram1D * | _h_widejetbroadening |
AIDA::IHistogram1D * | _h_cparameter |
AIDA::IHistogram1D * | _h_thrustmajor |
AIDA::IHistogram1D * | _h_thrustminor |
AIDA::IHistogram1D * | _h_jetmassdifference |
AIDA::IHistogram1D * | _h_aplanarity |
AIDA::IHistogram1D * | _h_planarity |
AIDA::IHistogram1D * | _h_oblateness |
AIDA::IHistogram1D * | _h_sphericity |
AIDA::IDataPointSet * | _h_R_Durham [6] |
AIDA::IHistogram1D * | _h_y_Durham [5] |
double | _weightedTotalChargedPartNum |
Friends | |
class | Projectionhandler |
ALEPH_2004_S5765862 | ( | ) | [inline] |
Definition at line 21 of file ALEPH_2004_S5765862.cc.
References Rivet::ELECTRON, Rivet::POSITRON, and Analysis::setBeams().
00022 : Analysis("ALEPH_2004_S5765862") , _initialisedJets(false), 00023 _initialisedSpectra(false), _weightedTotalChargedPartNum(0) 00024 { 00025 setBeams(ELECTRON, POSITRON); 00026 }
void init | ( | ) | [inline, virtual] |
Initialize this analysis object. A concrete class should here book all necessary histograms. An overridden function must make sure it first calls the base class function.
Implements Analysis.
Definition at line 31 of file ALEPH_2004_S5765862.cc.
References ALEPH_2004_S5765862::_h_aplanarity, ALEPH_2004_S5765862::_h_cparameter, ALEPH_2004_S5765862::_h_heavyjetmass, ALEPH_2004_S5765862::_h_jetmassdifference, ALEPH_2004_S5765862::_h_oblateness, ALEPH_2004_S5765862::_h_planarity, ALEPH_2004_S5765862::_h_pTin, ALEPH_2004_S5765862::_h_pTout, ALEPH_2004_S5765862::_h_R_Durham, ALEPH_2004_S5765862::_h_rapidityS, ALEPH_2004_S5765862::_h_rapidityT, ALEPH_2004_S5765862::_h_sphericity, ALEPH_2004_S5765862::_h_thrust, ALEPH_2004_S5765862::_h_thrustmajor, ALEPH_2004_S5765862::_h_thrustminor, ALEPH_2004_S5765862::_h_totaljetbroadening, ALEPH_2004_S5765862::_h_widejetbroadening, ALEPH_2004_S5765862::_h_xe, ALEPH_2004_S5765862::_h_xi, ALEPH_2004_S5765862::_h_xp, ALEPH_2004_S5765862::_h_y_Durham, ALEPH_2004_S5765862::_initialisedJets, ALEPH_2004_S5765862::_initialisedSpectra, ProjectionApplier::addProjection(), Analysis::bookDataPointSet(), Analysis::bookHistogram1D(), FastJets::DURHAM, Analysis::getLog(), Rivet::GeV, Analysis::sqrtS(), and Log::WARNING.
00031 { 00032 _initialisedJets = true; 00033 _initialisedSpectra = true; 00034 const FinalState fs; 00035 addProjection(fs, "FS"); 00036 addProjection(FastJets(fs, FastJets::DURHAM, 0.7), "DurhamJets"); 00037 00038 const Thrust thrust(fs); 00039 addProjection(thrust, "Thrust"); 00040 addProjection(Sphericity(fs), "Sphericity"); 00041 addProjection(ParisiTensor(fs), "Parisi"); 00042 addProjection(Hemispheres(thrust), "Hemispheres"); 00043 00044 const ChargedFinalState cfs; 00045 addProjection(Beam(), "Beams"); 00046 addProjection(cfs, "CFS"); 00047 addProjection(Thrust(cfs), "ChargedThrust"); 00048 addProjection(Sphericity(cfs), "ChargedSphericity"); 00049 00050 // Histos 00051 // offset for the event shapes and jets 00052 int offset = 0; 00053 switch (int(sqrtS()/GeV + 0.5)) { 00054 case 91: offset = 0; break; 00055 case 133: offset = 1; break; 00056 case 161: offset = 2; break; 00057 case 172: offset = 3; break; 00058 case 183: offset = 4; break; 00059 case 189: offset = 5; break; 00060 case 200: offset = 6; break; 00061 case 206: offset = 7; break; 00062 default: 00063 _initialisedJets = false; 00064 } 00065 // event shapes 00066 if(_initialisedJets) { 00067 _h_thrust = bookHistogram1D(offset+54, 1, 1); 00068 _h_heavyjetmass = bookHistogram1D(offset+62, 1, 1); 00069 _h_totaljetbroadening = bookHistogram1D(offset+70, 1, 1); 00070 _h_widejetbroadening = bookHistogram1D(offset+78, 1, 1); 00071 _h_cparameter = bookHistogram1D(offset+86, 1, 1); 00072 _h_thrustmajor = bookHistogram1D(offset+94, 1, 1); 00073 _h_thrustminor = bookHistogram1D(offset+102, 1, 1); 00074 _h_jetmassdifference = bookHistogram1D(offset+110, 1, 1); 00075 _h_aplanarity = bookHistogram1D(offset+118, 1, 1); 00076 _h_planarity = offset==0 ? NULL : bookHistogram1D(offset+125, 1, 1); 00077 _h_oblateness = bookHistogram1D(offset+133, 1, 1); 00078 _h_sphericity = bookHistogram1D(offset+141, 1, 1); 00079 00080 // Durham n->m jet resolutions 00081 _h_y_Durham[0] = bookHistogram1D(offset+149, 1, 1); // y12 d149 ... d156 00082 _h_y_Durham[1] = bookHistogram1D(offset+157, 1, 1); // y23 d157 ... d164 00083 if (offset<6) { // there is no y34, y45 and y56 for 200 gev 00084 _h_y_Durham[2] = bookHistogram1D(offset+165, 1, 1); // y34 d165 ... d172, but not 171 00085 _h_y_Durham[3] = bookHistogram1D(offset+173, 1, 1); // y45 d173 ... d179 00086 _h_y_Durham[4] = bookHistogram1D(offset+180, 1, 1); // y56 d180 ... d186 00087 } 00088 else if (offset==6) { 00089 _h_y_Durham[2] = NULL; 00090 _h_y_Durham[3] = NULL; 00091 _h_y_Durham[4] = NULL; 00092 } 00093 else if (offset==7) { 00094 _h_y_Durham[2] = bookHistogram1D(172, 1, 1); 00095 _h_y_Durham[3] = bookHistogram1D(179, 1, 1); 00096 _h_y_Durham[4] = bookHistogram1D(186, 1, 1); 00097 } 00098 00099 // Durham n-jet fractions 00100 _h_R_Durham[0] = bookDataPointSet(offset+187, 1, 1); // R1 d187 ... d194 00101 _h_R_Durham[1] = bookDataPointSet(offset+195, 1, 1); // R2 d195 ... d202 00102 _h_R_Durham[2] = bookDataPointSet(offset+203, 1, 1); // R3 d203 ... d210 00103 _h_R_Durham[3] = bookDataPointSet(offset+211, 1, 1); // R4 d211 ... d218 00104 _h_R_Durham[4] = bookDataPointSet(offset+219, 1, 1); // R5 d219 ... d226 00105 _h_R_Durham[5] = bookDataPointSet(offset+227, 1, 1); // R>=6 d227 ... d234 00106 } 00107 // offset for the charged particle distributions 00108 offset = 0; 00109 switch (int(sqrtS()/GeV + 0.5)) { 00110 case 133: offset = 0; break; 00111 case 161: offset = 1; break; 00112 case 172: offset = 2; break; 00113 case 183: offset = 3; break; 00114 case 189: offset = 4; break; 00115 case 196: offset = 5; break; 00116 case 200: offset = 6; break; 00117 case 206: offset = 7; break; 00118 default: 00119 _initialisedSpectra=false; 00120 } 00121 if(_initialisedSpectra) { 00122 _h_xp = bookHistogram1D( 2+offset, 1, 1); 00123 _h_xi = bookHistogram1D(11+offset, 1, 1); 00124 _h_xe = bookHistogram1D(19+offset, 1, 1); 00125 _h_pTin = bookHistogram1D(27+offset, 1, 1); 00126 _h_pTout = offset!=7 ? NULL : bookHistogram1D(35, 1, 1); 00127 _h_rapidityT = bookHistogram1D(36+offset, 1, 1); 00128 _h_rapidityS = bookHistogram1D(44+offset, 1, 1); 00129 } 00130 00131 if(!_initialisedSpectra && !_initialisedJets) { 00132 getLog() << Log::WARNING 00133 << "CMS energy of events sqrt(s) = " << sqrtS()/GeV 00134 <<" doesn't match any available analysis energy ." << endl; 00135 } 00136 }
void analyze | ( | const Event & | event | ) | [inline, virtual] |
Analyze one event. A concrete class should here apply the necessary projections on the event and fill the relevant histograms. An overridden function must make sure it first calls the base class function.
Implements Analysis.
Definition at line 139 of file ALEPH_2004_S5765862.cc.
References ALEPH_2004_S5765862::_h_aplanarity, ALEPH_2004_S5765862::_h_cparameter, ALEPH_2004_S5765862::_h_heavyjetmass, ALEPH_2004_S5765862::_h_jetmassdifference, ALEPH_2004_S5765862::_h_oblateness, ALEPH_2004_S5765862::_h_planarity, ALEPH_2004_S5765862::_h_pTin, ALEPH_2004_S5765862::_h_pTout, ALEPH_2004_S5765862::_h_R_Durham, ALEPH_2004_S5765862::_h_rapidityS, ALEPH_2004_S5765862::_h_rapidityT, ALEPH_2004_S5765862::_h_sphericity, ALEPH_2004_S5765862::_h_thrust, ALEPH_2004_S5765862::_h_thrustmajor, ALEPH_2004_S5765862::_h_thrustminor, ALEPH_2004_S5765862::_h_totaljetbroadening, ALEPH_2004_S5765862::_h_widejetbroadening, ALEPH_2004_S5765862::_h_xe, ALEPH_2004_S5765862::_h_xi, ALEPH_2004_S5765862::_h_xp, ALEPH_2004_S5765862::_h_y_Durham, ALEPH_2004_S5765862::_initialisedJets, ALEPH_2004_S5765862::_initialisedSpectra, ALEPH_2004_S5765862::_weightedTotalChargedPartNum, Sphericity::aplanarity(), Analysis::beams(), Hemispheres::Bmax(), Hemispheres::Bsum(), ParisiTensor::C(), FastJets::clusterSeq(), Rivet::dot(), FourMomentum::E(), Rivet::fuzzyEquals(), Rivet::GeV, Vector::mod(), Particle::momentum(), Thrust::oblateness(), FinalState::particles(), Sphericity::planarity(), Hemispheres::scaledM2diff(), Hemispheres::scaledM2high(), Sphericity::sphericity(), Analysis::sqrtS(), Thrust::thrust(), Thrust::thrustAxis(), Thrust::thrustMajor(), Thrust::thrustMajorAxis(), Thrust::thrustMinor(), Thrust::thrustMinorAxis(), FourVector::vector3(), and Event::weight().
00139 { 00140 const double weight = e.weight(); 00141 if(_initialisedJets) { 00142 bool LEP1 = fuzzyEquals(sqrtS(),91.2*GeV,0.01); 00143 // event shapes 00144 const Thrust& thrust = applyProjection<Thrust>(e, "Thrust"); 00145 double thr = LEP1 ? thrust.thrust() : 1.0 - thrust.thrust(); 00146 _h_thrust->fill(thr,weight); 00147 _h_thrustmajor->fill(thrust.thrustMajor(),weight); 00148 if(LEP1) 00149 _h_thrustminor->fill(log(thrust.thrustMinor()),weight); 00150 else 00151 _h_thrustminor->fill(thrust.thrustMinor(),weight); 00152 _h_oblateness->fill(thrust.oblateness(),weight); 00153 00154 const Hemispheres& hemi = applyProjection<Hemispheres>(e, "Hemispheres"); 00155 _h_heavyjetmass->fill(hemi.scaledM2high(),weight); 00156 _h_jetmassdifference->fill(hemi.scaledM2diff(),weight); 00157 _h_totaljetbroadening->fill(hemi.Bsum(),weight); 00158 _h_widejetbroadening->fill(hemi.Bmax(),weight); 00159 00160 const ParisiTensor& parisi = applyProjection<ParisiTensor>(e, "Parisi"); 00161 _h_cparameter->fill(parisi.C(),weight); 00162 00163 const Sphericity& sphericity = applyProjection<Sphericity>(e, "Sphericity"); 00164 _h_aplanarity->fill(sphericity.aplanarity(),weight); 00165 if(_h_planarity) 00166 _h_planarity->fill(sphericity.planarity(),weight); 00167 _h_sphericity->fill(sphericity.sphericity(),weight); 00168 00169 // Jet rates 00170 const FastJets& durjet = applyProjection<FastJets>(e, "DurhamJets"); 00171 double log10e = log10(exp(1.)); 00172 if (durjet.clusterSeq()) { 00173 double logynm1=0.; 00174 double logyn; 00175 for (size_t i=0; i<5; ++i) { 00176 logyn = -log(durjet.clusterSeq()->exclusive_ymerge_max(i+1)); 00177 if (_h_y_Durham[i]) { 00178 _h_y_Durham[i]->fill(logyn, weight); 00179 } 00180 if(!LEP1) logyn *= log10e; 00181 for (int j = 0; j < _h_R_Durham[i]->size(); ++j) { 00182 IDataPoint* dp = _h_R_Durham[i]->point(j); 00183 double val = -dp->coordinate(0)->value()+dp->coordinate(0)->errorMinus(); 00184 if(val<=logynm1) break; 00185 if(val<logyn) { 00186 dp->coordinate(1)->setValue(dp->coordinate(1)->value()+weight); 00187 } 00188 } 00189 logynm1 = logyn; 00190 } 00191 for (int j = 0; j < _h_R_Durham[5]->size(); ++j) { 00192 IDataPoint* dp = _h_R_Durham[5]->point(j); 00193 double val = -dp->coordinate(0)->value()+dp->coordinate(0)->errorMinus(); 00194 if(val<=logynm1) break; 00195 dp->coordinate(1)->setValue(dp->coordinate(1)->value()+weight); 00196 } 00197 } 00198 if( !_initialisedSpectra) { 00199 const ChargedFinalState& cfs = applyProjection<ChargedFinalState>(e, "CFS"); 00200 const size_t numParticles = cfs.particles().size(); 00201 _weightedTotalChargedPartNum += numParticles * weight; 00202 } 00203 } 00204 00205 // charged particle distributions 00206 if(_initialisedSpectra) { 00207 const ChargedFinalState& cfs = applyProjection<ChargedFinalState>(e, "CFS"); 00208 const size_t numParticles = cfs.particles().size(); 00209 _weightedTotalChargedPartNum += numParticles * weight; 00210 const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams(); 00211 const double meanBeamMom = ( beams.first.momentum().vector3().mod() + 00212 beams.second.momentum().vector3().mod() ) / 2.0; 00213 const Thrust& cthrust = applyProjection<Thrust>(e, "ChargedThrust"); 00214 const Sphericity& csphere = applyProjection<Sphericity>(e, "ChargedSphericity"); 00215 foreach (const Particle& p, cfs.particles()) { 00216 const double xp = p.momentum().vector3().mod()/meanBeamMom; 00217 _h_xp->fill(xp , weight); 00218 const double logxp = -std::log(xp); 00219 _h_xi->fill(logxp, weight); 00220 const double xe = p.momentum().E()/meanBeamMom; 00221 _h_xe->fill(xe , weight); 00222 const double pTinT = dot(p.momentum().vector3(), cthrust.thrustMajorAxis()); 00223 const double pToutT = dot(p.momentum().vector3(), cthrust.thrustMinorAxis()); 00224 _h_pTin->fill(fabs(pTinT/GeV), weight); 00225 if(_h_pTout) _h_pTout->fill(fabs(pToutT/GeV), weight); 00226 const double momT = dot(cthrust.thrustAxis() ,p.momentum().vector3()); 00227 const double rapidityT = 0.5 * std::log((p.momentum().E() + momT) / 00228 (p.momentum().E() - momT)); 00229 _h_rapidityT->fill(rapidityT, weight); 00230 const double momS = dot(csphere.sphericityAxis(),p.momentum().vector3()); 00231 const double rapidityS = 0.5 * std::log((p.momentum().E() + momS) / 00232 (p.momentum().E() - momS)); 00233 _h_rapidityS->fill(rapidityS, weight); 00234 } 00235 } 00236 }
void finalize | ( | ) | [inline, virtual] |
Finalize this analysis object. A concrete class should here make all necessary operations on the histograms. Writing the histograms to a file is, however, done by the Rivet class. An overridden function must make sure it first calls the base class function.
Implements Analysis.
Definition at line 238 of file ALEPH_2004_S5765862.cc.
References ALEPH_2004_S5765862::_h_aplanarity, ALEPH_2004_S5765862::_h_cparameter, ALEPH_2004_S5765862::_h_heavyjetmass, ALEPH_2004_S5765862::_h_jetmassdifference, ALEPH_2004_S5765862::_h_oblateness, ALEPH_2004_S5765862::_h_planarity, ALEPH_2004_S5765862::_h_pTin, ALEPH_2004_S5765862::_h_pTout, ALEPH_2004_S5765862::_h_R_Durham, ALEPH_2004_S5765862::_h_rapidityS, ALEPH_2004_S5765862::_h_rapidityT, ALEPH_2004_S5765862::_h_sphericity, ALEPH_2004_S5765862::_h_thrust, ALEPH_2004_S5765862::_h_thrustmajor, ALEPH_2004_S5765862::_h_thrustminor, ALEPH_2004_S5765862::_h_totaljetbroadening, ALEPH_2004_S5765862::_h_widejetbroadening, ALEPH_2004_S5765862::_h_xe, ALEPH_2004_S5765862::_h_xi, ALEPH_2004_S5765862::_h_xp, ALEPH_2004_S5765862::_h_y_Durham, ALEPH_2004_S5765862::_initialisedJets, ALEPH_2004_S5765862::_initialisedSpectra, ALEPH_2004_S5765862::_weightedTotalChargedPartNum, Analysis::bookDataPointSet(), Rivet::fuzzyEquals(), Rivet::PID::n, Analysis::normalize(), Analysis::scale(), Analysis::sqrtS(), and Analysis::sumOfWeights().
00238 { 00239 if(!_initialisedJets && !_initialisedSpectra) return; 00240 00241 if (_initialisedJets) { 00242 normalize(_h_thrust); 00243 normalize(_h_heavyjetmass); 00244 normalize(_h_totaljetbroadening); 00245 normalize(_h_widejetbroadening); 00246 normalize(_h_cparameter); 00247 normalize(_h_thrustmajor); 00248 normalize(_h_thrustminor); 00249 normalize(_h_jetmassdifference); 00250 normalize(_h_aplanarity); 00251 if(_h_planarity) normalize(_h_planarity); 00252 normalize(_h_oblateness); 00253 normalize(_h_sphericity); 00254 00255 for (size_t N=1; N<7; ++N) { 00256 for (int i = 0; i < _h_R_Durham[N-1]->size(); ++i) { 00257 _h_R_Durham[N-1]->point(i)->coordinate(1)-> 00258 setValue(_h_R_Durham[N-1]->point(i)->coordinate(1)->value()/sumOfWeights()); 00259 } 00260 } 00261 00262 for (size_t n = 0; n < 5; ++n) { 00263 if (_h_y_Durham[n]) { 00264 scale(_h_y_Durham[n], 1.0/sumOfWeights()); 00265 } 00266 } 00267 } 00268 00269 const double avgNumParts = _weightedTotalChargedPartNum / sumOfWeights(); 00270 AIDA::IDataPointSet * mult = bookDataPointSet(1, 1, 1); 00271 for (int i = 0; i < mult->size(); ++i) { 00272 if (fuzzyEquals(sqrtS(), mult->point(i)->coordinate(0)->value(), 0.01)) { 00273 mult->point(i)->coordinate(1)->setValue(avgNumParts); 00274 } 00275 } 00276 00277 if (_initialisedSpectra) { 00278 normalize(_h_xp, avgNumParts); 00279 normalize(_h_xi, avgNumParts); 00280 normalize(_h_xe, avgNumParts); 00281 normalize(_h_pTin , avgNumParts); 00282 if (_h_pTout) normalize(_h_pTout, avgNumParts); 00283 normalize(_h_rapidityT, avgNumParts); 00284 normalize(_h_rapidityS, avgNumParts); 00285 } 00286 }
const AnalysisInfo & info | ( | ) | const [virtual, inherited] |
Get the actual AnalysisInfo object in which all this metadata is stored.
Definition at line 126 of file Analysis.cc.
References Analysis::_info.
Referenced by Analysis::energies(), and Analysis::requiredBeams().
string name | ( | ) | const [virtual, inherited] |
Get the name of the analysis.
By default this is computed by combining the results of the experiment, year and Spires ID metadata methods and you should only override it if there's a good reason why those won't work.
Implements ProjectionApplier.
Definition at line 131 of file Analysis.cc.
References Analysis::_defaultname, and Analysis::_info.
Referenced by Analysis::_cacheBinEdges(), Analysis::_cacheXAxisData(), Analysis::_makeHistoDir(), Analysis::crossSection(), Analysis::getLog(), Analysis::histoDir(), Analysis::normalize(), HistoHandler::registerAnalysisObject(), and Analysis::scale().
00131 { 00132 if (_info && !_info->name().empty()) return _info->name(); 00133 return _defaultname; 00134 }
string spiresId | ( | ) | const [virtual, inherited] |
Get a the SPIRES/Inspire ID code for this analysis.
Definition at line 136 of file Analysis.cc.
References Analysis::_info.
vector< string > authors | ( | ) | const [virtual, inherited] |
Names & emails of paper/analysis authors.
Names and email of authors in 'NAME <EMAIL>' format. The first name in the list should be the primary contact person.
Definition at line 141 of file Analysis.cc.
References Analysis::_info.
string summary | ( | ) | const [virtual, inherited] |
Get a short description of the analysis.
Short (one sentence) description used as an index entry. Use description() to provide full descriptive paragraphs of analysis details.
Definition at line 146 of file Analysis.cc.
References Analysis::_info.
string description | ( | ) | const [virtual, inherited] |
Get a full description of the analysis.
Full textual description of this analysis, what it is useful for, what experimental techniques are applied, etc. Should be treated as a chunk of restructuredText (http://docutils.sourceforge.net/rst.html), with equations to be rendered as LaTeX with amsmath operators.
Definition at line 151 of file Analysis.cc.
References Analysis::_info.
string runInfo | ( | ) | const [virtual, inherited] |
Information about the events needed as input for this analysis.
Event types, energies, kinematic cuts, particles to be considered stable, etc. etc. Should be treated as a restructuredText bullet list (http://docutils.sourceforge.net/rst.html)
Definition at line 156 of file Analysis.cc.
References Analysis::_info.
string experiment | ( | ) | const [virtual, inherited] |
Experiment which performed and published this analysis.
Definition at line 165 of file Analysis.cc.
References Analysis::_info.
string collider | ( | ) | const [virtual, inherited] |
Collider on which the experiment ran.
Definition at line 170 of file Analysis.cc.
References Analysis::_info.
const vector< PdgIdPair > & requiredBeams | ( | ) | const [virtual, inherited] |
Return the pair of incoming beams required by this analysis.
Definition at line 205 of file Analysis.cc.
References AnalysisInfo::beams(), and Analysis::info().
Referenced by Analysis::isCompatible().
00205 { 00206 return info().beams(); 00207 }
const std::vector< std::pair< double, double > > & energies | ( | ) | const [virtual, inherited] |
Sets of valid beam energy pairs, in GeV.
Definition at line 161 of file Analysis.cc.
References AnalysisInfo::energies(), and Analysis::info().
00161 { 00162 return info().energies(); 00163 }
string year | ( | ) | const [virtual, inherited] |
When the original experimental analysis was published.
When the refereed paper on which this is based was published, according to SPIRES.
Definition at line 175 of file Analysis.cc.
References Analysis::_info.
vector< string > references | ( | ) | const [virtual, inherited] |
Journal, and preprint references.
Definition at line 180 of file Analysis.cc.
References Analysis::_info.
string bibKey | ( | ) | const [virtual, inherited] |
BibTeX citation key for this article.
Definition at line 185 of file Analysis.cc.
References Analysis::_info.
string bibTeX | ( | ) | const [virtual, inherited] |
BibTeX citation entry for this article.
Definition at line 190 of file Analysis.cc.
References Analysis::_info.
string status | ( | ) | const [virtual, inherited] |
Whether this analysis is trusted (in any way!).
Definition at line 195 of file Analysis.cc.
References Analysis::_info.
vector< string > todos | ( | ) | const [virtual, inherited] |
Any work to be done on this analysis.
Definition at line 200 of file Analysis.cc.
References Analysis::_info.
const ParticlePair & beams | ( | ) | const [inherited] |
Incoming beams for this run.
Definition at line 79 of file Analysis.cc.
References AnalysisHandler::beams(), and Analysis::handler().
Referenced by OPAL_1998_S3780481::analyze(), DELPHI_2002_069_CONF_603::analyze(), DELPHI_1995_S3137023::analyze(), BELLE_2006_S6265367::analyze(), ALEPH_2004_S5765862::analyze(), ALEPH_1996_S3486095::analyze(), and Analysis::isCompatible().
00079 { 00080 return handler().beams(); 00081 }
const PdgIdPair beamIds | ( | ) | const [inherited] |
Incoming beam IDs for this run.
Definition at line 83 of file Analysis.cc.
References AnalysisHandler::beamIds(), and Analysis::handler().
Referenced by UA5_1982_S875503::finalize(), and UA5_1982_S875503::init().
00083 { 00084 return handler().beamIds(); 00085 }
double sqrtS | ( | ) | const [inherited] |
Centre of mass energy for this run.
Definition at line 75 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::sqrtS().
Referenced by UA1_1990_S2044935::analyze(), SFM_1984_S1178091::analyze(), PDG_HADRON_MULTIPLICITIES_RATIOS::analyze(), PDG_HADRON_MULTIPLICITIES::analyze(), CDF_2004_S5839831::analyze(), ALEPH_2004_S5765862::analyze(), UA1_1990_S2044935::finalize(), PDG_HADRON_MULTIPLICITIES_RATIOS::finalize(), PDG_HADRON_MULTIPLICITIES::finalize(), CDF_2004_S5839831::finalize(), CDF_2002_S4796047::finalize(), ALEPH_2004_S5765862::finalize(), UA5_1989_S1926373::init(), UA5_1988_S1867512::init(), UA5_1986_S1583476::init(), UA1_1990_S2044935::init(), SFM_1984_S1178091::init(), PDG_HADRON_MULTIPLICITIES_RATIOS::init(), PDG_HADRON_MULTIPLICITIES::init(), OPAL_2004_S6132243::init(), MC_ZZJETS::init(), MC_ZJETS::init(), MC_WWJETS::init(), MC_WJETS::init(), MC_PHOTONJETS::init(), MC_JetAnalysis::init(), MC_HJETS::init(), MC_DIPHOTON::init(), JADE_OPAL_2000_S4300807::init(), CDF_2004_S5839831::init(), CDF_2002_S4796047::init(), CDF_1990_S2089246::init(), CDF_1988_S1865951::init(), and ALEPH_2004_S5765862::init().
00075 { 00076 return handler().sqrtS(); 00077 }
Is this analysis able to run on the supplied pair of beams?
Definition at line 220 of file Analysis.cc.
References Analysis::beams().
00220 { 00221 PdgIdPair beams(beam1, beam2); 00222 return isCompatible(beams); 00223 }
bool isCompatible | ( | const PdgIdPair & | beams | ) | const [virtual, inherited] |
Is this analysis able to run on the PdgIdPair beams ?
Definition at line 227 of file Analysis.cc.
References Rivet::compatible(), and Analysis::requiredBeams().
00227 { 00228 foreach (const PdgIdPair& bp, requiredBeams()) { 00229 if (compatible(beams, bp)) return true; 00230 } 00231 return false; 00232 /// @todo Need to also check internal consistency of the analysis' 00233 /// beam requirements with those of the projections it uses. 00234 }
AnalysisHandler & handler | ( | ) | const [inherited] |
Access the controlling AnalysisHandler object.
Definition at line 269 of file Analysis.cc.
References Analysis::_analysishandler.
Referenced by Analysis::analysisFactory(), Analysis::beamIds(), Analysis::beams(), Analysis::datapointsetFactory(), Analysis::histoDir(), Analysis::histogramFactory(), Analysis::numEvents(), Analysis::sqrtS(), Analysis::sumOfWeights(), and Analysis::tree().
00269 { 00270 return *_analysishandler; 00271 }
void normalize | ( | AIDA::IHistogram1D *& | histo, | |
double | norm = 1.0 | |||
) | [inherited] |
Normalize the given histogram, histo. After this call the histogram will have been transformed to a DataPointSet with the same name and path. It has the same effect as scale
(histo, norm/sumOfWeights).
histo | The histogram to be normalised. | |
norm | The new area of the histogram. |
Definition at line 512 of file Analysis.cc.
References Log::ERROR, Analysis::getLog(), Analysis::name(), Analysis::scale(), Log::TRACE, Analysis::tree(), and Log::WARN.
Referenced by STAR_2008_S7869363::finalize(), OPAL_2001_S4553896::finalize(), OPAL_1998_S3780481::finalize(), H1_1994_S2919893::finalize(), ExampleAnalysis::finalize(), DELPHI_2002_069_CONF_603::finalize(), DELPHI_1995_S3137023::finalize(), D0_2010_S8671338::finalize(), D0_2009_S8320160::finalize(), D0_2008_S7554427::finalize(), D0_2008_S6879055::finalize(), D0_2007_S7075677::finalize(), D0_2004_S5992206::finalize(), D0_2001_S4674421::finalize(), D0_1996_S3324664::finalize(), D0_1996_S3214044::finalize(), CDF_2009_NOTE_9936::finalize(), CDF_2004_S5839831::finalize(), CDF_2002_S4796047::finalize(), CDF_2001_S4751469::finalize(), CDF_1997_S3541940::finalize(), CDF_1996_S3418421::finalize(), CDF_1996_S3349578::finalize(), CDF_1996_S3108457::finalize(), CDF_1993_S2742446::finalize(), ALEPH_2004_S5765862::finalize(), and ALEPH_1996_S3486095::finalize().
00512 { 00513 if (!histo) { 00514 getLog() << Log::ERROR << "Failed to normalise histo=NULL in analysis " 00515 << name() << " (norm=" << norm << ")" << endl; 00516 return; 00517 } 00518 const string hpath = tree().findPath(dynamic_cast<const AIDA::IManagedObject&>(*histo)); 00519 getLog() << Log::TRACE << "Normalizing histo " << hpath << " to " << norm << endl; 00520 00521 double oldintg = 0.0; 00522 int nBins = histo->axis().bins(); 00523 for (int iBin = 0; iBin != nBins; ++iBin) { 00524 // Leaving out factor of binWidth because AIDA's "height" already includes a width factor. 00525 oldintg += histo->binHeight(iBin); // * histo->axis().binWidth(iBin); 00526 } 00527 if (oldintg == 0.0) { 00528 getLog() << Log::WARN << "Histo " << hpath << " has null integral during normalisation" << endl; 00529 return; 00530 } 00531 00532 // Scale by the normalisation factor. 00533 scale(histo, norm/oldintg); 00534 }
void scale | ( | AIDA::IHistogram1D *& | histo, | |
double | scale | |||
) | [inherited] |
Multiplicatively scale the given histogram, histo. After this call the histogram will have been transformed to a DataPointSet with the same name and path.
histo | The histogram to be scaled. | |
scale | The factor used to multiply the histogram bin heights. |
Definition at line 537 of file Analysis.cc.
References Analysis::datapointsetFactory(), Log::ERROR, Analysis::getLog(), Analysis::name(), Log::TRACE, and Analysis::tree().
Referenced by UA5_1989_S1926373::finalize(), UA5_1987_S1640666::finalize(), UA5_1986_S1583476::finalize(), UA5_1982_S875503::finalize(), UA1_1990_S2044935::finalize(), STAR_2006_S6870392::finalize(), STAR_2006_S6860818::finalize(), STAR_2006_S6500200::finalize(), SFM_1984_S1178091::finalize(), PDG_HADRON_MULTIPLICITIES_RATIOS::finalize(), PDG_HADRON_MULTIPLICITIES::finalize(), OPAL_2004_S6132243::finalize(), OPAL_1998_S3780481::finalize(), MC_ZZJETS::finalize(), MC_ZJETS::finalize(), MC_WWJETS::finalize(), MC_WJETS::finalize(), MC_TTBAR::finalize(), MC_PHOTONJETS::finalize(), MC_JetAnalysis::finalize(), MC_HJETS::finalize(), MC_GENERIC::finalize(), MC_DIPHOTON::finalize(), JADE_OPAL_2000_S4300807::finalize(), H1_2000_S4129130::finalize(), H1_1994_S2919893::finalize(), E735_1998_S3905616::finalize(), D0_2010_S8570965::finalize(), D0_2009_S8349509::finalize(), D0_2009_S8202443::finalize(), D0_2008_S7863608::finalize(), D0_2008_S7719523::finalize(), D0_2008_S7662670::finalize(), D0_2006_S6438750::finalize(), D0_2000_S4480767::finalize(), CDF_2009_S8436959::finalize(), CDF_2009_S8383952::finalize(), CDF_2009_S8233977::finalize(), CDF_2008_S8093652::finalize(), CDF_2008_S7540469::finalize(), CDF_2007_S7057202::finalize(), CDF_2006_S6450792::finalize(), CDF_2005_S6080774::finalize(), CDF_2001_S4563131::finalize(), CDF_2000_S4266730::finalize(), CDF_2000_S4155203::finalize(), CDF_1998_S3618439::finalize(), CDF_1990_S2089246::finalize(), CDF_1988_S1865951::finalize(), ATLAS_2010_S8591806::finalize(), ALEPH_2004_S5765862::finalize(), ALEPH_1996_S3486095::finalize(), ALEPH_1996_S3196992::finalize(), ALEPH_1991_S2435284::finalize(), Analysis::normalize(), and BinnedHistogram::scale().
00537 { 00538 if (!histo) { 00539 getLog() << Log::ERROR << "Failed to scale histo=NULL in analysis " 00540 << name() << " (scale=" << scale << ")" << endl; 00541 return; 00542 } 00543 const string hpath = tree().findPath(dynamic_cast<const AIDA::IManagedObject&>(*histo)); 00544 getLog() << Log::TRACE << "Scaling histo " << hpath << endl; 00545 00546 vector<double> x, y, ex, ey; 00547 for (size_t i = 0, N = histo->axis().bins(); i < N; ++i) { 00548 x.push_back(0.5 * (histo->axis().binLowerEdge(i) + histo->axis().binUpperEdge(i))); 00549 ex.push_back(histo->axis().binWidth(i)*0.5); 00550 00551 // "Bin height" is a misnomer in the AIDA spec: width is neglected. 00552 // We'd like to do this: y.push_back(histo->binHeight(i) * scale); 00553 y.push_back(histo->binHeight(i)*scale/histo->axis().binWidth(i)); 00554 00555 // "Bin error" is a misnomer in the AIDA spec: width is neglected. 00556 // We'd like to do this: ey.push_back(histo->binError(i) * scale); 00557 ey.push_back(histo->binError(i)*scale/histo->axis().binWidth(i)); 00558 } 00559 00560 string title = histo->title(); 00561 string xtitle = histo->xtitle(); 00562 string ytitle = histo->ytitle(); 00563 00564 tree().mkdir("/tmpnormalize"); 00565 tree().mv(hpath, "/tmpnormalize"); 00566 00567 AIDA::IDataPointSet* dps = datapointsetFactory().createXY(hpath, title, x, y, ex, ey); 00568 dps->setXTitle(xtitle); 00569 dps->setYTitle(ytitle); 00570 00571 tree().rm(tree().findPath(dynamic_cast<AIDA::IManagedObject&>(*histo))); 00572 tree().rmdir("/tmpnormalize"); 00573 00574 // Set histo pointer to null - it can no longer be used. 00575 histo = 0; 00576 }
Analysis & setCrossSection | ( | double | xs | ) | [inherited] |
Set the cross section from the generator.
Definition at line 237 of file Analysis.cc.
References Analysis::_crossSection, and Analysis::_gotCrossSection.
00237 { 00238 _crossSection = xs; 00239 _gotCrossSection = true; 00240 return *this; 00241 }
bool needsCrossSection | ( | ) | const [inherited] |
Return true if this analysis needs to know the process cross-section.
Definition at line 244 of file Analysis.cc.
References Analysis::_needsCrossSection.
00244 { 00245 return _needsCrossSection; 00246 }
Log & getLog | ( | ) | const [protected, inherited] |
Get a Log object based on the name() property of the calling analysis object.
Reimplemented from ProjectionApplier.
Definition at line 107 of file Analysis.cc.
References Log::getLog(), and Analysis::name().
Referenced by Analysis::_cacheBinEdges(), Analysis::_cacheXAxisData(), CDF_2004_S5839831::_calcTransCones(), CDF_1996_S3349578::_fiveJetAnalysis(), CDF_1996_S3349578::_fourJetAnalysis(), D0_1996_S3214044::_safeMass(), CDF_1997_S3541940::_safeMass(), CDF_1996_S3349578::_safeMass(), CDF_1996_S3349578::_threeJetAnalysis(), ZEUS_2001_S4815815::analyze(), UA5_1986_S1583476::analyze(), UA1_1990_S2044935::analyze(), STAR_2009_UE_HELEN::analyze(), STAR_2008_S7993412::analyze(), STAR_2006_S6870392::analyze(), STAR_2006_S6860818::analyze(), STAR_2006_S6500200::analyze(), SFM_1984_S1178091::analyze(), PDG_HADRON_MULTIPLICITIES_RATIOS::analyze(), PDG_HADRON_MULTIPLICITIES::analyze(), OPAL_1998_S3780481::analyze(), MC_SUSY::analyze(), MC_PHOTONJETUE::analyze(), MC_LEADINGJETS::analyze(), MC_JetAnalysis::analyze(), MC_GENERIC::analyze(), H1_1994_S2919893::analyze(), DELPHI_2002_069_CONF_603::analyze(), DELPHI_1995_S3137023::analyze(), D0_2009_S8349509::analyze(), D0_2009_S8202443::analyze(), D0_2008_S7863608::analyze(), D0_2008_S7837160::analyze(), D0_2008_S7719523::analyze(), D0_2008_S7662670::analyze(), D0_2008_S7554427::analyze(), D0_2008_S6879055::analyze(), D0_2007_S7075677::analyze(), D0_2004_S5992206::analyze(), D0_1998_S3711838::analyze(), CDF_2009_S8383952::analyze(), CDF_2008_S8095620::analyze(), CDF_2008_S7782535::analyze(), CDF_2008_S7540469::analyze(), CDF_2008_NOTE_9351::analyze(), CDF_2008_LEADINGJETS::analyze(), CDF_2006_S6653332::analyze(), CDF_2005_S6217184::analyze(), CDF_2004_S5839831::analyze(), CDF_2001_S4751469::analyze(), CDF_2000_S4155203::analyze(), CDF_1994_S2952106::analyze(), CDF_1991_S2313472::analyze(), BELLE_2006_S6265367::analyze(), ALEPH_1996_S3486095::analyze(), ALEPH_1991_S2435284::analyze(), CDF_2009_S8057893::CDF_2009_S8057893::analyze(), UA5_1986_S1583476::finalize(), UA1_1990_S2044935::finalize(), STAR_2006_S6860818::finalize(), STAR_2006_S6500200::finalize(), D0_2001_S4674421::finalize(), CDF_2009_S8233977::finalize(), CDF_2006_S6653332::finalize(), ZEUS_2001_S4815815::init(), JADE_OPAL_2000_S4300807::init(), ALEPH_2004_S5765862::init(), Analysis::normalize(), and Analysis::scale().
00107 { 00108 string logname = "Rivet.Analysis." + name(); 00109 return Log::getLog(logname); 00110 }
double crossSection | ( | ) | const [protected, inherited] |
Get the process cross-section in pb. Throws if this hasn't been set.
Definition at line 254 of file Analysis.cc.
References Analysis::_crossSection, Analysis::_gotCrossSection, and Analysis::name().
Referenced by STAR_2006_S6870392::finalize(), MC_ZZJETS::finalize(), MC_ZJETS::finalize(), MC_WWJETS::finalize(), MC_WJETS::finalize(), MC_JetAnalysis::finalize(), MC_HJETS::finalize(), MC_DIPHOTON::finalize(), D0_2010_S8570965::finalize(), D0_2010_S8566488::finalize(), D0_2008_S7863608::finalize(), D0_2008_S7719523::finalize(), D0_2008_S7662670::finalize(), D0_2006_S6438750::finalize(), D0_2000_S4480767::finalize(), CDF_2009_S8436959::finalize(), CDF_2009_S8383952::finalize(), CDF_2009_S8233977::finalize(), CDF_2008_S8093652::finalize(), CDF_2008_S7828950::finalize(), CDF_2008_S7541902::finalize(), CDF_2008_S7540469::finalize(), CDF_2006_S6653332::finalize(), CDF_2006_S6450792::finalize(), CDF_2005_S6080774::finalize(), CDF_2001_S4563131::finalize(), CDF_2001_S4517016::finalize(), CDF_2000_S4266730::finalize(), CDF_2000_S4155203::finalize(), and CDF_1998_S3618439::finalize().
00254 { 00255 if (!_gotCrossSection || _crossSection < 0) { 00256 string errMsg = "You did not set the cross section for the analysis " + name(); 00257 throw Error(errMsg); 00258 } 00259 return _crossSection; 00260 }
double crossSectionPerEvent | ( | ) | const [protected, inherited] |
Get the process cross-section per generated event in pb. Throws if this hasn't been set.
Definition at line 262 of file Analysis.cc.
References Analysis::_crossSection, and Analysis::sumOfWeights().
Referenced by UA1_1990_S2044935::finalize(), MC_PHOTONJETS::finalize(), D0_2001_S4674421::finalize(), CDF_2007_S7057202::finalize(), and CDF_1988_S1865951::finalize().
00262 { 00263 const double sumW = sumOfWeights(); 00264 assert(sumW > 0); 00265 return _crossSection / sumW; 00266 }
size_t numEvents | ( | ) | const [protected, inherited] |
Get the number of events seen (via the analysis handler). Use in the finalize phase only.
Definition at line 113 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::numEvents().
00113 { 00114 return handler().numEvents(); 00115 }
double sumOfWeights | ( | ) | const [protected, inherited] |
Get the sum of event weights seen (via the analysis handler). Use in the finalize phase only.
Definition at line 118 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::sumOfWeights().
Referenced by Analysis::crossSectionPerEvent(), STAR_2006_S6870392::finalize(), STAR_2006_S6860818::finalize(), STAR_2006_S6500200::finalize(), PDG_HADRON_MULTIPLICITIES::finalize(), OPAL_1998_S3780481::finalize(), OPAL_1993_S2692198::finalize(), MC_ZZJETS::finalize(), MC_ZJETS::finalize(), MC_WWJETS::finalize(), MC_WJETS::finalize(), MC_TTBAR::finalize(), MC_JetAnalysis::finalize(), MC_HJETS::finalize(), MC_GENERIC::finalize(), MC_DIPHOTON::finalize(), JADE_OPAL_2000_S4300807::finalize(), DELPHI_1995_S3137023::finalize(), D0_2010_S8570965::finalize(), D0_2010_S8566488::finalize(), D0_2008_S7863608::finalize(), D0_2008_S7719523::finalize(), D0_2008_S7662670::finalize(), D0_2006_S6438750::finalize(), D0_2000_S4480767::finalize(), CDF_2009_S8436959::finalize(), CDF_2009_S8383952::finalize(), CDF_2009_S8233977::finalize(), CDF_2008_S8093652::finalize(), CDF_2008_S7828950::finalize(), CDF_2008_S7541902::finalize(), CDF_2008_S7540469::finalize(), CDF_2006_S6653332::finalize(), CDF_2006_S6450792::finalize(), CDF_2005_S6080774::finalize(), CDF_2001_S4563131::finalize(), CDF_2001_S4517016::finalize(), CDF_2000_S4266730::finalize(), CDF_2000_S4155203::finalize(), CDF_1998_S3618439::finalize(), ALEPH_2004_S5765862::finalize(), ALEPH_1996_S3486095::finalize(), ALEPH_1996_S3196992::finalize(), and ALEPH_1991_S2435284::finalize().
00118 { 00119 return handler().sumOfWeights(); 00120 }
IAnalysisFactory & analysisFactory | ( | ) | [protected, inherited] |
Access the AIDA analysis factory of the controlling AnalysisHandler object.
Definition at line 55 of file Analysis.cc.
References AnalysisHandler::analysisFactory(), and Analysis::handler().
00055 { 00056 return handler().analysisFactory(); 00057 }
ITree & tree | ( | ) | [protected, inherited] |
Access the AIDA tree of the controlling AnalysisHandler object.
Definition at line 60 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::tree().
Referenced by Analysis::_makeHistoDir(), Analysis::normalize(), and Analysis::scale().
00060 { 00061 return handler().tree(); 00062 }
IHistogramFactory & histogramFactory | ( | ) | [protected, inherited] |
Access the AIDA histogram factory of the controlling AnalysisHandler object.
Definition at line 65 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::histogramFactory().
Referenced by STAR_2006_S6860818::finalize(), STAR_2006_S6500200::finalize(), MC_WJETS::finalize(), MC_JetAnalysis::finalize(), MC_GENERIC::finalize(), H1_1995_S3167097::finalize(), D0_2008_S7837160::finalize(), and D0_2008_S7719523::finalize().
00065 { 00066 return handler().histogramFactory(); 00067 }
IDataPointSetFactory & datapointsetFactory | ( | ) | [protected, inherited] |
Access the AIDA histogram factory of the controlling AnalysisHandler object.
Definition at line 70 of file Analysis.cc.
References AnalysisHandler::datapointsetFactory(), and Analysis::handler().
Referenced by Analysis::scale().
00070 { 00071 return handler().datapointsetFactory(); 00072 }
const string histoDir | ( | ) | const [protected, inherited] |
Get the canonical histogram "directory" path for this analysis.
Definition at line 88 of file Analysis.cc.
References Analysis::handler(), Analysis::name(), and AnalysisHandler::runName().
Referenced by Analysis::_makeHistoDir(), STAR_2006_S6860818::finalize(), STAR_2006_S6500200::finalize(), MC_WJETS::finalize(), D0_2008_S7837160::finalize(), and D0_2008_S7719523::finalize().
00088 { 00089 /// @todo This doesn't change: calc and cache at Analysis construction! 00090 string path = "/" + name(); 00091 if (handler().runName().length() > 0) { 00092 path = "/" + handler().runName() + path; 00093 } 00094 while (find_first(path, "//")) { 00095 replace_all(path, "//", "/"); 00096 } 00097 return path; 00098 }
const std::string histoPath | ( | const std::string & | hname | ) | const [protected, inherited] |
Get the canonical histogram path for the named histogram in this analysis.
Referenced by MC_JetAnalysis::finalize(), and MC_GENERIC::finalize().
const BinEdges& binEdges | ( | const std::string & | hname | ) | const [protected, inherited] |
Get bin edges for a named histo (using ref AIDA caching).
Referenced by Analysis::binEdges(), and D0_2008_S7837160::init().
const BinEdges & binEdges | ( | size_t | datasetId, | |
size_t | xAxisId, | |||
size_t | yAxisId | |||
) | const [protected, inherited] |
Get bin edges for a numbered histo (using ref AIDA caching).
Definition at line 311 of file Analysis.cc.
References Analysis::binEdges(), and Rivet::makeAxisCode().
00311 { 00312 const string hname = makeAxisCode(datasetId, xAxisId, yAxisId); 00313 return binEdges(hname); 00314 }
BinEdges logBinEdges | ( | size_t | nbins, | |
double | lower, | |||
double | upper | |||
) | [protected, inherited] |
Get bin edges with logarithmic widths.
Definition at line 317 of file Analysis.cc.
Referenced by MC_ZZJETS::init(), MC_ZJETS::init(), MC_WWJETS::init(), MC_WJETS::init(), MC_PHOTONJETS::init(), MC_JetAnalysis::init(), MC_HJETS::init(), and MC_DIPHOTON::init().
00317 { 00318 assert(lower>0.0); 00319 assert(upper>lower); 00320 double loglower=log10(lower); 00321 double logupper=log10(upper); 00322 vector<double> binedges; 00323 double stepwidth=(logupper-loglower)/double(nbins); 00324 for (size_t i=0; i<=nbins; ++i) { 00325 binedges.push_back(pow(10.0, loglower+double(i)*stepwidth)); 00326 } 00327 return binedges; 00328 }
AIDA::IHistogram1D* bookHistogram1D | ( | const std::string & | name, | |
size_t | nbins, | |||
double | lower, | |||
double | upper, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 1D histogram with nbins uniformly distributed across the range lower - upper . (NB. this returns a pointer rather than a reference since it will have to be stored in the analysis class - there's no point in forcing users to explicitly get the pointer from a reference before they can use it!)
Referenced by ZEUS_2001_S4815815::init(), UA5_1989_S1926373::init(), UA5_1987_S1640666::init(), UA5_1986_S1583476::init(), UA5_1982_S875503::init(), UA1_1990_S2044935::init(), STAR_2008_S7869363::init(), STAR_2006_S6870392::init(), STAR_2006_S6860818::init(), STAR_2006_S6500200::init(), SFM_1984_S1178091::init(), PDG_HADRON_MULTIPLICITIES_RATIOS::init(), PDG_HADRON_MULTIPLICITIES::init(), OPAL_2004_S6132243::init(), OPAL_2001_S4553896::init(), OPAL_1998_S3780481::init(), MC_ZZJETS::init(), MC_ZJETS::init(), MC_WWJETS::init(), MC_WJETS::init(), MC_TTBAR::init(), MC_SUSY::init(), MC_PHOTONJETUE::init(), MC_PHOTONJETS::init(), MC_JetAnalysis::init(), MC_HJETS::init(), MC_GENERIC::init(), MC_DIPHOTON::init(), MC_DIJET::init(), JADE_OPAL_2000_S4300807::init(), H1_2000_S4129130::init(), H1_1995_S3167097::init(), H1_1994_S2919893::init(), ExampleAnalysis::init(), E735_1998_S3905616::init(), DELPHI_2002_069_CONF_603::init(), DELPHI_1995_S3137023::init(), D0_2010_S8671338::init(), D0_2010_S8570965::init(), D0_2010_S8566488::init(), D0_2009_S8349509::init(), D0_2009_S8320160::init(), D0_2009_S8202443::init(), D0_2008_S7863608::init(), D0_2008_S7837160::init(), D0_2008_S7719523::init(), D0_2008_S7662670::init(), D0_2008_S7554427::init(), D0_2008_S6879055::init(), D0_2007_S7075677::init(), D0_2006_S6438750::init(), D0_2004_S5992206::init(), D0_2001_S4674421::init(), D0_2000_S4480767::init(), D0_1998_S3711838::init(), D0_1996_S3324664::init(), D0_1996_S3214044::init(), CDF_2009_S8436959::init(), CDF_2009_S8383952::init(), CDF_2009_S8233977::init(), CDF_2009_NOTE_9936::init(), CDF_2008_S8095620::init(), CDF_2008_S8093652::init(), CDF_2008_S7828950::init(), CDF_2008_S7541902::init(), CDF_2008_S7540469::init(), CDF_2007_S7057202::init(), CDF_2006_S6653332::init(), CDF_2006_S6450792::init(), CDF_2005_S6080774::init(), CDF_2004_S5839831::init(), CDF_2002_S4796047::init(), CDF_2001_S4751469::init(), CDF_2001_S4563131::init(), CDF_2001_S4517016::init(), CDF_2000_S4266730::init(), CDF_2000_S4155203::init(), CDF_1998_S3618439::init(), CDF_1997_S3541940::init(), CDF_1996_S3418421::init(), CDF_1996_S3349578::init(), CDF_1996_S3108457::init(), CDF_1994_S2952106::init(), CDF_1993_S2742446::init(), CDF_1991_S2313472::init(), CDF_1990_S2089246::init(), CDF_1988_S1865951::init(), BELLE_2006_S6265367::init(), ATLAS_2010_S8591806::init(), ALEPH_2004_S5765862::init(), ALEPH_1996_S3486095::init(), ALEPH_1996_S3196992::init(), and ALEPH_1991_S2435284::init().
AIDA::IHistogram1D* bookHistogram1D | ( | const std::string & | name, | |
const std::vector< double > & | binedges, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 1D histogram with non-uniform bins defined by the vector of bin edges binedges . (NB. this returns a pointer rather than a reference since it will have to be stored in the analysis class - there's no point in forcing users to explicitly get the pointer from a reference before they can use it!)
AIDA::IHistogram1D* bookHistogram1D | ( | const std::string & | name, | |
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
AIDA::IHistogram1D* bookHistogram1D | ( | size_t | datasetId, | |
size_t | xAxisId, | |||
size_t | yAxisId, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
AIDA::IProfile1D* bookProfile1D | ( | const std::string & | name, | |
size_t | nbins, | |||
double | lower, | |||
double | upper, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 1D profile histogram with nbins uniformly distributed across the range lower - upper . (NB. this returns a pointer rather than a reference since it will have to be stored in the analysis class - there's no point in forcing users to explicitly get the pointer from a reference before they can use it!)
Referenced by UA5_1988_S1867512::init(), UA1_1990_S2044935::init(), STAR_2009_UE_HELEN::init(), STAR_2008_S7993412::init(), STAR_2006_S6860818::init(), MC_PHOTONJETUE::init(), MC_LEADINGJETS::init(), H1_2000_S4129130::init(), H1_1994_S2919893::init(), DELPHI_2002_069_CONF_603::init(), D0_1996_S3324664::init(), CDF_2009_S8233977::init(), CDF_2008_S7782535::init(), CDF_2008_NOTE_9351::init(), CDF_2008_LEADINGJETS::init(), CDF_2005_S6217184::init(), CDF_2004_S5839831::init(), CDF_2002_S4796047::init(), CDF_2001_S4751469::init(), and ATLAS_2010_S8591806::init().
AIDA::IProfile1D* bookProfile1D | ( | const std::string & | name, | |
const std::vector< double > & | binedges, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 1D profile histogram with non-uniform bins defined by the vector of bin edges binedges . (NB. this returns a pointer rather than a reference since it will have to be stored in the analysis class - there's no point in forcing users to explicitly get the pointer from a reference before they can use it!)
AIDA::IProfile1D* bookProfile1D | ( | const std::string & | name, | |
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
AIDA::IProfile1D* bookProfile1D | ( | size_t | datasetId, | |
size_t | xAxisId, | |||
size_t | yAxisId, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
AIDA::IDataPointSet* bookDataPointSet | ( | const std::string & | name, | |
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 2-dimensional data point set. (NB. this returns a pointer rather than a reference since it will have to be stored in the analysis class - there's no point in forcing users to explicitly get the pointer from a reference before they can use it!)
Referenced by ALEPH_2004_S5765862::finalize(), STAR_2006_S6860818::init(), OPAL_1993_S2692198::init(), MC_JetAnalysis::init(), JADE_OPAL_2000_S4300807::init(), D0_2001_S4674421::init(), CDF_2008_S7782535::init(), CDF_2008_S7541902::init(), CDF_1996_S3418421::init(), CDF_1994_S2952106::init(), and ALEPH_2004_S5765862::init().
AIDA::IDataPointSet* bookDataPointSet | ( | const std::string & | name, | |
size_t | npts, | |||
double | lower, | |||
double | upper, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 2-dimensional data point set with equally spaced points in a range. (NB. this returns a pointer rather than a reference since it will have to be stored in the analysis class - there's no point in forcing users to explicitly get the pointer from a reference before they can use it!)
AIDA::IDataPointSet* bookDataPointSet | ( | size_t | datasetId, | |
size_t | xAxisId, | |||
size_t | yAxisId, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 2-dimensional data point set based on the corresponding AIDA data file. The binnings (x-errors) will be obtained by reading the bundled AIDA data record file of the same filename as the analysis' name() property. Book a 2-dimensional data point set based on the paper, dataset and x/y-axis IDs in the corresponding HepData record. The binnings (x-errors) will be obtained by reading the bundled AIDA data record file of the same filename as the analysis' name() property.
Set the colliding beam pair.
Definition at line 211 of file Analysis.cc.
References Analysis::_info.
Referenced by ALEPH_1991_S2435284::ALEPH_1991_S2435284(), ALEPH_1996_S3196992::ALEPH_1996_S3196992(), ALEPH_1996_S3486095::ALEPH_1996_S3486095(), ALEPH_2004_S5765862::ALEPH_2004_S5765862(), BELLE_2006_S6265367::BELLE_2006_S6265367(), CDF_1988_S1865951::CDF_1988_S1865951(), CDF_1990_S2089246::CDF_1990_S2089246(), CDF_1991_S2313472::CDF_1991_S2313472(), CDF_1993_S2742446::CDF_1993_S2742446(), CDF_1994_S2952106::CDF_1994_S2952106(), CDF_1996_S3108457::CDF_1996_S3108457(), CDF_1996_S3349578::CDF_1996_S3349578(), CDF_1996_S3418421::CDF_1996_S3418421(), CDF_1997_S3541940::CDF_1997_S3541940(), CDF_1998_S3618439::CDF_1998_S3618439(), CDF_2000_S4155203::CDF_2000_S4155203(), CDF_2000_S4266730::CDF_2000_S4266730(), CDF_2001_S4517016::CDF_2001_S4517016(), CDF_2001_S4563131::CDF_2001_S4563131(), CDF_2001_S4751469::CDF_2001_S4751469(), CDF_2002_S4796047::CDF_2002_S4796047(), CDF_2004_S5839831::CDF_2004_S5839831(), CDF_2005_S6080774::CDF_2005_S6080774(), CDF_2005_S6217184::CDF_2005_S6217184(), CDF_2006_S6450792::CDF_2006_S6450792(), CDF_2006_S6653332::CDF_2006_S6653332(), CDF_2007_S7057202::CDF_2007_S7057202(), CDF_2008_LEADINGJETS::CDF_2008_LEADINGJETS(), CDF_2008_NOTE_9351::CDF_2008_NOTE_9351(), CDF_2008_S7540469::CDF_2008_S7540469(), CDF_2008_S7541902::CDF_2008_S7541902(), CDF_2008_S7782535::CDF_2008_S7782535(), CDF_2008_S7828950::CDF_2008_S7828950(), CDF_2008_S8093652::CDF_2008_S8093652(), CDF_2008_S8095620::CDF_2008_S8095620(), CDF_2009_NOTE_9936::CDF_2009_NOTE_9936(), CDF_2009_S8057893::CDF_2009_S8057893::CDF_2009_S8057893(), CDF_2009_S8233977::CDF_2009_S8233977(), CDF_2009_S8383952::CDF_2009_S8383952(), CDF_2009_S8436959::CDF_2009_S8436959(), D0_1996_S3214044::D0_1996_S3214044(), D0_1996_S3324664::D0_1996_S3324664(), D0_1998_S3711838::D0_1998_S3711838(), D0_2001_S4674421::D0_2001_S4674421(), D0_2004_S5992206::D0_2004_S5992206(), D0_2006_S6438750::D0_2006_S6438750(), D0_2007_S7075677::D0_2007_S7075677(), D0_2008_S6879055::D0_2008_S6879055(), D0_2008_S7554427::D0_2008_S7554427(), D0_2008_S7662670::D0_2008_S7662670(), D0_2008_S7719523::D0_2008_S7719523(), D0_2008_S7837160::D0_2008_S7837160(), D0_2008_S7863608::D0_2008_S7863608(), D0_2009_S8202443::D0_2009_S8202443(), D0_2009_S8320160::D0_2009_S8320160(), D0_2009_S8349509::D0_2009_S8349509(), D0_2010_S8566488::D0_2010_S8566488(), D0_2010_S8570965::D0_2010_S8570965(), D0_2010_S8671338::D0_2010_S8671338(), DELPHI_1995_S3137023::DELPHI_1995_S3137023(), DELPHI_2002_069_CONF_603::DELPHI_2002_069_CONF_603(), E735_1998_S3905616::E735_1998_S3905616(), H1_1994_S2919893::H1_1994_S2919893(), H1_1995_S3167097::H1_1995_S3167097(), H1_2000_S4129130::H1_2000_S4129130(), JADE_OPAL_2000_S4300807::JADE_OPAL_2000_S4300807(), OPAL_1993_S2692198::OPAL_1993_S2692198(), OPAL_1998_S3780481::OPAL_1998_S3780481(), OPAL_2001_S4553896::OPAL_2001_S4553896(), PDG_HADRON_MULTIPLICITIES::PDG_HADRON_MULTIPLICITIES(), PDG_HADRON_MULTIPLICITIES_RATIOS::PDG_HADRON_MULTIPLICITIES_RATIOS(), SFM_1984_S1178091::SFM_1984_S1178091(), STAR_2006_S6500200::STAR_2006_S6500200(), STAR_2006_S6860818::STAR_2006_S6860818(), STAR_2006_S6870392::STAR_2006_S6870392(), STAR_2008_S7869363::STAR_2008_S7869363(), STAR_2008_S7993412::STAR_2008_S7993412(), STAR_2009_UE_HELEN::STAR_2009_UE_HELEN(), UA1_1990_S2044935::UA1_1990_S2044935(), UA5_1986_S1583476::UA5_1986_S1583476(), UA5_1987_S1640666::UA5_1987_S1640666(), UA5_1988_S1867512::UA5_1988_S1867512(), UA5_1989_S1926373::UA5_1989_S1926373(), and ZEUS_2001_S4815815::ZEUS_2001_S4815815().
00211 { 00212 assert(_info.get() != 0); 00213 _info->_beams.clear(); 00214 _info->_beams += make_pair(beam1, beam2); 00215 return *this; 00216 }
Analysis & setNeedsCrossSection | ( | bool | needed | ) | [protected, inherited] |
Declare whether this analysis needs to know the process cross-section from the generator.
Definition at line 249 of file Analysis.cc.
References Analysis::_needsCrossSection.
Referenced by ATLAS_2010_S8591806::ATLAS_2010_S8591806(), CDF_1991_S2313472::CDF_1991_S2313472(), CDF_1993_S2742446::CDF_1993_S2742446(), CDF_1996_S3108457::CDF_1996_S3108457(), CDF_1998_S3618439::CDF_1998_S3618439(), CDF_2000_S4155203::CDF_2000_S4155203(), CDF_2000_S4266730::CDF_2000_S4266730(), CDF_2001_S4517016::CDF_2001_S4517016(), CDF_2001_S4563131::CDF_2001_S4563131(), CDF_2005_S6080774::CDF_2005_S6080774(), CDF_2006_S6450792::CDF_2006_S6450792(), CDF_2006_S6653332::CDF_2006_S6653332(), CDF_2007_S7057202::CDF_2007_S7057202(), CDF_2008_S7540469::CDF_2008_S7540469(), CDF_2008_S7541902::CDF_2008_S7541902(), CDF_2008_S7828950::CDF_2008_S7828950(), CDF_2008_S8093652::CDF_2008_S8093652(), CDF_2009_NOTE_9936::CDF_2009_NOTE_9936(), CDF_2009_S8233977::CDF_2009_S8233977(), CDF_2009_S8383952::CDF_2009_S8383952(), CDF_2009_S8436959::CDF_2009_S8436959(), D0_1996_S3214044::D0_1996_S3214044(), D0_1996_S3324664::D0_1996_S3324664(), D0_1998_S3711838::D0_1998_S3711838(), D0_2000_S4480767::D0_2000_S4480767(), D0_2001_S4674421::D0_2001_S4674421(), D0_2006_S6438750::D0_2006_S6438750(), D0_2008_S7662670::D0_2008_S7662670(), D0_2008_S7719523::D0_2008_S7719523(), D0_2008_S7863608::D0_2008_S7863608(), D0_2010_S8566488::D0_2010_S8566488(), D0_2010_S8570965::D0_2010_S8570965(), MC_DIPHOTON::MC_DIPHOTON(), MC_HJETS::MC_HJETS(), MC_JetAnalysis::MC_JetAnalysis(), MC_JETS::MC_JETS(), MC_PHOTONJETS::MC_PHOTONJETS(), MC_WJETS::MC_WJETS(), MC_WWJETS::MC_WWJETS(), MC_ZJETS::MC_ZJETS(), MC_ZZJETS::MC_ZZJETS(), OPAL_2001_S4553896::OPAL_2001_S4553896(), STAR_2006_S6870392::STAR_2006_S6870392(), STAR_2008_S7869363::STAR_2008_S7869363(), and UA1_1990_S2044935::UA1_1990_S2044935().
00249 { 00250 _needsCrossSection = needed; 00251 return *this; 00252 }
std::set<ConstProjectionPtr> getProjections | ( | ) | const [inline, inherited] |
Get the contained projections, including recursion.
Definition at line 58 of file ProjectionApplier.hh.
References ProjectionHandler::DEEP, ProjectionHandler::getChildProjections(), and ProjectionApplier::getProjHandler().
Referenced by Projection::beamPairs().
00058 { 00059 return getProjHandler().getChildProjections(*this, ProjectionHandler::DEEP); 00060 }
const PROJ& getProjection | ( | const std::string & | name | ) | const [inline, inherited] |
Get the named projection, specifying return type via a template argument.
Definition at line 65 of file ProjectionApplier.hh.
References ProjectionHandler::getProjection(), and ProjectionApplier::getProjHandler().
Referenced by Rivet::pcmp(), and Hemispheres::project().
00065 { 00066 const Projection& p = getProjHandler().getProjection(*this, name); 00067 return pcast<PROJ>(p); 00068 }
const Projection& getProjection | ( | const std::string & | name | ) | const [inline, inherited] |
Get the named projection (non-templated, so returns as a reference to a Projection base class).
Definition at line 73 of file ProjectionApplier.hh.
References ProjectionHandler::getProjection(), and ProjectionApplier::getProjHandler().
00073 { 00074 return getProjHandler().getProjection(*this, name); 00075 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const PROJ & | proj | |||
) | const [inline, inherited] |
Apply the supplied projection on event.
Definition at line 83 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
Referenced by HadronicFinalState::project(), and FinalStateHCM::project().
00083 { 00084 return pcast<PROJ>(_applyProjection(evt, proj)); 00085 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const Projection & | proj | |||
) | const [inline, inherited] |
Apply the supplied projection on event.
Definition at line 90 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
00090 { 00091 return pcast<PROJ>(_applyProjection(evt, proj)); 00092 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const std::string & | name | |||
) | const [inline, inherited] |
Apply the named projection on event.
Definition at line 97 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
00097 { 00098 return pcast<PROJ>(_applyProjection(evt, name)); 00099 }
ProjectionHandler& getProjHandler | ( | ) | const [inline, protected, inherited] |
Get a reference to the ProjectionHandler for this thread.
Definition at line 110 of file ProjectionApplier.hh.
References ProjectionApplier::_projhandler.
Referenced by ProjectionApplier::_addProjection(), ProjectionApplier::getProjection(), ProjectionApplier::getProjections(), and ProjectionApplier::~ProjectionApplier().
00110 { 00111 assert(_projhandler); 00112 return *_projhandler; 00113 }
const PROJ& addProjection | ( | const PROJ & | proj, | |
const std::string & | name | |||
) | [inline, protected, inherited] |
Register a contained projection. The type of the argument is used to instantiate a new projection internally: this new object is applied to events rather than the argument object. Hence you are advised to only use locally-scoped Projection objects in your Projection and Analysis constructors, and to avoid polymorphism (e.g. handling ConcreteProjection
via a pointer or reference to type Projection
) since this will screw up the internal type management.
Definition at line 130 of file ProjectionApplier.hh.
References ProjectionApplier::_addProjection().
Referenced by ZFinder::_init(), WFinder::_init(), VetoedFinalState::addVetoOnThisFinalState(), CDF_2009_S8057893::CDF_2009_S8057893::init(), CentralEtHCM::CentralEtHCM(), ChargedFinalState::ChargedFinalState(), ChargedLeptons::ChargedLeptons(), ClusteredPhotons::ClusteredPhotons(), DISKinematics::DISKinematics(), DISLepton::DISLepton(), FinalState::FinalState(), FinalStateHCM::FinalStateHCM(), FoxWolframMoments::FoxWolframMoments(), HadronicFinalState::HadronicFinalState(), Hemispheres::Hemispheres(), IdentifiedFinalState::IdentifiedFinalState(), ZEUS_2001_S4815815::init(), UA5_1989_S1926373::init(), UA5_1988_S1867512::init(), UA5_1987_S1640666::init(), UA5_1986_S1583476::init(), UA5_1982_S875503::init(), UA1_1990_S2044935::init(), STAR_2009_UE_HELEN::init(), STAR_2008_S7993412::init(), STAR_2008_S7869363::init(), STAR_2006_S6870392::init(), STAR_2006_S6860818::init(), STAR_2006_S6500200::init(), SFM_1984_S1178091::init(), PDG_HADRON_MULTIPLICITIES_RATIOS::init(), PDG_HADRON_MULTIPLICITIES::init(), OPAL_2004_S6132243::init(), OPAL_2001_S4553896::init(), OPAL_1998_S3780481::init(), OPAL_1993_S2692198::init(), MC_ZZJETS::init(), MC_ZJETS::init(), MC_WWJETS::init(), MC_WJETS::init(), MC_TTBAR::init(), MC_SUSY::init(), MC_PHOTONJETUE::init(), MC_PHOTONJETS::init(), MC_LEADINGJETS::init(), MC_JETS::init(), MC_HJETS::init(), MC_GENERIC::init(), MC_DIPHOTON::init(), MC_DIJET::init(), JADE_OPAL_2000_S4300807::init(), H1_2000_S4129130::init(), H1_1995_S3167097::init(), H1_1994_S2919893::init(), ExampleAnalysis::init(), E735_1998_S3905616::init(), DELPHI_2002_069_CONF_603::init(), DELPHI_1995_S3137023::init(), D0_2010_S8671338::init(), D0_2010_S8570965::init(), D0_2010_S8566488::init(), D0_2009_S8349509::init(), D0_2009_S8320160::init(), D0_2009_S8202443::init(), D0_2008_S7863608::init(), D0_2008_S7837160::init(), D0_2008_S7719523::init(), D0_2008_S7662670::init(), D0_2008_S7554427::init(), D0_2008_S6879055::init(), D0_2007_S7075677::init(), D0_2006_S6438750::init(), D0_2004_S5992206::init(), D0_2001_S4674421::init(), D0_2000_S4480767::init(), D0_1998_S3711838::init(), D0_1996_S3324664::init(), D0_1996_S3214044::init(), CDF_2009_S8436959::init(), CDF_2009_S8383952::init(), CDF_2009_S8233977::init(), CDF_2009_NOTE_9936::init(), CDF_2008_S8095620::init(), CDF_2008_S8093652::init(), CDF_2008_S7828950::init(), CDF_2008_S7782535::init(), CDF_2008_S7541902::init(), CDF_2008_S7540469::init(), CDF_2008_NOTE_9351::init(), CDF_2008_LEADINGJETS::init(), CDF_2007_S7057202::init(), CDF_2006_S6653332::init(), CDF_2006_S6450792::init(), CDF_2005_S6217184::init(), CDF_2005_S6080774::init(), CDF_2004_S5839831::init(), CDF_2002_S4796047::init(), CDF_2001_S4751469::init(), CDF_2001_S4563131::init(), CDF_2001_S4517016::init(), CDF_2000_S4266730::init(), CDF_2000_S4155203::init(), CDF_1998_S3618439::init(), CDF_1997_S3541940::init(), CDF_1996_S3418421::init(), CDF_1996_S3349578::init(), CDF_1996_S3108457::init(), CDF_1994_S2952106::init(), CDF_1993_S2742446::init(), CDF_1991_S2313472::init(), CDF_1990_S2089246::init(), CDF_1988_S1865951::init(), BELLE_2006_S6265367::init(), ATLAS_2010_S8591806::init(), ALEPH_2004_S5765862::init(), ALEPH_1996_S3486095::init(), ALEPH_1996_S3196992::init(), ALEPH_1991_S2435284::init(), IsolationProjection::IsolationProjection(), JetAlg::JetAlg(), JetShape::JetShape(), LeadingParticlesFinalState::LeadingParticlesFinalState(), LossyFinalState< Rivet::ConstRandomFilter >::LossyFinalState(), MergedFinalState::MergedFinalState(), Multiplicity::Multiplicity(), NeutralFinalState::NeutralFinalState(), ParisiTensor::ParisiTensor(), Sphericity::Sphericity(), SVertex::SVertex(), Thrust::Thrust(), TotalVisibleMomentum::TotalVisibleMomentum(), TriggerCDFRun0Run1::TriggerCDFRun0Run1(), TriggerCDFRun2::TriggerCDFRun2(), TriggerUA5::TriggerUA5(), and VetoedFinalState::VetoedFinalState().
00130 { 00131 const Projection& reg = _addProjection(proj, name); 00132 const PROJ& rtn = dynamic_cast<const PROJ&>(reg); 00133 return rtn; 00134 }
const Projection & _addProjection | ( | const Projection & | proj, | |
const std::string & | name | |||
) | [protected, inherited] |
Untemplated function to do the work...
Definition at line 33 of file ProjectionApplier.cc.
References ProjectionApplier::_allowProjReg, Log::ERROR, ProjectionApplier::getLog(), ProjectionApplier::getProjHandler(), ProjectionApplier::name(), Projection::name(), and ProjectionHandler::registerProjection().
Referenced by ProjectionApplier::addProjection().
00034 { 00035 if (!_allowProjReg) { 00036 getLog() << Log::ERROR << "Trying to register projection '" 00037 << proj.name() << "' before init phase in '" << this->name() << "'." << endl; 00038 exit(2); 00039 } 00040 const Projection& reg = getProjHandler().registerProjection(*this, proj, name); 00041 return reg; 00042 }
friend class Projectionhandler [friend, inherited] |
Definition at line 38 of file ProjectionApplier.hh.
bool _initialisedJets [private] |
Definition at line 290 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
bool _initialisedSpectra [private] |
Definition at line 291 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_xp [private] |
Definition at line 293 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_xi [private] |
Definition at line 294 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_xe [private] |
Definition at line 295 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_pTin [private] |
Definition at line 296 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_pTout [private] |
Definition at line 297 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_rapidityT [private] |
Definition at line 298 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_rapidityS [private] |
Definition at line 299 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_thrust [private] |
Definition at line 300 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_heavyjetmass [private] |
Definition at line 301 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_totaljetbroadening [private] |
Definition at line 302 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_widejetbroadening [private] |
Definition at line 303 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_cparameter [private] |
Definition at line 304 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_thrustmajor [private] |
Definition at line 305 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_thrustminor [private] |
Definition at line 306 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_jetmassdifference [private] |
Definition at line 307 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_aplanarity [private] |
Definition at line 308 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_planarity [private] |
Definition at line 309 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_oblateness [private] |
Definition at line 310 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_sphericity [private] |
Definition at line 311 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IDataPointSet* _h_R_Durham[6] [private] |
Definition at line 313 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
AIDA::IHistogram1D* _h_y_Durham[5] [private] |
Definition at line 314 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), ALEPH_2004_S5765862::finalize(), and ALEPH_2004_S5765862::init().
double _weightedTotalChargedPartNum [private] |
Definition at line 316 of file ALEPH_2004_S5765862.cc.
Referenced by ALEPH_2004_S5765862::analyze(), and ALEPH_2004_S5765862::finalize().
string _defaultname [protected, inherited] |
Name passed to constructor (used to find .info analysis data file, and as a fallback).
Definition at line 422 of file Analysis.hh.
Referenced by Analysis::name().
shared_ptr<AnalysisInfo> _info [protected, inherited] |
Pointer to analysis metadata object.
Definition at line 425 of file Analysis.hh.
Referenced by Analysis::authors(), Analysis::bibKey(), Analysis::bibTeX(), Analysis::collider(), Analysis::description(), Analysis::experiment(), Analysis::info(), Analysis::name(), Analysis::references(), Analysis::runInfo(), Analysis::setBeams(), Analysis::spiresId(), Analysis::status(), Analysis::summary(), Analysis::todos(), and Analysis::year().
bool _allowProjReg [protected, inherited] |
Flag to forbid projection registration in analyses until the init phase.
Definition at line 157 of file ProjectionApplier.hh.
Referenced by ProjectionApplier::_addProjection().