DELPHI event shapes and identified particle spectra. More...
Public Member Functions | |
DELPHI_1996_S3430090 () | |
Constructor. | |
AnalysisHandler & | handler () const |
Access the controlling AnalysisHandler object. | |
void | normalize (AIDA::IHistogram1D *&histo, double norm=1.0) |
void | normalize (AIDA::IHistogram2D *&histo, double norm=1.0) |
void | scale (AIDA::IHistogram1D *&histo, double scale) |
void | scale (AIDA::IHistogram2D *&histo, double scale) |
Analysis & | setCrossSection (double xs) |
Set the cross section from the generator. | |
Analysis methods | |
void | init () |
void | analyze (const Event &e) |
void | finalize () |
Metadata | |
Metadata is used for querying from the command line and also for building web pages and the analysis pages in the Rivet manual. | |
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 | inspireId () const |
Get the Inspire ID code for this analysis. | |
virtual std::string | spiresId () const |
Get the SPIRES ID code for this analysis (~deprecated). | |
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 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. | |
virtual const std::vector < PdgIdPair > & | requiredBeams () const |
Return the allowed pairs of incoming beams required by this analysis. | |
virtual Analysis & | setRequiredBeams (const std::vector< PdgIdPair > &requiredBeams) |
Declare the allowed pairs of incoming beams required by this analysis. | |
virtual const std::vector < std::pair< double, double > > & | requiredEnergies () const |
Sets of valid beam energy pairs, in GeV. | |
virtual Analysis & | setRequiredEnergies (const std::vector< std::pair< double, double > > &requiredEnergies) |
Declare the list of valid beam energy pairs, in GeV. | |
bool | needsCrossSection () const |
Return true if this analysis needs to know the process cross-section. | |
Analysis & | setNeedsCrossSection (bool needed=true) |
Declare whether this analysis needs to know the process cross-section from the generator. | |
Internal metadata modifiying methods | |
AnalysisInfo & | info () |
Get the actual AnalysisInfo object in which all this metadata is stored (non-const). | |
virtual Analysis & | setBeams (PdgId beam1, PdgId beam2) |
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. | |
Analysis / beam compatibility testing | |
bool | isCompatible (const ParticlePair &beams) const |
Check if analysis is compatible with the provided beam particle IDs and energies. | |
bool | isCompatible (PdgId beam1, PdgId beam2, double e1, double e2) const |
Check if analysis is compatible with the provided beam particle IDs and energies. | |
bool | isCompatible (const PdgIdPair &beams, const std::pair< double, double > &energies) const |
Check if analysis is compatible with the provided beam particle IDs and energies. | |
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 |
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. | |
const std::string | makeAxisCode (size_t datasetId, size_t xAxisId, size_t yAxisId) const |
Get the internal histogram name for given d, x and y (cf. HepData). | |
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="") |
AIDA::IHistogram2D * | bookHistogram2D (const std::string &name, size_t nxbins, double xlower, double xupper, size_t nybins, double ylower, double yupper, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="", const std::string &ztitle="") |
AIDA::IHistogram2D * | bookHistogram2D (const std::string &name, const std::vector< double > &xbinedges, const std::vector< double > &ybinedges, const std::string &title="", const std::string &xtitle="", const std::string &ytitle="", const std::string &ztitle="") |
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 | |
double | _weightedTotalPartNum |
Sums of weights past various cuts | |
double | _passedCutWeightSum |
double | _passedCut3WeightSum |
double | _passedCut4WeightSum |
double | _passedCut5WeightSum |
Histograms | |
AIDA::IHistogram1D * | _histPtTIn |
AIDA::IHistogram1D * | _histPtTOut |
AIDA::IHistogram1D * | _histPtSIn |
AIDA::IHistogram1D * | _histPtSOut |
AIDA::IHistogram1D * | _histRapidityT |
AIDA::IHistogram1D * | _histRapidityS |
AIDA::IHistogram1D * | _histScaledMom |
AIDA::IHistogram1D * | _histLogScaledMom |
AIDA::IProfile1D * | _histPtTOutVsXp |
AIDA::IProfile1D * | _histPtVsXp |
AIDA::IHistogram1D * | _hist1MinusT |
AIDA::IHistogram1D * | _histTMajor |
AIDA::IHistogram1D * | _histTMinor |
AIDA::IHistogram1D * | _histOblateness |
AIDA::IHistogram1D * | _histSphericity |
AIDA::IHistogram1D * | _histAplanarity |
AIDA::IHistogram1D * | _histPlanarity |
AIDA::IHistogram1D * | _histCParam |
AIDA::IHistogram1D * | _histDParam |
AIDA::IHistogram1D * | _histHemiMassD |
AIDA::IHistogram1D * | _histHemiMassH |
AIDA::IHistogram1D * | _histHemiMassL |
AIDA::IHistogram1D * | _histHemiBroadW |
AIDA::IHistogram1D * | _histHemiBroadN |
AIDA::IHistogram1D * | _histHemiBroadT |
AIDA::IHistogram1D * | _histHemiBroadD |
AIDA::IHistogram1D * | _histDiffRate2Durham |
AIDA::IHistogram1D * | _histDiffRate2Jade |
AIDA::IHistogram1D * | _histDiffRate3Durham |
AIDA::IHistogram1D * | _histDiffRate3Jade |
AIDA::IHistogram1D * | _histDiffRate4Durham |
AIDA::IHistogram1D * | _histDiffRate4Jade |
AIDA::IHistogram1D * | _histEEC |
AIDA::IHistogram1D * | _histAEEC |
AIDA::IHistogram1D * | _histMultiCharged |
AIDA::IHistogram1D * | _histMultiPiPlus |
AIDA::IHistogram1D * | _histMultiPi0 |
AIDA::IHistogram1D * | _histMultiKPlus |
AIDA::IHistogram1D * | _histMultiK0 |
AIDA::IHistogram1D * | _histMultiEta |
AIDA::IHistogram1D * | _histMultiEtaPrime |
AIDA::IHistogram1D * | _histMultiDPlus |
AIDA::IHistogram1D * | _histMultiD0 |
AIDA::IHistogram1D * | _histMultiBPlus0 |
AIDA::IHistogram1D * | _histMultiF0 |
AIDA::IHistogram1D * | _histMultiRho |
AIDA::IHistogram1D * | _histMultiKStar892Plus |
AIDA::IHistogram1D * | _histMultiKStar892_0 |
AIDA::IHistogram1D * | _histMultiPhi |
AIDA::IHistogram1D * | _histMultiDStar2010Plus |
AIDA::IHistogram1D * | _histMultiF2 |
AIDA::IHistogram1D * | _histMultiK2Star1430_0 |
AIDA::IHistogram1D * | _histMultiP |
AIDA::IHistogram1D * | _histMultiLambda0 |
AIDA::IHistogram1D * | _histMultiXiMinus |
AIDA::IHistogram1D * | _histMultiOmegaMinus |
AIDA::IHistogram1D * | _histMultiDeltaPlusPlus |
AIDA::IHistogram1D * | _histMultiSigma1385Plus |
AIDA::IHistogram1D * | _histMultiXi1530_0 |
AIDA::IHistogram1D * | _histMultiLambdaB0 |
DELPHI event shapes and identified particle spectra.
This is the paper which was used for the original PROFESSOR MC tuning study. It studies a wide range of e+ e- event shape variables, differential jet rates in the Durham and JADE schemes, and incorporates identified particle spectra, from other LEP analyses.
Definition at line 34 of file DELPHI_1996_S3430090.cc.
DELPHI_1996_S3430090 | ( | ) | [inline] |
Constructor.
Definition at line 38 of file DELPHI_1996_S3430090.cc.
References DELPHI_1996_S3430090::_passedCut3WeightSum, DELPHI_1996_S3430090::_passedCut4WeightSum, DELPHI_1996_S3430090::_passedCut5WeightSum, DELPHI_1996_S3430090::_passedCutWeightSum, and DELPHI_1996_S3430090::_weightedTotalPartNum.
00039 : Analysis("DELPHI_1996_S3430090") 00040 { 00041 _weightedTotalPartNum = 0.0; 00042 _passedCutWeightSum = 0.0; 00043 _passedCut3WeightSum = 0.0; 00044 _passedCut4WeightSum = 0.0; 00045 _passedCut5WeightSum = 0.0; 00046 }
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, ProjectionApplier::getProjHandler(), ProjectionApplier::name(), Projection::name(), and ProjectionHandler::registerProjection().
Referenced by ProjectionApplier::addProjection().
00034 { 00035 if (!_allowProjReg) { 00036 cerr << "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 }
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 113 of file ProjectionApplier.hh.
References ProjectionApplier::_addProjection().
Referenced by ZFinder::_init(), WFinder::_init(), VetoedFinalState::addVetoOnThisFinalState(), BeamThrust::BeamThrust(), CDF_2009_S8057893::CDF_2009_S8057893::init(), CentralEtHCM::CentralEtHCM(), ChargedFinalState::ChargedFinalState(), ChargedLeptons::ChargedLeptons(), ClusteredPhotons::ClusteredPhotons(), DISFinalState::DISFinalState(), DISKinematics::DISKinematics(), DISLepton::DISLepton(), FinalState::FinalState(), FoxWolframMoments::FoxWolframMoments(), FParameter::FParameter(), 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(), TASSO_1990_S2148048::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_WPOL::init(), MC_WJETS::init(), MC_VH2BB::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(), LHCB_2010_S8758301::init(), JADE_OPAL_2000_S4300807::init(), JADE_1998_S3612880::init(), H1_2000_S4129130::init(), H1_1995_S3167097::init(), H1_1994_S2919893::init(), ExampleAnalysis::init(), E735_1998_S3905616::init(), DELPHI_2003_WUD_03_11::init(), DELPHI_2002_069_CONF_603::init(), DELPHI_1996_S3430090::init(), DELPHI_1995_S3137023::init(), D0_2010_S8821313::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_1996_S3324664::init(), D0_1996_S3214044::init(), CMS_2011_S9120041::init(), CMS_2011_S9088458::init(), CMS_2011_S9086218::init(), CMS_2011_S8978280::init(), CMS_2011_S8968497::init(), CMS_2011_S8957746::init(), CMS_2011_S8950903::init(), CMS_2011_S8884919::init(), CMS_2010_S8656010::init(), CMS_2010_S8547297::init(), CDF_2010_S8591881_QCD::init(), CDF_2010_S8591881_DY::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_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_1990_S2089246::init(), CDF_1988_S1865951::init(), BELLE_2006_S6265367::init(), ATLAS_2011_S9225137::init(), ATLAS_2011_S9212183::init(), ATLAS_2011_S9131140::init(), ATLAS_2011_S9128077::init(), ATLAS_2011_S9126244::init(), ATLAS_2011_S9120807::init(), ATLAS_2011_S9108483::init(), ATLAS_2011_S9041966::init(), ATLAS_2011_S9019561::init(), ATLAS_2011_S9002537::init(), ATLAS_2011_S8994773::init(), ATLAS_2011_S8983313::init(), ATLAS_2011_S8971293::init(), ATLAS_2011_S8924791::init(), ATLAS_2011_I925932::init(), ATLAS_2011_I919017::init(), ATLAS_2011_CONF_2011_098::init(), ATLAS_2011_CONF_2011_090::init(), ATLAS_2010_S8919674::init(), ATLAS_2010_S8918562::init(), ATLAS_2010_S8914702::init(), ATLAS_2010_S8894728::init(), ATLAS_2010_S8817804::init(), ATLAS_2010_S8591806::init(), ATLAS_2010_CONF_2010_049::init(), ALICE_2011_S8945144::init(), ALICE_2011_S8909580::init(), ALICE_2010_S8706239::init(), ALICE_2010_S8625980::init(), ALICE_2010_S8624100::init(), ALEPH_2004_S5765862::init(), ALEPH_1996_S3486095::init(), ALEPH_1996_S3196992::init(), ALEPH_1991_S2435284::init(), IsolationProjection< PROJ1, PROJ2, EST >::IsolationProjection(), JetAlg::JetAlg(), JetShape::JetShape(), LeadingParticlesFinalState::LeadingParticlesFinalState(), LeptonClusters::LeptonClusters(), LossyFinalState< ConstRandomFilter >::LossyFinalState(), MergedFinalState::MergedFinalState(), MissingMomentum::MissingMomentum(), Multiplicity::Multiplicity(), NeutralFinalState::NeutralFinalState(), NonHadronicFinalState::NonHadronicFinalState(), ParisiTensor::ParisiTensor(), Sphericity::Sphericity(), Spherocity::Spherocity(), SVertex::SVertex(), Thrust::Thrust(), TotalVisibleMomentum::TotalVisibleMomentum(), TriggerCDFRun0Run1::TriggerCDFRun0Run1(), TriggerCDFRun2::TriggerCDFRun2(), TriggerUA5::TriggerUA5(), VetoedFinalState::VetoedFinalState(), and VisibleFinalState::VisibleFinalState().
00113 { 00114 const Projection& reg = _addProjection(proj, name); 00115 const PROJ& rtn = dynamic_cast<const PROJ&>(reg); 00116 return rtn; 00117 }
IAnalysisFactory & analysisFactory | ( | ) | [protected, inherited] |
Access the AIDA analysis factory of the controlling AnalysisHandler object.
Definition at line 30 of file Analysis.cc.
References AnalysisHandler::analysisFactory(), and Analysis::handler().
00030 { 00031 return handler().analysisFactory(); 00032 }
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 148 of file DELPHI_1996_S3430090.cc.
References DELPHI_1996_S3430090::_hist1MinusT, DELPHI_1996_S3430090::_histAEEC, DELPHI_1996_S3430090::_histAplanarity, DELPHI_1996_S3430090::_histCParam, DELPHI_1996_S3430090::_histDiffRate2Durham, DELPHI_1996_S3430090::_histDiffRate2Jade, DELPHI_1996_S3430090::_histDiffRate3Durham, DELPHI_1996_S3430090::_histDiffRate3Jade, DELPHI_1996_S3430090::_histDiffRate4Durham, DELPHI_1996_S3430090::_histDiffRate4Jade, DELPHI_1996_S3430090::_histDParam, DELPHI_1996_S3430090::_histEEC, DELPHI_1996_S3430090::_histHemiBroadD, DELPHI_1996_S3430090::_histHemiBroadN, DELPHI_1996_S3430090::_histHemiBroadT, DELPHI_1996_S3430090::_histHemiBroadW, DELPHI_1996_S3430090::_histHemiMassD, DELPHI_1996_S3430090::_histHemiMassH, DELPHI_1996_S3430090::_histHemiMassL, DELPHI_1996_S3430090::_histLogScaledMom, DELPHI_1996_S3430090::_histMultiBPlus0, DELPHI_1996_S3430090::_histMultiCharged, DELPHI_1996_S3430090::_histMultiD0, DELPHI_1996_S3430090::_histMultiDeltaPlusPlus, DELPHI_1996_S3430090::_histMultiDPlus, DELPHI_1996_S3430090::_histMultiDStar2010Plus, DELPHI_1996_S3430090::_histMultiEta, DELPHI_1996_S3430090::_histMultiEtaPrime, DELPHI_1996_S3430090::_histMultiF0, DELPHI_1996_S3430090::_histMultiF2, DELPHI_1996_S3430090::_histMultiK0, DELPHI_1996_S3430090::_histMultiK2Star1430_0, DELPHI_1996_S3430090::_histMultiKPlus, DELPHI_1996_S3430090::_histMultiKStar892_0, DELPHI_1996_S3430090::_histMultiKStar892Plus, DELPHI_1996_S3430090::_histMultiLambda0, DELPHI_1996_S3430090::_histMultiLambdaB0, DELPHI_1996_S3430090::_histMultiOmegaMinus, DELPHI_1996_S3430090::_histMultiP, DELPHI_1996_S3430090::_histMultiPhi, DELPHI_1996_S3430090::_histMultiPi0, DELPHI_1996_S3430090::_histMultiPiPlus, DELPHI_1996_S3430090::_histMultiRho, DELPHI_1996_S3430090::_histMultiSigma1385Plus, DELPHI_1996_S3430090::_histMultiXi1530_0, DELPHI_1996_S3430090::_histMultiXiMinus, DELPHI_1996_S3430090::_histOblateness, DELPHI_1996_S3430090::_histPlanarity, DELPHI_1996_S3430090::_histPtSIn, DELPHI_1996_S3430090::_histPtSOut, DELPHI_1996_S3430090::_histPtTIn, DELPHI_1996_S3430090::_histPtTOut, DELPHI_1996_S3430090::_histPtTOutVsXp, DELPHI_1996_S3430090::_histPtVsXp, DELPHI_1996_S3430090::_histRapidityS, DELPHI_1996_S3430090::_histRapidityT, DELPHI_1996_S3430090::_histScaledMom, DELPHI_1996_S3430090::_histSphericity, DELPHI_1996_S3430090::_histTMajor, DELPHI_1996_S3430090::_histTMinor, DELPHI_1996_S3430090::_passedCut3WeightSum, DELPHI_1996_S3430090::_passedCut4WeightSum, DELPHI_1996_S3430090::_passedCut5WeightSum, DELPHI_1996_S3430090::_passedCutWeightSum, DELPHI_1996_S3430090::_weightedTotalPartNum, Sphericity::aplanarity(), Hemispheres::Bdiff(), Analysis::beams(), Hemispheres::Bmax(), Hemispheres::Bmin(), Hemispheres::Bsum(), ParisiTensor::C(), FastJets::clusterSeq(), ParisiTensor::D(), Rivet::dot(), FourMomentum::E(), Rivet::GeV, Vector< N >::mod(), Particle::momentum(), MSG_DEBUG, MSG_TRACE, Thrust::oblateness(), UnstableFinalState::particles(), FinalState::particles(), Particle::pdgId(), Sphericity::planarity(), Rivet::pT(), Hemispheres::scaledM2diff(), Hemispheres::scaledM2high(), Hemispheres::scaledM2low(), Sphericity::sphericity(), Sphericity::sphericityAxis(), Sphericity::sphericityMajorAxis(), Sphericity::sphericityMinorAxis(), Thrust::thrust(), Thrust::thrustAxis(), Thrust::thrustMajor(), Thrust::thrustMajorAxis(), Thrust::thrustMinor(), Thrust::thrustMinorAxis(), Vector3::unit(), FourVector::vector3(), and vetoEvent.
00148 { 00149 // First, veto on leptonic events by requiring at least 4 charged FS particles 00150 const FinalState& fs = applyProjection<FinalState>(e, "FS"); 00151 const size_t numParticles = fs.particles().size(); 00152 // Even if we only generate hadronic events, we still need a cut on numCharged >= 2. 00153 if (numParticles < 2) { 00154 MSG_DEBUG("Failed leptonic event cut"); 00155 vetoEvent; 00156 } 00157 MSG_DEBUG("Passed leptonic event cut"); 00158 const double weight = e.weight(); 00159 _passedCutWeightSum += weight; 00160 _weightedTotalPartNum += numParticles * weight; 00161 00162 // Get beams and average beam momentum 00163 const ParticlePair& beams = applyProjection<Beam>(e, "Beams").beams(); 00164 const double meanBeamMom = ( beams.first.momentum().vector3().mod() + 00165 beams.second.momentum().vector3().mod() ) / 2.0; 00166 MSG_DEBUG("Avg beam momentum = " << meanBeamMom); 00167 00168 // Thrusts 00169 MSG_DEBUG("Calculating thrust"); 00170 const Thrust& thrust = applyProjection<Thrust>(e, "Thrust"); 00171 _hist1MinusT->fill(1 - thrust.thrust(), weight); 00172 _histTMajor->fill(thrust.thrustMajor(), weight); 00173 _histTMinor->fill(thrust.thrustMinor(), weight); 00174 _histOblateness->fill(thrust.oblateness(), weight); 00175 00176 // Jets 00177 const FastJets& durjet = applyProjection<FastJets>(e, "DurhamJets"); 00178 const FastJets& jadejet = applyProjection<FastJets>(e, "JadeJets"); 00179 if (numParticles >= 3) { 00180 _passedCut3WeightSum += weight; 00181 if (durjet.clusterSeq()) _histDiffRate2Durham->fill(durjet.clusterSeq()->exclusive_ymerge_max(2), weight); 00182 if (jadejet.clusterSeq()) _histDiffRate2Jade->fill(jadejet.clusterSeq()->exclusive_ymerge_max(2), weight); 00183 } 00184 if (numParticles >= 4) { 00185 _passedCut4WeightSum += weight; 00186 if (durjet.clusterSeq()) _histDiffRate3Durham->fill(durjet.clusterSeq()->exclusive_ymerge_max(3), weight); 00187 if (jadejet.clusterSeq()) _histDiffRate3Jade->fill(jadejet.clusterSeq()->exclusive_ymerge_max(3), weight); 00188 } 00189 if (numParticles >= 5) { 00190 _passedCut5WeightSum += weight; 00191 if (durjet.clusterSeq()) _histDiffRate4Durham->fill(durjet.clusterSeq()->exclusive_ymerge_max(4), weight); 00192 if (jadejet.clusterSeq()) _histDiffRate4Jade->fill(jadejet.clusterSeq()->exclusive_ymerge_max(4), weight); 00193 } 00194 00195 // Sphericities 00196 MSG_DEBUG("Calculating sphericity"); 00197 const Sphericity& sphericity = applyProjection<Sphericity>(e, "Sphericity"); 00198 _histSphericity->fill(sphericity.sphericity(), weight); 00199 _histAplanarity->fill(sphericity.aplanarity(), weight); 00200 _histPlanarity->fill(sphericity.planarity(), weight); 00201 00202 // C & D params 00203 MSG_DEBUG("Calculating Parisi params"); 00204 const ParisiTensor& parisi = applyProjection<ParisiTensor>(e, "Parisi"); 00205 _histCParam->fill(parisi.C(), weight); 00206 _histDParam->fill(parisi.D(), weight); 00207 00208 // Hemispheres 00209 MSG_DEBUG("Calculating hemisphere variables"); 00210 const Hemispheres& hemi = applyProjection<Hemispheres>(e, "Hemispheres"); 00211 _histHemiMassH->fill(hemi.scaledM2high(), weight); 00212 _histHemiMassL->fill(hemi.scaledM2low(), weight); 00213 _histHemiMassD->fill(hemi.scaledM2diff(), weight); 00214 _histHemiBroadW->fill(hemi.Bmax(), weight); 00215 _histHemiBroadN->fill(hemi.Bmin(), weight); 00216 _histHemiBroadT->fill(hemi.Bsum(), weight); 00217 _histHemiBroadD->fill(hemi.Bdiff(), weight); 00218 00219 // Iterate over all the charged final state particles. 00220 double Evis = 0.0; 00221 double Evis2 = 0.0; 00222 MSG_DEBUG("About to iterate over charged FS particles"); 00223 foreach (const Particle& p, fs.particles()) { 00224 // Get momentum and energy of each particle. 00225 const Vector3 mom3 = p.momentum().vector3(); 00226 const double energy = p.momentum().E(); 00227 Evis += energy; 00228 00229 // Scaled momenta. 00230 const double mom = mom3.mod(); 00231 const double scaledMom = mom/meanBeamMom; 00232 const double logInvScaledMom = -std::log(scaledMom); 00233 _histLogScaledMom->fill(logInvScaledMom, weight); 00234 _histScaledMom->fill(scaledMom, weight); 00235 00236 // Get momenta components w.r.t. thrust and sphericity. 00237 const double momT = dot(thrust.thrustAxis(), mom3); 00238 const double momS = dot(sphericity.sphericityAxis(), mom3); 00239 const double pTinT = dot(mom3, thrust.thrustMajorAxis()); 00240 const double pToutT = dot(mom3, thrust.thrustMinorAxis()); 00241 const double pTinS = dot(mom3, sphericity.sphericityMajorAxis()); 00242 const double pToutS = dot(mom3, sphericity.sphericityMinorAxis()); 00243 const double pT = sqrt(pow(pTinT, 2) + pow(pToutT, 2)); 00244 _histPtTIn->fill(fabs(pTinT/GeV), weight); 00245 _histPtTOut->fill(fabs(pToutT/GeV), weight); 00246 _histPtSIn->fill(fabs(pTinS/GeV), weight); 00247 _histPtSOut->fill(fabs(pToutS/GeV), weight); 00248 _histPtVsXp->fill(scaledMom, fabs(pT/GeV), weight); 00249 _histPtTOutVsXp->fill(scaledMom, fabs(pToutT/GeV), weight); 00250 00251 // Calculate rapidities w.r.t. thrust and sphericity. 00252 const double rapidityT = 0.5 * std::log((energy + momT) / (energy - momT)); 00253 const double rapidityS = 0.5 * std::log((energy + momS) / (energy - momS)); 00254 _histRapidityT->fill(rapidityT, weight); 00255 _histRapidityS->fill(rapidityS, weight); 00256 MSG_TRACE(fabs(rapidityT) << " " << scaledMom/GeV); 00257 } 00258 Evis2 = Evis*Evis; 00259 00260 // (A)EEC 00261 // Need iterators since second loop starts at current outer loop iterator, i.e. no "foreach" here! 00262 for (ParticleVector::const_iterator p_i = fs.particles().begin(); p_i != fs.particles().end(); ++p_i) { 00263 for (ParticleVector::const_iterator p_j = p_i; p_j != fs.particles().end(); ++p_j) { 00264 if (p_i == p_j) continue; 00265 const Vector3 mom3_i = p_i->momentum().vector3(); 00266 const Vector3 mom3_j = p_j->momentum().vector3(); 00267 const double energy_i = p_i->momentum().E(); 00268 const double energy_j = p_j->momentum().E(); 00269 const double cosij = dot(mom3_i.unit(), mom3_j.unit()); 00270 const double eec = (energy_i*energy_j) / Evis2; 00271 _histEEC->fill(cosij, eec*weight); 00272 _histAEEC->fill( cosij, eec*weight); 00273 _histAEEC->fill(-cosij, -eec*weight); 00274 } 00275 } 00276 00277 _histMultiCharged->fill(_histMultiCharged->binMean(0), numParticles*weight); 00278 00279 00280 // Final state of unstable particles to get particle spectra 00281 const UnstableFinalState& ufs = applyProjection<UnstableFinalState>(e, "UFS"); 00282 00283 foreach (const Particle& p, ufs.particles()) { 00284 int id = abs(p.pdgId()); 00285 switch (id) { 00286 case 211: 00287 _histMultiPiPlus->fill(_histMultiPiPlus->binMean(0), weight); 00288 break; 00289 case 111: 00290 _histMultiPi0->fill(_histMultiPi0->binMean(0), weight); 00291 break; 00292 case 321: 00293 _histMultiKPlus->fill(_histMultiKPlus->binMean(0), weight); 00294 break; 00295 case 130: 00296 case 310: 00297 _histMultiK0->fill(_histMultiK0->binMean(0), weight); 00298 break; 00299 case 221: 00300 _histMultiEta->fill(_histMultiEta->binMean(0), weight); 00301 break; 00302 case 331: 00303 _histMultiEtaPrime->fill(_histMultiEtaPrime->binMean(0), weight); 00304 break; 00305 case 411: 00306 _histMultiDPlus->fill(_histMultiDPlus->binMean(0), weight); 00307 break; 00308 case 421: 00309 _histMultiD0->fill(_histMultiD0->binMean(0), weight); 00310 break; 00311 case 511: 00312 case 521: 00313 case 531: 00314 _histMultiBPlus0->fill(_histMultiBPlus0->binMean(0), weight); 00315 break; 00316 case 9010221: 00317 _histMultiF0->fill(_histMultiF0->binMean(0), weight); 00318 break; 00319 case 113: 00320 _histMultiRho->fill(_histMultiRho->binMean(0), weight); 00321 break; 00322 case 323: 00323 _histMultiKStar892Plus->fill(_histMultiKStar892Plus->binMean(0), weight); 00324 break; 00325 case 313: 00326 _histMultiKStar892_0->fill(_histMultiKStar892_0->binMean(0), weight); 00327 break; 00328 case 333: 00329 _histMultiPhi->fill(_histMultiPhi->binMean(0), weight); 00330 break; 00331 case 413: 00332 _histMultiDStar2010Plus->fill(_histMultiDStar2010Plus->binMean(0), weight); 00333 break; 00334 case 225: 00335 _histMultiF2->fill(_histMultiF2->binMean(0), weight); 00336 break; 00337 case 315: 00338 _histMultiK2Star1430_0->fill(_histMultiK2Star1430_0->binMean(0), weight); 00339 break; 00340 case 2212: 00341 _histMultiP->fill(_histMultiP->binMean(0), weight); 00342 break; 00343 case 3122: 00344 _histMultiLambda0->fill(_histMultiLambda0->binMean(0), weight); 00345 break; 00346 case 3312: 00347 _histMultiXiMinus->fill(_histMultiXiMinus->binMean(0), weight); 00348 break; 00349 case 3334: 00350 _histMultiOmegaMinus->fill(_histMultiOmegaMinus->binMean(0), weight); 00351 break; 00352 case 2224: 00353 _histMultiDeltaPlusPlus->fill(_histMultiDeltaPlusPlus->binMean(0), weight); 00354 break; 00355 case 3114: 00356 _histMultiSigma1385Plus->fill(_histMultiSigma1385Plus->binMean(0), weight); 00357 break; 00358 case 3324: 00359 _histMultiXi1530_0->fill(_histMultiXi1530_0->binMean(0), weight); 00360 break; 00361 case 5122: 00362 _histMultiLambdaB0->fill(_histMultiLambdaB0->binMean(0), weight); 00363 break; 00364 } 00365 } 00366 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const std::string & | name | |||
) | const [inline, inherited] |
Apply the named projection on event.
Definition at line 81 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
00081 { 00082 return pcast<PROJ>(_applyProjection(evt, name)); 00083 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const Projection & | proj | |||
) | const [inline, inherited] |
Apply the supplied projection on event.
Definition at line 74 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
00074 { 00075 return pcast<PROJ>(_applyProjection(evt, proj)); 00076 }
const PROJ& applyProjection | ( | const Event & | evt, | |
const PROJ & | proj | |||
) | const [inline, inherited] |
Apply the supplied projection on event.
Definition at line 67 of file ProjectionApplier.hh.
References ProjectionApplier::_applyProjection().
Referenced by DISFinalState::project().
00067 { 00068 return pcast<PROJ>(_applyProjection(evt, proj)); 00069 }
virtual std::vector<std::string> authors | ( | ) | const [inline, 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 136 of file Analysis.hh.
References AnalysisInfo::authors(), and Analysis::info().
00136 { 00137 return info().authors(); 00138 }
const PdgIdPair beamIds | ( | ) | const [inherited] |
Incoming beam IDs for this run.
Definition at line 58 of file Analysis.cc.
References AnalysisHandler::beamIds(), and Analysis::handler().
Referenced by UA5_1982_S875503::finalize(), and UA5_1982_S875503::init().
00058 { 00059 return handler().beamIds(); 00060 }
const ParticlePair & beams | ( | ) | const [inherited] |
Incoming beams for this run.
Definition at line 54 of file Analysis.cc.
References AnalysisHandler::beams(), and Analysis::handler().
Referenced by OPAL_1998_S3780481::analyze(), MC_WPOL::analyze(), DELPHI_2002_069_CONF_603::analyze(), DELPHI_1996_S3430090::analyze(), DELPHI_1995_S3137023::analyze(), BELLE_2006_S6265367::analyze(), ALEPH_2004_S5765862::analyze(), ALEPH_1996_S3486095::analyze(), MC_WPOL::init(), and Analysis::isCompatible().
00054 { 00055 return handler().beams(); 00056 }
virtual std::string bibKey | ( | ) | const [inline, virtual, inherited] |
BibTeX citation key for this article.
Definition at line 189 of file Analysis.hh.
References AnalysisInfo::bibKey(), and Analysis::info().
00189 { 00190 return info().bibKey(); 00191 }
virtual std::string bibTeX | ( | ) | const [inline, virtual, inherited] |
BibTeX citation entry for this article.
Definition at line 194 of file Analysis.hh.
References AnalysisInfo::bibTeX(), and Analysis::info().
00194 { 00195 return info().bibTeX(); 00196 }
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 218 of file Analysis.cc.
References Analysis::binEdges(), and Analysis::makeAxisCode().
00218 { 00219 const string hname = makeAxisCode(datasetId, xAxisId, yAxisId); 00220 return binEdges(hname); 00221 }
const BinEdges & binEdges | ( | const std::string & | hname | ) | const [protected, inherited] |
Get bin edges for a named histo (using ref AIDA caching).
Definition at line 203 of file Analysis.cc.
References Analysis::_cacheBinEdges(), Analysis::_histBinEdges, Analysis::getLog(), MSG_TRACE, Analysis::name(), and Log::TRACE.
Referenced by ATLAS_2011_S8994773::analyze(), ATLAS_2010_S8894728::analyze(), Analysis::binEdges(), Analysis::bookHistogram1D(), Analysis::bookProfile1D(), ATLAS_2011_S9126244::finalize(), D0_2008_S7837160::init(), CMS_2011_S9088458::init(), CDF_1994_S2952106::init(), ATLAS_2011_S9128077::init(), ATLAS_2011_S9002537::init(), ATLAS_2010_S8894728::init(), ALICE_2011_S8909580::init(), and ATLAS_2011_S9126244::initializePlots().
00203 { 00204 _cacheBinEdges(); 00205 MSG_TRACE("Using histo bin edges for " << name() << ":" << hname); 00206 const BinEdges& edges = _histBinEdges.find(hname)->second; 00207 if (getLog().isActive(Log::TRACE)) { 00208 stringstream edges_ss; 00209 foreach (const double be, edges) { 00210 edges_ss << " " << be; 00211 } 00212 MSG_TRACE("Edges:" << edges_ss.str()); 00213 } 00214 return edges; 00215 }
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.
Definition at line 440 of file Analysis.cc.
References Analysis::_cacheXAxisData(), Analysis::_dpsData, Analysis::bookDataPointSet(), Analysis::makeAxisCode(), MSG_TRACE, and Analysis::name().
00442 { 00443 // Get the bin edges (only read the AIDA file once) 00444 _cacheXAxisData(); 00445 // Build the axis code 00446 const string axisCode = makeAxisCode(datasetId, xAxisId, yAxisId); 00447 //const map<string, vector<DPSXPoint> > xpoints = getDPSXValsErrs(papername); 00448 MSG_TRACE("Using DPS x-positions for " << name() << ":" << axisCode); 00449 IDataPointSet* dps = bookDataPointSet(axisCode, title, xtitle, ytitle); 00450 const vector<DPSXPoint> xpts = _dpsData.find(axisCode)->second; 00451 for (size_t pt = 0; pt < xpts.size(); ++pt) { 00452 dps->addPoint(); 00453 IMeasurement* meas = dps->point(pt)->coordinate(0); 00454 meas->setValue(xpts[pt].val); 00455 meas->setErrorPlus(xpts[pt].errplus); 00456 meas->setErrorMinus(xpts[pt].errminus); 00457 } 00458 MSG_TRACE("Made DPS " << axisCode << " for " << name()); 00459 return dps; 00460 }
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!)
Definition at line 422 of file Analysis.cc.
References Analysis::bookDataPointSet().
00425 { 00426 IDataPointSet* dps = bookDataPointSet(hname, title, xtitle, ytitle); 00427 for (size_t pt = 0; pt < npts; ++pt) { 00428 const double binwidth = (upper-lower)/npts; 00429 const double bincentre = lower + (pt + 0.5) * binwidth; 00430 dps->addPoint(); 00431 IMeasurement* meas = dps->point(pt)->coordinate(0); 00432 meas->setValue(bincentre); 00433 meas->setErrorPlus(binwidth/2.0); 00434 meas->setErrorMinus(binwidth/2.0); 00435 } 00436 return dps; 00437 }
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!)
Definition at line 407 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::datapointsetFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
Referenced by Analysis::bookDataPointSet(), ALEPH_2004_S5765862::finalize(), UA5_1988_S1867512::init(), STAR_2006_S6860818::init(), OPAL_1993_S2692198::init(), MC_XS::init(), MC_JetAnalysis::init(), JADE_OPAL_2000_S4300807::init(), D0_2001_S4674421::init(), CMS_2011_S9088458::init(), CDF_2008_S7782535::init(), CDF_2008_S7541902::init(), CDF_2005_S6217184::init(), CDF_1996_S3418421::init(), CDF_1994_S2952106::init(), ATLAS_2011_S9128077::init(), ATLAS_2011_S9002537::init(), ATLAS_2010_S8894728::init(), ALEPH_2004_S5765862::init(), and ATLAS_2011_S9126244::initializePlots().
00408 { 00409 _makeHistoDir(); 00410 const string path = histoPath(hname); 00411 if (path.find(" ") != string::npos) { 00412 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00413 } 00414 IDataPointSet* dps = datapointsetFactory().create(path, title, 2); 00415 MSG_TRACE("Made data point set " << hname << " for " << name()); 00416 dps->setXTitle(xtitle); 00417 dps->setYTitle(ytitle); 00418 return dps; 00419 }
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] |
Book a 1D histogram based on the paper, dataset and x/y-axis IDs in the corresponding HepData record. The binnings will be obtained by reading the bundled AIDA data record file of the same filename as the analysis' name() property.
Definition at line 237 of file Analysis.cc.
References Analysis::bookHistogram1D(), and Analysis::makeAxisCode().
00240 { 00241 const string axisCode = makeAxisCode(datasetId, xAxisId, yAxisId); 00242 return bookHistogram1D(axisCode, title, xtitle, ytitle); 00243 }
IHistogram1D * bookHistogram1D | ( | const std::string & | name, | |
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 1D histogram based on the name in the corresponding AIDA file. The binnings will be obtained by reading the bundled AIDA data record file with the same filename as the analysis' name() property.
Definition at line 246 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::binEdges(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
00248 { 00249 // Get the bin edges (only read the AIDA file once) 00250 const BinEdges edges = binEdges(hname); 00251 _makeHistoDir(); 00252 const string path = histoPath(hname); 00253 if (path.find(" ") != string::npos) { 00254 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00255 } 00256 IHistogram1D* hist = histogramFactory().createHistogram1D(path, title, edges); 00257 MSG_TRACE("Made histogram " << hname << " for " << name()); 00258 hist->setXTitle(xtitle); 00259 hist->setYTitle(ytitle); 00260 return hist; 00261 }
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!)
Definition at line 281 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
00284 { 00285 _makeHistoDir(); 00286 const string path = histoPath(hname); 00287 if (path.find(" ") != string::npos) { 00288 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00289 } 00290 IHistogram1D* hist = histogramFactory().createHistogram1D(path, title, binedges); 00291 MSG_TRACE("Made histogram " << hname << " for " << name()); 00292 hist->setXTitle(xtitle); 00293 hist->setYTitle(ytitle); 00294 return hist; 00295 }
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!)
Definition at line 264 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
Referenced by Analysis::bookHistogram1D(), ZEUS_2001_S4815815::init(), UA5_1989_S1926373::init(), UA5_1987_S1640666::init(), UA5_1986_S1583476::init(), UA5_1982_S875503::init(), UA1_1990_S2044935::init(), TASSO_1990_S2148048::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_XS::init(), MC_WWJETS::init(), MC_WPOL::init(), MC_WJETS::init(), MC_VH2BB::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(), LHCB_2010_S8758301::init(), JADE_OPAL_2000_S4300807::init(), JADE_1998_S3612880::init(), H1_2000_S4129130::init(), H1_1995_S3167097::init(), H1_1994_S2919893::init(), ExampleAnalysis::init(), E735_1998_S3905616::init(), DELPHI_2003_WUD_03_11::init(), DELPHI_2002_069_CONF_603::init(), DELPHI_1996_S3430090::init(), DELPHI_1995_S3137023::init(), D0_2010_S8821313::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_1996_S3324664::init(), D0_1996_S3214044::init(), CMS_2011_S9120041::init(), CMS_2011_S9088458::init(), CMS_2011_S9086218::init(), CMS_2011_S8978280::init(), CMS_2011_S8968497::init(), CMS_2011_S8957746::init(), CMS_2011_S8950903::init(), CMS_2011_S8884919::init(), CMS_2010_S8656010::init(), CMS_2010_S8547297::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_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_1990_S2089246::init(), CDF_1988_S1865951::init(), BELLE_2006_S6265367::init(), ATLAS_2011_S9225137::init(), ATLAS_2011_S9212183::init(), ATLAS_2011_S9131140::init(), ATLAS_2011_S9128077::init(), ATLAS_2011_S9120807::init(), ATLAS_2011_S9108483::init(), ATLAS_2011_S9041966::init(), ATLAS_2011_S9019561::init(), ATLAS_2011_S9002537::init(), ATLAS_2011_S8983313::init(), ATLAS_2011_S8971293::init(), ATLAS_2011_I925932::init(), ATLAS_2011_I919017::init(), ATLAS_2011_CONF_2011_098::init(), ATLAS_2011_CONF_2011_090::init(), ATLAS_2010_S8919674::init(), ATLAS_2010_S8918562::init(), ATLAS_2010_S8914702::init(), ATLAS_2010_S8817804::init(), ATLAS_2010_S8591806::init(), ATLAS_2010_CONF_2010_049::init(), ALICE_2011_S8945144::init(), ALICE_2011_S8909580::init(), ALICE_2010_S8706239::init(), ALICE_2010_S8625980::init(), ALICE_2010_S8624100::init(), ALEPH_2004_S5765862::init(), ALEPH_1996_S3486095::init(), ALEPH_1996_S3196992::init(), ALEPH_1991_S2435284::init(), and ATLAS_2011_S9126244::initializePlots().
00267 { 00268 _makeHistoDir(); 00269 const string path = histoPath(hname); 00270 if (path.find(" ") != string::npos) { 00271 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00272 } 00273 IHistogram1D* hist = histogramFactory().createHistogram1D(path, title, nbins, lower, upper); 00274 MSG_TRACE("Made histogram " << hname << " for " << name()); 00275 hist->setXTitle(xtitle); 00276 hist->setYTitle(ytitle); 00277 return hist; 00278 }
IHistogram2D * bookHistogram2D | ( | const std::string & | name, | |
const std::vector< double > & | xbinedges, | |||
const std::vector< double > & | ybinedges, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" , |
|||
const std::string & | ztitle = "" | |||
) | [protected, inherited] |
Book a 2D histogram with non-uniform bins defined by the vectorx of bin edges xbinedges and ybinedges. (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!)
Definition at line 320 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
00324 { 00325 _makeHistoDir(); 00326 const string path = histoPath(hname); 00327 if (path.find(" ") != string::npos) { 00328 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00329 } 00330 IHistogram2D* hist = 00331 histogramFactory().createHistogram2D(path, title, xbinedges, ybinedges); 00332 MSG_TRACE("Made 2D histogram " << hname << " for " << name()); 00333 hist->setXTitle(xtitle); 00334 hist->setYTitle(ytitle); 00335 hist->setZTitle(ztitle); 00336 return hist; 00337 }
IHistogram2D * bookHistogram2D | ( | const std::string & | name, | |
size_t | nxbins, | |||
double | xlower, | |||
double | xupper, | |||
size_t | nybins, | |||
double | ylower, | |||
double | yupper, | |||
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" , |
|||
const std::string & | ztitle = "" | |||
) | [protected, inherited] |
Book a 2D histogram with nxbins and nybins uniformly distributed across the ranges xlower - xupper and ylower - yupper respectively along the x- and y-axis. (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!)
Definition at line 298 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
00302 { 00303 _makeHistoDir(); 00304 const string path = histoPath(hname); 00305 if (path.find(" ") != string::npos) { 00306 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00307 } 00308 IHistogram2D* hist = 00309 histogramFactory().createHistogram2D(path, title, nxbins, xlower, xupper, 00310 nybins, ylower, yupper); 00311 MSG_TRACE("Made 2D histogram " << hname << " for " << name()); 00312 hist->setXTitle(xtitle); 00313 hist->setYTitle(ytitle); 00314 hist->setZTitle(ztitle); 00315 return hist; 00316 }
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] |
Book a 1D profile histogram based on the paper, dataset and x/y-axis IDs in the corresponding HepData record. The binnings will be obtained by reading the bundled AIDA data record file of the same filename as the analysis' name() property.
Definition at line 343 of file Analysis.cc.
References Analysis::bookProfile1D(), and Analysis::makeAxisCode().
00345 { 00346 const string axisCode = makeAxisCode(datasetId, xAxisId, yAxisId); 00347 return bookProfile1D(axisCode, title, xtitle, ytitle); 00348 }
IProfile1D * bookProfile1D | ( | const std::string & | name, | |
const std::string & | title = "" , |
|||
const std::string & | xtitle = "" , |
|||
const std::string & | ytitle = "" | |||
) | [protected, inherited] |
Book a 1D profile histogram based on the name in the corresponding AIDA file. The binnings will be obtained by reading the bundled AIDA data record file with the same filename as the analysis' name() property.
Definition at line 351 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::binEdges(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
00353 { 00354 // Get the bin edges (only read the AIDA file once) 00355 const BinEdges edges = binEdges(hname); 00356 _makeHistoDir(); 00357 const string path = histoPath(hname); 00358 if (path.find(" ") != string::npos) { 00359 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00360 } 00361 IProfile1D* prof = histogramFactory().createProfile1D(path, title, edges); 00362 MSG_TRACE("Made profile histogram " << hname << " for " << name()); 00363 prof->setXTitle(xtitle); 00364 prof->setYTitle(ytitle); 00365 return prof; 00366 }
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!)
Definition at line 386 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
00389 { 00390 _makeHistoDir(); 00391 const string path = histoPath(hname); 00392 if (path.find(" ") != string::npos) { 00393 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00394 } 00395 IProfile1D* prof = histogramFactory().createProfile1D(path, title, binedges); 00396 MSG_TRACE("Made profile histogram " << hname << " for " << name()); 00397 prof->setXTitle(xtitle); 00398 prof->setYTitle(ytitle); 00399 return prof; 00400 }
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!)
Definition at line 369 of file Analysis.cc.
References Analysis::_makeHistoDir(), Analysis::histogramFactory(), Analysis::histoPath(), MSG_TRACE, and Analysis::name().
Referenced by Analysis::bookProfile1D(), UA1_1990_S2044935::init(), STAR_2009_UE_HELEN::init(), STAR_2008_S7993412::init(), STAR_2006_S6860818::init(), MC_WPOL::init(), MC_PHOTONJETUE::init(), MC_LEADINGJETS::init(), MC_GENERIC::init(), H1_2000_S4129130::init(), H1_1994_S2919893::init(), DELPHI_2002_069_CONF_603::init(), DELPHI_1996_S3430090::init(), D0_1996_S3324664::init(), CMS_2011_S9120041::init(), CMS_2011_S8884919::init(), CDF_2010_S8591881_QCD::init(), CDF_2010_S8591881_DY::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_2001_S4751469::init(), ATLAS_2011_S8994773::init(), ATLAS_2011_S8924791::init(), ATLAS_2010_S8918562::init(), ATLAS_2010_S8894728::init(), ATLAS_2010_S8591806::init(), ALICE_2011_S8945144::init(), ALICE_2010_S8706239::init(), and ATLAS_2011_S9126244::initializePlots().
00372 { 00373 _makeHistoDir(); 00374 const string path = histoPath(hname); 00375 if (path.find(" ") != string::npos) { 00376 throw Error("Histogram path '" + path + "' is invalid: spaces are not permitted in paths"); 00377 } 00378 IProfile1D* prof = histogramFactory().createProfile1D(path, title, nbins, lower, upper); 00379 MSG_TRACE("Made profile histogram " << hname << " for " << name()); 00380 prof->setXTitle(xtitle); 00381 prof->setYTitle(ytitle); 00382 return prof; 00383 }
virtual std::string collider | ( | ) | const [inline, virtual, inherited] |
Collider on which the experiment ran.
Definition at line 174 of file Analysis.hh.
References AnalysisInfo::collider(), and Analysis::info().
00174 { 00175 return info().collider(); 00176 }
double crossSection | ( | ) | const [protected, inherited] |
Get the process cross-section in pb. Throws if this hasn't been set.
Definition at line 166 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_XS::finalize(), MC_WWJETS::finalize(), MC_WJETS::finalize(), MC_VH2BB::finalize(), MC_JetAnalysis::finalize(), MC_HJETS::finalize(), MC_DIPHOTON::finalize(), LHCB_2010_S8758301::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(), CMS_2011_S9086218::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(), ATLAS_2011_S9212183::finalize(), ATLAS_2011_S9120807::finalize(), ATLAS_2011_S9108483::finalize(), ATLAS_2011_S9041966::finalize(), ATLAS_2011_I919017::finalize(), ATLAS_2011_CONF_2011_098::finalize(), ATLAS_2011_CONF_2011_090::finalize(), ATLAS_2010_S8919674::finalize(), ATLAS_2010_S8914702::finalize(), and ATLAS_2010_CONF_2010_049::finalize().
00166 { 00167 if (!_gotCrossSection || std::isnan(_crossSection)) { 00168 string errMsg = "You did not set the cross section for the analysis " + name(); 00169 throw Error(errMsg); 00170 } 00171 return _crossSection; 00172 }
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 174 of file Analysis.cc.
References Analysis::_crossSection, and Analysis::sumOfWeights().
Referenced by UA1_1990_S2044935::finalize(), MC_WPOL::finalize(), MC_PHOTONJETS::finalize(), D0_2010_S8671338::finalize(), D0_2009_S8349509::finalize(), D0_2001_S4674421::finalize(), CDF_2007_S7057202::finalize(), CDF_1988_S1865951::finalize(), ATLAS_2011_S9128077::finalize(), and ATLAS_2010_S8817804::finalize().
00174 { 00175 const double sumW = sumOfWeights(); 00176 assert(sumW != 0.0); 00177 return _crossSection / sumW; 00178 }
IDataPointSetFactory & datapointsetFactory | ( | ) | [protected, inherited] |
Access the AIDA histogram factory of the controlling AnalysisHandler object.
Definition at line 45 of file Analysis.cc.
References AnalysisHandler::datapointsetFactory(), and Analysis::handler().
Referenced by Analysis::bookDataPointSet(), and Analysis::scale().
00045 { 00046 return handler().datapointsetFactory(); 00047 }
virtual std::string description | ( | ) | const [inline, 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 155 of file Analysis.hh.
References AnalysisInfo::description(), and Analysis::info().
00155 { 00156 return info().description(); 00157 }
virtual std::string experiment | ( | ) | const [inline, virtual, inherited] |
Experiment which performed and published this analysis.
Definition at line 169 of file Analysis.hh.
References AnalysisInfo::experiment(), and Analysis::info().
00169 { 00170 return info().experiment(); 00171 }
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 371 of file DELPHI_1996_S3430090.cc.
References DELPHI_1996_S3430090::_hist1MinusT, DELPHI_1996_S3430090::_histAEEC, DELPHI_1996_S3430090::_histAplanarity, DELPHI_1996_S3430090::_histCParam, DELPHI_1996_S3430090::_histDiffRate2Durham, DELPHI_1996_S3430090::_histDiffRate2Jade, DELPHI_1996_S3430090::_histDiffRate3Durham, DELPHI_1996_S3430090::_histDiffRate3Jade, DELPHI_1996_S3430090::_histDiffRate4Durham, DELPHI_1996_S3430090::_histDiffRate4Jade, DELPHI_1996_S3430090::_histDParam, DELPHI_1996_S3430090::_histEEC, DELPHI_1996_S3430090::_histHemiBroadD, DELPHI_1996_S3430090::_histHemiBroadN, DELPHI_1996_S3430090::_histHemiBroadT, DELPHI_1996_S3430090::_histHemiBroadW, DELPHI_1996_S3430090::_histHemiMassD, DELPHI_1996_S3430090::_histHemiMassH, DELPHI_1996_S3430090::_histHemiMassL, DELPHI_1996_S3430090::_histLogScaledMom, DELPHI_1996_S3430090::_histMultiBPlus0, DELPHI_1996_S3430090::_histMultiCharged, DELPHI_1996_S3430090::_histMultiD0, DELPHI_1996_S3430090::_histMultiDeltaPlusPlus, DELPHI_1996_S3430090::_histMultiDPlus, DELPHI_1996_S3430090::_histMultiDStar2010Plus, DELPHI_1996_S3430090::_histMultiEta, DELPHI_1996_S3430090::_histMultiEtaPrime, DELPHI_1996_S3430090::_histMultiF0, DELPHI_1996_S3430090::_histMultiF2, DELPHI_1996_S3430090::_histMultiK0, DELPHI_1996_S3430090::_histMultiK2Star1430_0, DELPHI_1996_S3430090::_histMultiKPlus, DELPHI_1996_S3430090::_histMultiKStar892_0, DELPHI_1996_S3430090::_histMultiKStar892Plus, DELPHI_1996_S3430090::_histMultiLambda0, DELPHI_1996_S3430090::_histMultiLambdaB0, DELPHI_1996_S3430090::_histMultiOmegaMinus, DELPHI_1996_S3430090::_histMultiP, DELPHI_1996_S3430090::_histMultiPhi, DELPHI_1996_S3430090::_histMultiPi0, DELPHI_1996_S3430090::_histMultiPiPlus, DELPHI_1996_S3430090::_histMultiRho, DELPHI_1996_S3430090::_histMultiSigma1385Plus, DELPHI_1996_S3430090::_histMultiXi1530_0, DELPHI_1996_S3430090::_histMultiXiMinus, DELPHI_1996_S3430090::_histOblateness, DELPHI_1996_S3430090::_histPlanarity, DELPHI_1996_S3430090::_histPtSIn, DELPHI_1996_S3430090::_histPtSOut, DELPHI_1996_S3430090::_histPtTIn, DELPHI_1996_S3430090::_histPtTOut, DELPHI_1996_S3430090::_histRapidityS, DELPHI_1996_S3430090::_histRapidityT, DELPHI_1996_S3430090::_histScaledMom, DELPHI_1996_S3430090::_histSphericity, DELPHI_1996_S3430090::_histTMajor, DELPHI_1996_S3430090::_histTMinor, DELPHI_1996_S3430090::_passedCut3WeightSum, DELPHI_1996_S3430090::_passedCut4WeightSum, DELPHI_1996_S3430090::_passedCut5WeightSum, DELPHI_1996_S3430090::_passedCutWeightSum, DELPHI_1996_S3430090::_weightedTotalPartNum, Analysis::normalize(), and Analysis::scale().
00371 { 00372 // Normalize inclusive single particle distributions to the average number 00373 // of charged particles per event. 00374 const double avgNumParts = _weightedTotalPartNum / _passedCutWeightSum; 00375 00376 normalize(_histPtTIn, avgNumParts); 00377 normalize(_histPtTOut, avgNumParts); 00378 normalize(_histPtSIn, avgNumParts); 00379 normalize(_histPtSOut, avgNumParts); 00380 00381 normalize(_histRapidityT, avgNumParts); 00382 normalize(_histRapidityS, avgNumParts); 00383 00384 normalize(_histLogScaledMom, avgNumParts); 00385 normalize(_histScaledMom, avgNumParts); 00386 00387 scale(_histEEC, 1.0/_passedCutWeightSum); 00388 scale(_histAEEC, 1.0/_passedCutWeightSum); 00389 scale(_histMultiCharged, 1.0/_passedCutWeightSum); 00390 00391 scale(_histMultiPiPlus, 1.0/_passedCutWeightSum); 00392 scale(_histMultiPi0, 1.0/_passedCutWeightSum); 00393 scale(_histMultiKPlus, 1.0/_passedCutWeightSum); 00394 scale(_histMultiK0, 1.0/_passedCutWeightSum); 00395 scale(_histMultiEta, 1.0/_passedCutWeightSum); 00396 scale(_histMultiEtaPrime, 1.0/_passedCutWeightSum); 00397 scale(_histMultiDPlus, 1.0/_passedCutWeightSum); 00398 scale(_histMultiD0, 1.0/_passedCutWeightSum); 00399 scale(_histMultiBPlus0, 1.0/_passedCutWeightSum); 00400 00401 scale(_histMultiF0, 1.0/_passedCutWeightSum); 00402 00403 scale(_histMultiRho, 1.0/_passedCutWeightSum); 00404 scale(_histMultiKStar892Plus, 1.0/_passedCutWeightSum); 00405 scale(_histMultiKStar892_0, 1.0/_passedCutWeightSum); 00406 scale(_histMultiPhi, 1.0/_passedCutWeightSum); 00407 scale(_histMultiDStar2010Plus, 1.0/_passedCutWeightSum); 00408 00409 scale(_histMultiF2, 1.0/_passedCutWeightSum); 00410 scale(_histMultiK2Star1430_0, 1.0/_passedCutWeightSum); 00411 00412 scale(_histMultiP, 1.0/_passedCutWeightSum); 00413 scale(_histMultiLambda0, 1.0/_passedCutWeightSum); 00414 scale(_histMultiXiMinus, 1.0/_passedCutWeightSum); 00415 scale(_histMultiOmegaMinus, 1.0/_passedCutWeightSum); 00416 scale(_histMultiDeltaPlusPlus, 1.0/_passedCutWeightSum); 00417 scale(_histMultiSigma1385Plus, 1.0/_passedCutWeightSum); 00418 scale(_histMultiXi1530_0, 1.0/_passedCutWeightSum); 00419 scale(_histMultiLambdaB0, 1.0/_passedCutWeightSum); 00420 00421 scale(_hist1MinusT, 1.0/_passedCutWeightSum); 00422 scale(_histTMajor, 1.0/_passedCutWeightSum); 00423 scale(_histTMinor, 1.0/_passedCutWeightSum); 00424 scale(_histOblateness, 1.0/_passedCutWeightSum); 00425 00426 scale(_histSphericity, 1.0/_passedCutWeightSum); 00427 scale(_histAplanarity, 1.0/_passedCutWeightSum); 00428 scale(_histPlanarity, 1.0/_passedCutWeightSum); 00429 00430 scale(_histHemiMassD, 1.0/_passedCutWeightSum); 00431 scale(_histHemiMassH, 1.0/_passedCutWeightSum); 00432 scale(_histHemiMassL, 1.0/_passedCutWeightSum); 00433 00434 scale(_histHemiBroadW, 1.0/_passedCutWeightSum); 00435 scale(_histHemiBroadN, 1.0/_passedCutWeightSum); 00436 scale(_histHemiBroadT, 1.0/_passedCutWeightSum); 00437 scale(_histHemiBroadD, 1.0/_passedCutWeightSum); 00438 00439 scale(_histCParam, 1.0/_passedCutWeightSum); 00440 scale(_histDParam, 1.0/_passedCutWeightSum); 00441 00442 scale(_histDiffRate2Durham, 1.0/_passedCut3WeightSum); 00443 scale(_histDiffRate2Jade, 1.0/_passedCut3WeightSum); 00444 scale(_histDiffRate3Durham, 1.0/_passedCut4WeightSum); 00445 scale(_histDiffRate3Jade, 1.0/_passedCut4WeightSum); 00446 scale(_histDiffRate4Durham, 1.0/_passedCut5WeightSum); 00447 scale(_histDiffRate4Jade, 1.0/_passedCut5WeightSum); 00448 }
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 97 of file Analysis.cc.
References Analysis::name().
Referenced by Analysis::binEdges().
00097 { 00098 string logname = "Rivet.Analysis." + name(); 00099 return Log::getLog(logname); 00100 }
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 57 of file ProjectionApplier.hh.
References ProjectionHandler::getProjection(), and ProjectionApplier::getProjHandler().
00057 { 00058 return getProjHandler().getProjection(*this, name); 00059 }
const PROJ& getProjection | ( | const std::string & | name | ) | const [inline, inherited] |
Get the named projection, specifying return type via a template argument.
Definition at line 49 of file ProjectionApplier.hh.
References ProjectionHandler::getProjection(), and ProjectionApplier::getProjHandler().
Referenced by ProjectionApplier::_applyProjection(), Rivet::pcmp(), and Hemispheres::project().
00049 { 00050 const Projection& p = getProjHandler().getProjection(*this, name); 00051 return pcast<PROJ>(p); 00052 }
std::set<ConstProjectionPtr> getProjections | ( | ) | const [inline, inherited] |
Get the contained projections, including recursion.
Definition at line 42 of file ProjectionApplier.hh.
References ProjectionHandler::DEEP, ProjectionHandler::getChildProjections(), and ProjectionApplier::getProjHandler().
Referenced by Projection::beamPairs().
00042 { 00043 return getProjHandler().getChildProjections(*this, ProjectionHandler::DEEP); 00044 }
ProjectionHandler& getProjHandler | ( | ) | const [inline, protected, inherited] |
Get a reference to the ProjectionHandler for this thread.
Definition at line 94 of file ProjectionApplier.hh.
References ProjectionApplier::_projhandler.
Referenced by ProjectionApplier::_addProjection(), ProjectionApplier::getProjection(), ProjectionApplier::getProjections(), and ProjectionApplier::~ProjectionApplier().
00094 { 00095 return _projhandler; 00096 }
AnalysisHandler& handler | ( | ) | const [inline, inherited] |
Access the controlling AnalysisHandler object.
Definition at line 296 of file Analysis.hh.
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().
00296 { return *_analysishandler; }
const string histoDir | ( | ) | const [protected, inherited] |
Get the canonical histogram "directory" path for this analysis.
Definition at line 63 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(), D0_2008_S7719523::finalize(), CMS_2011_S8978280::finalize(), ATLAS_2011_S9128077::finalize(), and Analysis::histoPath().
00063 { 00064 /// @todo This doesn't change: calc and cache at first use! 00065 string path = "/" + name(); 00066 if (handler().runName().length() > 0) { 00067 path = "/" + handler().runName() + path; 00068 } 00069 while (find_first(path, "//")) { 00070 replace_all(path, "//", "/"); 00071 } 00072 return path; 00073 }
IHistogramFactory & histogramFactory | ( | ) | [protected, inherited] |
Access the AIDA histogram factory of the controlling AnalysisHandler object.
Definition at line 40 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::histogramFactory().
Referenced by Analysis::bookHistogram1D(), Analysis::bookHistogram2D(), Analysis::bookProfile1D(), 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(), D0_2008_S7719523::finalize(), CMS_2011_S9088458::finalize(), CMS_2011_S8978280::finalize(), ATLAS_2011_S9128077::finalize(), ATLAS_2011_S9126244::finalize(), ATLAS_2011_S9002537::finalize(), ALICE_2011_S8909580::finalize(), and ATLAS_2011_S9126244::finalizeQ0GapFraction().
00040 { 00041 return handler().histogramFactory(); 00042 }
const string histoPath | ( | const std::string & | hname | ) | const [protected, inherited] |
Get the canonical histogram path for the named histogram in this analysis.
Definition at line 76 of file Analysis.cc.
References Analysis::histoDir().
Referenced by Analysis::bookDataPointSet(), Analysis::bookHistogram1D(), Analysis::bookHistogram2D(), Analysis::bookProfile1D(), MC_JetAnalysis::finalize(), MC_GENERIC::finalize(), ATLAS_2011_S9126244::finalize(), and ALICE_2011_S8909580::finalize().
00076 { 00077 const string path = histoDir() + "/" + hname; 00078 return path; 00079 }
AnalysisInfo& info | ( | ) | [inline, inherited] |
Get the actual AnalysisInfo object in which all this metadata is stored (non-const).
Definition at line 248 of file Analysis.hh.
References Analysis::_info.
const AnalysisInfo& info | ( | ) | const [inline, inherited] |
Get the actual AnalysisInfo object in which all this metadata is stored.
Definition at line 108 of file Analysis.hh.
References Analysis::_info.
Referenced by Analysis::authors(), Analysis::bibKey(), Analysis::bibTeX(), Analysis::collider(), Analysis::description(), Analysis::experiment(), Analysis::inspireId(), Analysis::name(), Analysis::needsCrossSection(), Analysis::references(), Analysis::requiredBeams(), Analysis::requiredEnergies(), Analysis::runInfo(), Analysis::setNeedsCrossSection(), Analysis::setRequiredBeams(), Analysis::setRequiredEnergies(), Analysis::spiresId(), Analysis::status(), Analysis::summary(), Analysis::todos(), and Analysis::year().
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 52 of file DELPHI_1996_S3430090.cc.
References DELPHI_1996_S3430090::_hist1MinusT, DELPHI_1996_S3430090::_histAEEC, DELPHI_1996_S3430090::_histAplanarity, DELPHI_1996_S3430090::_histCParam, DELPHI_1996_S3430090::_histDiffRate2Durham, DELPHI_1996_S3430090::_histDiffRate2Jade, DELPHI_1996_S3430090::_histDiffRate3Durham, DELPHI_1996_S3430090::_histDiffRate3Jade, DELPHI_1996_S3430090::_histDiffRate4Durham, DELPHI_1996_S3430090::_histDiffRate4Jade, DELPHI_1996_S3430090::_histDParam, DELPHI_1996_S3430090::_histEEC, DELPHI_1996_S3430090::_histHemiBroadD, DELPHI_1996_S3430090::_histHemiBroadN, DELPHI_1996_S3430090::_histHemiBroadT, DELPHI_1996_S3430090::_histHemiBroadW, DELPHI_1996_S3430090::_histHemiMassD, DELPHI_1996_S3430090::_histHemiMassH, DELPHI_1996_S3430090::_histHemiMassL, DELPHI_1996_S3430090::_histLogScaledMom, DELPHI_1996_S3430090::_histMultiBPlus0, DELPHI_1996_S3430090::_histMultiCharged, DELPHI_1996_S3430090::_histMultiD0, DELPHI_1996_S3430090::_histMultiDeltaPlusPlus, DELPHI_1996_S3430090::_histMultiDPlus, DELPHI_1996_S3430090::_histMultiDStar2010Plus, DELPHI_1996_S3430090::_histMultiEta, DELPHI_1996_S3430090::_histMultiEtaPrime, DELPHI_1996_S3430090::_histMultiF0, DELPHI_1996_S3430090::_histMultiF2, DELPHI_1996_S3430090::_histMultiK0, DELPHI_1996_S3430090::_histMultiK2Star1430_0, DELPHI_1996_S3430090::_histMultiKPlus, DELPHI_1996_S3430090::_histMultiKStar892_0, DELPHI_1996_S3430090::_histMultiKStar892Plus, DELPHI_1996_S3430090::_histMultiLambda0, DELPHI_1996_S3430090::_histMultiLambdaB0, DELPHI_1996_S3430090::_histMultiOmegaMinus, DELPHI_1996_S3430090::_histMultiP, DELPHI_1996_S3430090::_histMultiPhi, DELPHI_1996_S3430090::_histMultiPi0, DELPHI_1996_S3430090::_histMultiPiPlus, DELPHI_1996_S3430090::_histMultiRho, DELPHI_1996_S3430090::_histMultiSigma1385Plus, DELPHI_1996_S3430090::_histMultiXi1530_0, DELPHI_1996_S3430090::_histMultiXiMinus, DELPHI_1996_S3430090::_histOblateness, DELPHI_1996_S3430090::_histPlanarity, DELPHI_1996_S3430090::_histPtSIn, DELPHI_1996_S3430090::_histPtSOut, DELPHI_1996_S3430090::_histPtTIn, DELPHI_1996_S3430090::_histPtTOut, DELPHI_1996_S3430090::_histPtTOutVsXp, DELPHI_1996_S3430090::_histPtVsXp, DELPHI_1996_S3430090::_histRapidityS, DELPHI_1996_S3430090::_histRapidityT, DELPHI_1996_S3430090::_histScaledMom, DELPHI_1996_S3430090::_histSphericity, DELPHI_1996_S3430090::_histTMajor, DELPHI_1996_S3430090::_histTMinor, ProjectionApplier::addProjection(), Analysis::bookHistogram1D(), Analysis::bookProfile1D(), FastJets::DURHAM, and FastJets::JADE.
00052 { 00053 addProjection(Beam(), "Beams"); 00054 // Don't try to introduce a pT or eta cut here. It's all corrected 00055 // back. (See Section 2 of the paper.) 00056 const ChargedFinalState cfs; 00057 addProjection(cfs, "FS"); 00058 addProjection(UnstableFinalState(), "UFS"); 00059 addProjection(FastJets(cfs, FastJets::JADE, 0.7), "JadeJets"); 00060 addProjection(FastJets(cfs, FastJets::DURHAM, 0.7), "DurhamJets"); 00061 addProjection(Sphericity(cfs), "Sphericity"); 00062 addProjection(ParisiTensor(cfs), "Parisi"); 00063 const Thrust thrust(cfs); 00064 addProjection(thrust, "Thrust"); 00065 addProjection(Hemispheres(thrust), "Hemispheres"); 00066 00067 _histPtTIn = bookHistogram1D(1, 1, 1); 00068 _histPtTOut = bookHistogram1D(2, 1, 1); 00069 _histPtSIn = bookHistogram1D(3, 1, 1); 00070 _histPtSOut = bookHistogram1D(4, 1, 1); 00071 00072 _histRapidityT = bookHistogram1D(5, 1, 1); 00073 _histRapidityS = bookHistogram1D(6, 1, 1); 00074 _histScaledMom = bookHistogram1D(7, 1, 1); 00075 _histLogScaledMom = bookHistogram1D(8, 1, 1); 00076 00077 _histPtTOutVsXp = bookProfile1D(9, 1, 1); 00078 _histPtVsXp = bookProfile1D(10, 1, 1); 00079 00080 _hist1MinusT = bookHistogram1D(11, 1, 1); 00081 _histTMajor = bookHistogram1D(12, 1, 1); 00082 _histTMinor = bookHistogram1D(13, 1, 1); 00083 _histOblateness = bookHistogram1D(14, 1, 1); 00084 00085 _histSphericity = bookHistogram1D(15, 1, 1); 00086 _histAplanarity = bookHistogram1D(16, 1, 1); 00087 _histPlanarity = bookHistogram1D(17, 1, 1); 00088 00089 _histCParam = bookHistogram1D(18, 1, 1); 00090 _histDParam = bookHistogram1D(19, 1, 1); 00091 00092 _histHemiMassH = bookHistogram1D(20, 1, 1); 00093 _histHemiMassL = bookHistogram1D(21, 1, 1); 00094 _histHemiMassD = bookHistogram1D(22, 1, 1); 00095 00096 _histHemiBroadW = bookHistogram1D(23, 1, 1); 00097 _histHemiBroadN = bookHistogram1D(24, 1, 1); 00098 _histHemiBroadT = bookHistogram1D(25, 1, 1); 00099 _histHemiBroadD = bookHistogram1D(26, 1, 1); 00100 00101 // Binned in y_cut 00102 _histDiffRate2Durham = bookHistogram1D(27, 1, 1); 00103 _histDiffRate2Jade = bookHistogram1D(28, 1, 1); 00104 _histDiffRate3Durham = bookHistogram1D(29, 1, 1); 00105 _histDiffRate3Jade = bookHistogram1D(30, 1, 1); 00106 _histDiffRate4Durham = bookHistogram1D(31, 1, 1); 00107 _histDiffRate4Jade = bookHistogram1D(32, 1, 1); 00108 00109 // Binned in cos(chi) 00110 _histEEC = bookHistogram1D(33, 1, 1); 00111 _histAEEC = bookHistogram1D(34, 1, 1); 00112 00113 _histMultiCharged = bookHistogram1D(35, 1, 1); 00114 00115 _histMultiPiPlus = bookHistogram1D(36, 1, 1); 00116 _histMultiPi0 = bookHistogram1D(36, 1, 2); 00117 _histMultiKPlus = bookHistogram1D(36, 1, 3); 00118 _histMultiK0 = bookHistogram1D(36, 1, 4); 00119 _histMultiEta = bookHistogram1D(36, 1, 5); 00120 _histMultiEtaPrime = bookHistogram1D(36, 1, 6); 00121 _histMultiDPlus = bookHistogram1D(36, 1, 7); 00122 _histMultiD0 = bookHistogram1D(36, 1, 8); 00123 _histMultiBPlus0 = bookHistogram1D(36, 1, 9); 00124 00125 _histMultiF0 = bookHistogram1D(37, 1, 1); 00126 00127 _histMultiRho = bookHistogram1D(38, 1, 1); 00128 _histMultiKStar892Plus = bookHistogram1D(38, 1, 2); 00129 _histMultiKStar892_0 = bookHistogram1D(38, 1, 3); 00130 _histMultiPhi = bookHistogram1D(38, 1, 4); 00131 _histMultiDStar2010Plus = bookHistogram1D(38, 1, 5); 00132 00133 _histMultiF2 = bookHistogram1D(39, 1, 1); 00134 _histMultiK2Star1430_0 = bookHistogram1D(39, 1, 2); 00135 00136 _histMultiP = bookHistogram1D(40, 1, 1); 00137 _histMultiLambda0 = bookHistogram1D(40, 1, 2); 00138 _histMultiXiMinus = bookHistogram1D(40, 1, 3); 00139 _histMultiOmegaMinus = bookHistogram1D(40, 1, 4); 00140 _histMultiDeltaPlusPlus = bookHistogram1D(40, 1, 5); 00141 _histMultiSigma1385Plus = bookHistogram1D(40, 1, 6); 00142 _histMultiXi1530_0 = bookHistogram1D(40, 1, 7); 00143 _histMultiLambdaB0 = bookHistogram1D(40, 1, 8); 00144 }
virtual std::string inspireId | ( | ) | const [inline, virtual, inherited] |
Get the Inspire ID code for this analysis.
Definition at line 123 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::inspireId().
00123 { 00124 return info().inspireId(); 00125 }
bool isCompatible | ( | const PdgIdPair & | beams, | |
const std::pair< double, double > & | energies | |||
) | const [inherited] |
Check if analysis is compatible with the provided beam particle IDs and energies.
Check if analysis is compatible with the provided beam particle IDs and energies.
Definition at line 122 of file Analysis.cc.
References Analysis::beams(), and Analysis::isCompatible().
00122 { 00123 PdgIdPair beams(beam1, beam2); 00124 pair<double,double> energies(e1, e2); 00125 return isCompatible(beams, energies); 00126 }
bool isCompatible | ( | const ParticlePair & | beams | ) | const [inherited] |
Check if analysis is compatible with the provided beam particle IDs and energies.
Definition at line 116 of file Analysis.cc.
Referenced by Analysis::isCompatible().
00116 { 00117 return isCompatible(beams.first.pdgId(), beams.second.pdgId(), 00118 beams.first.energy(), beams.second.energy()); 00119 }
BinEdges logBinEdges | ( | size_t | nbins, | |
double | lower, | |||
double | upper | |||
) | [protected, inherited] |
Get bin edges with logarithmic widths.
Definition at line 224 of file Analysis.cc.
Referenced by MC_ZZJETS::init(), MC_ZJETS::init(), MC_WWJETS::init(), MC_WPOL::init(), MC_WJETS::init(), MC_PHOTONJETS::init(), MC_JetAnalysis::init(), MC_HJETS::init(), and MC_DIPHOTON::init().
00224 { 00225 assert(lower>0.0); 00226 assert(upper>lower); 00227 double loglower=log10(lower); 00228 double logupper=log10(upper); 00229 vector<double> binedges; 00230 double stepwidth=(logupper-loglower)/double(nbins); 00231 for (size_t i=0; i<=nbins; ++i) { 00232 binedges.push_back(pow(10.0, loglower+double(i)*stepwidth)); 00233 } 00234 return binedges; 00235 }
const string makeAxisCode | ( | size_t | datasetId, | |
size_t | xAxisId, | |||
size_t | yAxisId | |||
) | const [protected, inherited] |
Get the internal histogram name for given d, x and y (cf. HepData).
Definition at line 82 of file Analysis.cc.
Referenced by Analysis::binEdges(), Analysis::bookDataPointSet(), Analysis::bookHistogram1D(), Analysis::bookProfile1D(), and ATLAS_2011_S9126244::finalize().
00082 { 00083 stringstream axisCode; 00084 axisCode << "d"; 00085 if (datasetId < 10) axisCode << 0; 00086 axisCode << datasetId; 00087 axisCode << "-x"; 00088 if (xAxisId < 10) axisCode << 0; 00089 axisCode << xAxisId; 00090 axisCode << "-y"; 00091 if (yAxisId < 10) axisCode << 0; 00092 axisCode << yAxisId; 00093 return axisCode.str(); 00094 }
virtual std::string name | ( | ) | const [inline, 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 118 of file Analysis.hh.
References Analysis::_defaultname, Analysis::info(), and AnalysisInfo::name().
Referenced by Analysis::_cacheBinEdges(), Analysis::_cacheXAxisData(), Analysis::_makeHistoDir(), Analysis::binEdges(), Analysis::bookDataPointSet(), Analysis::bookHistogram1D(), Analysis::bookHistogram2D(), Analysis::bookProfile1D(), Analysis::crossSection(), Analysis::getLog(), Analysis::histoDir(), Analysis::normalize(), HistoHandler::registerAnalysisObject(), and Analysis::scale().
00118 { 00119 return (info().name().empty()) ? _defaultname : info().name(); 00120 }
bool needsCrossSection | ( | ) | const [inline, inherited] |
Return true if this analysis needs to know the process cross-section.
Definition at line 232 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::needsCrossSection().
00232 { 00233 return info().needsCrossSection(); 00234 }
void normalize | ( | AIDA::IHistogram2D *& | 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 552 of file Analysis.cc.
References MSG_ERROR, MSG_TRACE, MSG_WARNING, Analysis::name(), Analysis::scale(), and Analysis::tree().
00552 { 00553 if (!histo) { 00554 MSG_ERROR("Failed to normalize histo=NULL in analysis " 00555 << name() << " (norm=" << norm << ")"); 00556 return; 00557 } 00558 const string hpath = tree().findPath(dynamic_cast<const AIDA::IManagedObject&>(*histo)); 00559 MSG_TRACE("Normalizing histo " << hpath << " to " << norm); 00560 00561 double oldintg = 0.0; 00562 int nxBins = histo->xAxis().bins(); 00563 int nyBins = histo->yAxis().bins(); 00564 for (int ixBin = 0; ixBin != nxBins; ++ixBin) 00565 for (int iyBin = 0; iyBin != nyBins; ++iyBin) { 00566 // Leaving out factor of binWidth because AIDA's "height" 00567 // already includes a width factor. 00568 oldintg += histo->binHeight(ixBin, iyBin); // * histo->axis().binWidth(iBin); 00569 } 00570 if (oldintg == 0.0) { 00571 MSG_WARNING("Histo " << hpath << " has null integral during normalization"); 00572 return; 00573 } 00574 00575 // Scale by the normalisation factor. 00576 scale(histo, norm/oldintg); 00577 }
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 482 of file Analysis.cc.
References MSG_ERROR, MSG_TRACE, MSG_WARNING, Analysis::name(), Analysis::scale(), and Analysis::tree().
Referenced by TASSO_1990_S2148048::finalize(), STAR_2008_S7869363::finalize(), OPAL_2001_S4553896::finalize(), OPAL_1998_S3780481::finalize(), JADE_1998_S3612880::finalize(), H1_1994_S2919893::finalize(), ExampleAnalysis::finalize(), DELPHI_2003_WUD_03_11::finalize(), DELPHI_2002_069_CONF_603::finalize(), DELPHI_1996_S3430090::finalize(), DELPHI_1995_S3137023::finalize(), D0_2010_S8821313::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(), CMS_2011_S9120041::finalize(), CMS_2011_S8968497::finalize(), CMS_2011_S8957746::finalize(), CMS_2011_S8950903::finalize(), CMS_2011_S8884919::finalize(), CDF_2009_NOTE_9936::finalize(), CDF_2004_S5839831::finalize(), CDF_2001_S4751469::finalize(), CDF_1997_S3541940::finalize(), CDF_1996_S3418421::finalize(), CDF_1996_S3349578::finalize(), CDF_1996_S3108457::finalize(), CDF_1994_S2952106::finalize(), CDF_1993_S2742446::finalize(), ATLAS_2011_S8971293::finalize(), ALICE_2010_S8625980::finalize(), ALICE_2010_S8624100::finalize(), ALEPH_2004_S5765862::finalize(), ALEPH_1996_S3486095::finalize(), and ATLAS_2011_I919017::safeinvscale().
00482 { 00483 if (!histo) { 00484 MSG_ERROR("Failed to normalize histo=NULL in analysis " 00485 << name() << " (norm=" << norm << ")"); 00486 return; 00487 } 00488 const string hpath = tree().findPath(dynamic_cast<const AIDA::IManagedObject&>(*histo)); 00489 MSG_TRACE("Normalizing histo " << hpath << " to " << norm); 00490 00491 double oldintg = 0.0; 00492 int nBins = histo->axis().bins(); 00493 for (int iBin = 0; iBin != nBins; ++iBin) { 00494 // Leaving out factor of binWidth because AIDA's "height" already includes a width factor. 00495 oldintg += histo->binHeight(iBin); // * histo->axis().binWidth(iBin); 00496 } 00497 if (oldintg == 0.0) { 00498 MSG_WARNING("Histo " << hpath << " has null integral during normalization"); 00499 return; 00500 } 00501 00502 // Scale by the normalisation factor. 00503 scale(histo, norm/oldintg); 00504 }
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 103 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::numEvents().
Referenced by LHCB_2010_S8758301::finalize().
00103 { 00104 return handler().numEvents(); 00105 }
virtual std::vector<std::string> references | ( | ) | const [inline, virtual, inherited] |
Journal, and preprint references.
Definition at line 184 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::references().
00184 { 00185 return info().references(); 00186 }
virtual const std::vector<PdgIdPair>& requiredBeams | ( | ) | const [inline, virtual, inherited] |
Return the allowed pairs of incoming beams required by this analysis.
Definition at line 210 of file Analysis.hh.
References AnalysisInfo::beams(), and Analysis::info().
00210 { 00211 return info().beams(); 00212 }
virtual const std::vector<std::pair<double, double> >& requiredEnergies | ( | ) | const [inline, virtual, inherited] |
Sets of valid beam energy pairs, in GeV.
Definition at line 221 of file Analysis.hh.
References AnalysisInfo::energies(), and Analysis::info().
Referenced by Analysis::setRequiredEnergies().
00221 { 00222 return info().energies(); 00223 }
virtual std::string runInfo | ( | ) | const [inline, 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 164 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::runInfo().
00164 { 00165 return info().runInfo(); 00166 }
void scale | ( | AIDA::IHistogram2D *& | 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 580 of file Analysis.cc.
References Analysis::datapointsetFactory(), MSG_ERROR, MSG_TRACE, Analysis::name(), and Analysis::tree().
00580 { 00581 if (!histo) { 00582 MSG_ERROR("Failed to scale histo=NULL in analysis " 00583 << name() << " (scale=" << scale << ")"); 00584 return; 00585 } 00586 const string hpath = 00587 tree().findPath(dynamic_cast<const AIDA::IManagedObject&>(*histo)); 00588 MSG_TRACE("Scaling histo " << hpath); 00589 00590 vector<double> x, y, z, ex, ey, ez; 00591 for (size_t ix = 0, Nx = histo->xAxis().bins(); ix < Nx; ++ix) 00592 for (size_t iy = 0, Ny = histo->yAxis().bins(); iy < Ny; ++iy) { 00593 x.push_back(0.5 * (histo->xAxis().binLowerEdge(ix) + 00594 histo->xAxis().binUpperEdge(ix))); 00595 ex.push_back(histo->xAxis().binWidth(ix)*0.5); 00596 y.push_back(0.5 * (histo->yAxis().binLowerEdge(iy) + 00597 histo->yAxis().binUpperEdge(iy))); 00598 ey.push_back(histo->yAxis().binWidth(iy)*0.5); 00599 00600 // "Bin height" is a misnomer in the AIDA spec: width is neglected. 00601 // We'd like to do this: y.push_back(histo->binHeight(i) * scale); 00602 z.push_back(histo->binHeight(ix, iy)*scale/ 00603 (histo->xAxis().binWidth(ix)*histo->yAxis().binWidth(iy))); 00604 // "Bin error" is a misnomer in the AIDA spec: width is neglected. 00605 // We'd like to do this: ey.push_back(histo->binError(i) * scale); 00606 ez.push_back(histo->binError(ix, iy)*scale/ 00607 (histo->xAxis().binWidth(ix)*histo->yAxis().binWidth(iy))); 00608 } 00609 00610 string title = histo->title(); 00611 string xtitle = histo->xtitle(); 00612 string ytitle = histo->ytitle(); 00613 string ztitle = histo->ztitle(); 00614 00615 tree().mkdir("/tmpnormalize"); 00616 tree().mv(hpath, "/tmpnormalize"); 00617 00618 if (hpath.find(" ") != string::npos) { 00619 throw Error("Histogram path '" + hpath + "' is invalid: spaces are not permitted in paths"); 00620 } 00621 AIDA::IDataPointSet* dps = 00622 datapointsetFactory().createXYZ(hpath, title, x, y, z, ex, ey, ez); 00623 dps->setXTitle(xtitle); 00624 dps->setYTitle(ytitle); 00625 dps->setZTitle(ztitle); 00626 00627 tree().rm(tree().findPath(dynamic_cast<AIDA::IManagedObject&>(*histo))); 00628 tree().rmdir("/tmpnormalize"); 00629 00630 // Set histo pointer to null - it can no longer be used. 00631 histo = 0; 00632 }
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 507 of file Analysis.cc.
References Analysis::datapointsetFactory(), MSG_ERROR, MSG_TRACE, Analysis::name(), 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_XS::finalize(), MC_WWJETS::finalize(), MC_WPOL::finalize(), MC_WJETS::finalize(), MC_VH2BB::finalize(), MC_TTBAR::finalize(), MC_PHOTONJETS::finalize(), MC_JetAnalysis::finalize(), MC_HJETS::finalize(), MC_GENERIC::finalize(), MC_DIPHOTON::finalize(), LHCB_2010_S8758301::finalize(), JADE_OPAL_2000_S4300807::finalize(), H1_2000_S4129130::finalize(), H1_1994_S2919893::finalize(), E735_1998_S3905616::finalize(), DELPHI_1996_S3430090::finalize(), D0_2010_S8671338::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(), CMS_2011_S8978280::finalize(), CMS_2010_S8656010::finalize(), CMS_2010_S8547297::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_2011_S9212183::finalize(), ATLAS_2011_S9131140::finalize(), ATLAS_2011_S9128077::finalize(), ATLAS_2011_S9120807::finalize(), ATLAS_2011_S9108483::finalize(), ATLAS_2011_S9041966::finalize(), ATLAS_2011_I925932::finalize(), ATLAS_2011_CONF_2011_098::finalize(), ATLAS_2011_CONF_2011_090::finalize(), ATLAS_2010_S8919674::finalize(), ATLAS_2010_S8914702::finalize(), ATLAS_2010_S8591806::finalize(), ATLAS_2010_CONF_2010_049::finalize(), ALICE_2011_S8945144::finalize(), ALICE_2011_S8909580::finalize(), ALICE_2010_S8706239::finalize(), ALICE_2010_S8625980::finalize(), ALEPH_2004_S5765862::finalize(), ALEPH_1996_S3486095::finalize(), ALEPH_1996_S3196992::finalize(), ALEPH_1991_S2435284::finalize(), Analysis::normalize(), ATLAS_2011_I919017::safeinvscale(), and BinnedHistogram< T >::scale().
00507 { 00508 if (!histo) { 00509 MSG_ERROR("Failed to scale histo=NULL in analysis " 00510 << name() << " (scale=" << scale << ")"); 00511 return; 00512 } 00513 const string hpath = tree().findPath(dynamic_cast<const AIDA::IManagedObject&>(*histo)); 00514 MSG_TRACE("Scaling histo " << hpath); 00515 00516 vector<double> x, y, ex, ey; 00517 for (size_t i = 0, N = histo->axis().bins(); i < N; ++i) { 00518 x.push_back(0.5 * (histo->axis().binLowerEdge(i) + histo->axis().binUpperEdge(i))); 00519 ex.push_back(histo->axis().binWidth(i)*0.5); 00520 00521 // "Bin height" is a misnomer in the AIDA spec: width is neglected. 00522 // We'd like to do this: y.push_back(histo->binHeight(i) * scale); 00523 y.push_back(histo->binHeight(i)*scale/histo->axis().binWidth(i)); 00524 00525 // "Bin error" is a misnomer in the AIDA spec: width is neglected. 00526 // We'd like to do this: ey.push_back(histo->binError(i) * scale); 00527 ey.push_back(histo->binError(i)*scale/histo->axis().binWidth(i)); 00528 } 00529 00530 string title = histo->title(); 00531 string xtitle = histo->xtitle(); 00532 string ytitle = histo->ytitle(); 00533 00534 tree().mkdir("/tmpnormalize"); 00535 tree().mv(hpath, "/tmpnormalize"); 00536 00537 if (hpath.find(" ") != string::npos) { 00538 throw Error("Histogram path '" + hpath + "' is invalid: spaces are not permitted in paths"); 00539 } 00540 AIDA::IDataPointSet* dps = datapointsetFactory().createXY(hpath, title, x, y, ex, ey); 00541 dps->setXTitle(xtitle); 00542 dps->setYTitle(ytitle); 00543 00544 tree().rm(tree().findPath(dynamic_cast<AIDA::IManagedObject&>(*histo))); 00545 tree().rmdir("/tmpnormalize"); 00546 00547 // Set histo pointer to null - it can no longer be used. 00548 histo = 0; 00549 }
Set the required beams
Definition at line 255 of file Analysis.hh.
References Analysis::setRequiredBeams().
00255 { 00256 /// @todo Print out a warning to use setRequiredBeams() instead (and really to use .info files) 00257 return setRequiredBeams(std::vector<PdgIdPair>(1, make_pair(beam1, beam2))); 00258 }
Analysis & setCrossSection | ( | double | xs | ) | [inherited] |
Set the cross section from the generator.
Definition at line 160 of file Analysis.cc.
References Analysis::_crossSection, and Analysis::_gotCrossSection.
00160 { 00161 _crossSection = xs; 00162 _gotCrossSection = true; 00163 return *this; 00164 }
Analysis& setNeedsCrossSection | ( | bool | needed = true |
) | [inline, inherited] |
Declare whether this analysis needs to know the process cross-section from the generator.
Definition at line 236 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::setNeedsCrossSection().
Referenced by ATLAS_2011_S9108483::ATLAS_2011_S9108483(), LHCB_2010_S8758301::LHCB_2010_S8758301(), and MC_JetAnalysis::MC_JetAnalysis().
00236 { 00237 info().setNeedsCrossSection(needed); 00238 return *this; 00239 }
virtual Analysis& setRequiredBeams | ( | const std::vector< PdgIdPair > & | requiredBeams | ) | [inline, virtual, inherited] |
Declare the allowed pairs of incoming beams required by this analysis.
Definition at line 214 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::setBeams().
Referenced by Analysis::setBeams().
00214 { 00215 info().setBeams(requiredBeams); 00216 return *this; 00217 }
virtual Analysis& setRequiredEnergies | ( | const std::vector< std::pair< double, double > > & | requiredEnergies | ) | [inline, virtual, inherited] |
Declare the list of valid beam energy pairs, in GeV.
Definition at line 225 of file Analysis.hh.
References Analysis::info(), Analysis::requiredEnergies(), and AnalysisInfo::setEnergies().
00225 { 00226 info().setEnergies(requiredEnergies); 00227 return *this; 00228 }
virtual std::string spiresId | ( | ) | const [inline, virtual, inherited] |
Get the SPIRES ID code for this analysis (~deprecated).
Definition at line 128 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::spiresId().
00128 { 00129 return info().spiresId(); 00130 }
double sqrtS | ( | ) | const [inherited] |
Centre of mass energy for this run.
Definition at line 50 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::sqrtS().
Referenced by UA1_1990_S2044935::analyze(), TASSO_1990_S2148048::analyze(), SFM_1984_S1178091::analyze(), PDG_HADRON_MULTIPLICITIES_RATIOS::analyze(), PDG_HADRON_MULTIPLICITIES::analyze(), MC_TTBAR::analyze(), JADE_1998_S3612880::analyze(), CMS_2011_S9120041::analyze(), CDF_2004_S5839831::analyze(), ATLAS_2010_S8918562::analyze(), ATLAS_2010_S8894728::analyze(), ALICE_2010_S8625980::analyze(), ALEPH_2004_S5765862::analyze(), UA1_1990_S2044935::finalize(), PDG_HADRON_MULTIPLICITIES_RATIOS::finalize(), PDG_HADRON_MULTIPLICITIES::finalize(), JADE_1998_S3612880::finalize(), CMS_2011_S8978280::finalize(), CDF_2004_S5839831::finalize(), ATLAS_2010_S8918562::finalize(), ALICE_2010_S8625980::finalize(), ALEPH_2004_S5765862::finalize(), UA5_1989_S1926373::init(), UA5_1988_S1867512::init(), UA5_1986_S1583476::init(), UA1_1990_S2044935::init(), TASSO_1990_S2148048::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_WPOL::init(), MC_WJETS::init(), MC_PHOTONJETS::init(), MC_JetAnalysis::init(), MC_HJETS::init(), MC_DIPHOTON::init(), JADE_OPAL_2000_S4300807::init(), JADE_1998_S3612880::init(), CMS_2011_S8978280::init(), CMS_2011_S8884919::init(), CMS_2010_S8547297::init(), CDF_2004_S5839831::init(), CDF_1990_S2089246::init(), CDF_1988_S1865951::init(), ATLAS_2011_S8994773::init(), ATLAS_2010_S8918562::init(), ATLAS_2010_S8894728::init(), ALICE_2010_S8625980::init(), ALICE_2010_S8624100::init(), and ALEPH_2004_S5765862::init().
00050 { 00051 return handler().sqrtS(); 00052 }
virtual std::string status | ( | ) | const [inline, virtual, inherited] |
Whether this analysis is trusted (in any way!).
Definition at line 199 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::status().
virtual std::string summary | ( | ) | const [inline, 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 145 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::summary().
00145 { 00146 return info().summary(); 00147 }
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 108 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_XS::finalize(), MC_WWJETS::finalize(), MC_WJETS::finalize(), MC_VH2BB::finalize(), MC_JetAnalysis::finalize(), MC_HJETS::finalize(), MC_GENERIC::finalize(), MC_DIPHOTON::finalize(), LHCB_2010_S8758301::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(), CMS_2011_S9086218::finalize(), CMS_2011_S8978280::finalize(), CMS_2010_S8656010::finalize(), CMS_2010_S8547297::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(), ATLAS_2011_S9212183::finalize(), ATLAS_2011_S9120807::finalize(), ATLAS_2011_S9108483::finalize(), ATLAS_2011_S9041966::finalize(), ATLAS_2011_CONF_2011_098::finalize(), ATLAS_2011_CONF_2011_090::finalize(), ATLAS_2010_S8919674::finalize(), ATLAS_2010_S8914702::finalize(), ATLAS_2010_CONF_2010_049::finalize(), ALICE_2011_S8945144::finalize(), ALICE_2011_S8909580::finalize(), ALEPH_2004_S5765862::finalize(), ALEPH_1996_S3486095::finalize(), ALEPH_1996_S3196992::finalize(), and ALEPH_1991_S2435284::finalize().
00108 { 00109 return handler().sumOfWeights(); 00110 }
virtual std::vector<std::string> todos | ( | ) | const [inline, virtual, inherited] |
Any work to be done on this analysis.
Definition at line 204 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::todos().
00204 { 00205 return info().todos(); 00206 }
ITree & tree | ( | ) | [protected, inherited] |
Access the AIDA tree of the controlling AnalysisHandler object.
Definition at line 35 of file Analysis.cc.
References Analysis::handler(), and AnalysisHandler::tree().
Referenced by Analysis::_makeHistoDir(), Analysis::normalize(), and Analysis::scale().
00035 { 00036 return handler().tree(); 00037 }
virtual std::string year | ( | ) | const [inline, virtual, inherited] |
When the original experimental analysis was published.
Definition at line 179 of file Analysis.hh.
References Analysis::info(), and AnalysisInfo::year().
00179 { 00180 return info().year(); 00181 }
bool _allowProjReg [protected, inherited] |
Flag to forbid projection registration in analyses until the init phase.
Definition at line 140 of file ProjectionApplier.hh.
Referenced by ProjectionApplier::_addProjection(), and Analysis::Analysis().
string _defaultname [protected, inherited] |
Name passed to constructor (used to find .info analysis data file, and as a fallback).
Definition at line 547 of file Analysis.hh.
Referenced by Analysis::Analysis(), and Analysis::name().
AIDA::IHistogram1D* _hist1MinusT [private] |
Definition at line 482 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D * _histAEEC [private] |
Definition at line 510 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histAplanarity [private] |
Definition at line 488 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histCParam [private] |
Definition at line 491 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDiffRate2Durham [private] |
Definition at line 503 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDiffRate2Jade [private] |
Definition at line 504 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDiffRate3Durham [private] |
Definition at line 505 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDiffRate3Jade [private] |
Definition at line 506 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDiffRate4Durham [private] |
Definition at line 507 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDiffRate4Jade [private] |
Definition at line 508 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histDParam [private] |
Definition at line 492 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histEEC [private] |
Definition at line 510 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiBroadD [private] |
Definition at line 501 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiBroadN [private] |
Definition at line 499 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiBroadT [private] |
Definition at line 500 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiBroadW [private] |
Definition at line 498 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiMassD [private] |
Definition at line 494 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiMassH [private] |
Definition at line 495 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histHemiMassL [private] |
Definition at line 496 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D * _histLogScaledMom [private] |
Definition at line 478 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiBPlus0 [private] |
Definition at line 522 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiCharged [private] |
Definition at line 512 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiD0 [private] |
Definition at line 521 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiDeltaPlusPlus [private] |
Definition at line 539 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiDPlus [private] |
Definition at line 520 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiDStar2010Plus [private] |
Definition at line 530 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiEta [private] |
Definition at line 518 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiEtaPrime [private] |
Definition at line 519 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiF0 [private] |
Definition at line 524 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiF2 [private] |
Definition at line 532 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiK0 [private] |
Definition at line 517 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiK2Star1430_0 [private] |
Definition at line 533 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiKPlus [private] |
Definition at line 516 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiKStar892_0 [private] |
Definition at line 528 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiKStar892Plus [private] |
Definition at line 527 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiLambda0 [private] |
Definition at line 536 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiLambdaB0 [private] |
Definition at line 542 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiOmegaMinus [private] |
Definition at line 538 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiP [private] |
Definition at line 535 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiPhi [private] |
Definition at line 529 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiPi0 [private] |
Definition at line 515 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiPiPlus [private] |
Definition at line 514 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiRho [private] |
Definition at line 526 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiSigma1385Plus [private] |
Definition at line 540 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiXi1530_0 [private] |
Definition at line 541 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histMultiXiMinus [private] |
Definition at line 537 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histOblateness [private] |
Definition at line 485 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histPlanarity [private] |
Definition at line 489 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histPtSIn [private] |
Definition at line 472 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histPtSOut [private] |
Definition at line 473 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histPtTIn [private] |
Definition at line 470 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histPtTOut [private] |
Definition at line 471 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IProfile1D* _histPtTOutVsXp [private] |
Definition at line 480 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), and DELPHI_1996_S3430090::init().
AIDA::IProfile1D * _histPtVsXp [private] |
Definition at line 480 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histRapidityS [private] |
Definition at line 476 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histRapidityT [private] |
Definition at line 475 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histScaledMom [private] |
Definition at line 478 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histSphericity [private] |
Definition at line 487 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histTMajor [private] |
Definition at line 483 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
AIDA::IHistogram1D* _histTMinor [private] |
Definition at line 484 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::finalize(), and DELPHI_1996_S3430090::init().
shared_ptr<AnalysisInfo> _info [protected, inherited] |
Pointer to analysis metadata object.
Definition at line 550 of file Analysis.hh.
Referenced by Analysis::Analysis(), and Analysis::info().
double _passedCut3WeightSum [private] |
Definition at line 463 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::DELPHI_1996_S3430090(), and DELPHI_1996_S3430090::finalize().
double _passedCut4WeightSum [private] |
Definition at line 464 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::DELPHI_1996_S3430090(), and DELPHI_1996_S3430090::finalize().
double _passedCut5WeightSum [private] |
Definition at line 465 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::DELPHI_1996_S3430090(), and DELPHI_1996_S3430090::finalize().
double _passedCutWeightSum [private] |
Definition at line 462 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::DELPHI_1996_S3430090(), and DELPHI_1996_S3430090::finalize().
double _weightedTotalPartNum [private] |
Store the weighted sums of numbers of charged / charged+neutral particles - used to calculate average number of particles for the inclusive single particle distributions' normalisations.
Definition at line 458 of file DELPHI_1996_S3430090.cc.
Referenced by DELPHI_1996_S3430090::analyze(), DELPHI_1996_S3430090::DELPHI_1996_S3430090(), and DELPHI_1996_S3430090::finalize().