Todo List

Member Rivet::Analysis::isCompatible (const ParticleName &beam1, const ParticleName &beam2) const
Need to also check internal consistency of the analysis' beam requirements with those of the projections it uses.

Member Rivet::Analysis::isCompatible (const BeamPair &beams) const
Need to also check internal consistency of the analysis' beam requirements with those of the projections it uses.

Member Rivet::ALEPH_2004_S5765862::finalize ()
HepData has binwidths here, which doesn't make sense at all I assume the low edge to be the ycut

Member Rivet::Analysis::_dpsData
Reduce memory occupancy, or clear after initialisation?

Member Rivet::Analysis::_histBinEdges
Reduce memory occupancy, or clear after initialisation?

Member Rivet::AnalysisHandler::removeIncompatibleAnalyses (const BeamPair &beams)
Do this automatically in the init phase (including energies) and deprecate explicit use

Member Rivet::AnalysisInfo::Analysis
Remove this when all metadata taken from YAML

Member Rivet::AnalysisInfo::make (const std::string &name)
Use system-independent separator (e.g. Boost.File)

Member Rivet::AnalysisLoader::_registerBuilder (const AnalysisBuilderBase *a)
Tidy this up!

Member Rivet::AnalysisLoader::_loadAnalysisPlugins ()
Make sure this is an abs path

Member Rivet::AnalysisLoader::_loadAnalysisPlugins ()
Sys-dependent path separator instead of "/"

Member Rivet::BELLE_2006_S6265367::analyze (const Event &e)
Apply BELLE hadron selection cuts

Member Rivet::BELLE_2006_S6265367::analyze (const Event &e)
Implement sqrtS() for asymm. beams in beam projection

Member Rivet::CDF_1991_S2313472::CDF_1991_S2313472 ()
Set approriate for your analysis

Member Rivet::CDF_1991_S2313472::CDF_1991_S2313472 ()
Set whether your finalize method needs the generator cross section

Member Rivet::CDF_1991_S2313472::analyze (const Event &event)
Use separate pT and ETmiss cuts in WFinder

Member Rivet::CDF_1994_S2952106::init ()
Use histogram auto-booking

Member Rivet::CDF_1994_S2952106::init ()
Need better title

Member Rivet::CDF_1994_S2952106::finalize ()
Apply correction

Member Rivet::CDF_1994_S2952106::finalize ()
Same correction to be applied for _hisR23 and _histJet3eta histograms

Member Rivet::CDF_1996_S3108457::init ()
Ratios of mass histograms left out: Binning doesn't work out

Member Rivet::CDF_1996_S3108457::analyze (const Event &event)
include gaussian jet energy resolution smearing?

Member Rivet::CDF_1996_S3349578::analyze (const Event &event)
include gaussian jet energy resolution smearing?

Member Rivet::CDF_1996_S3418421::finalize ()
calculate errors while analysing and fill them here as well

Member Rivet::CDF_2001_S4751469::analyze (const Event &event)
Copy the permanent histos to get the binnings more robustly

Member Rivet::CDF_2004_S5839831::finalize ()
Take these normalisations from the data histo (it can't come from just the MC)

Member Rivet::CDF_2005_S6217184::analyze (const Event &event)
Use BinnedHistogram, for collections of histos each for a range of values of an extra variable

Member Rivet::CDF_2005_S6217184::analyze (const Event &event)
Calc int histos from diff histos

Member Rivet::CDF_2006_S6653332::analyze (const Event &event)
Use jet contents rather than accessing quarks directly

Member Rivet::CDF_2006_S6653332::analyze (const Event &event)
Use nicer looping

Member Rivet::CDF_2007_S7057202::analyze (const Event &event)
Use Jet interface rather than FastJet:PseudoJet

Member Rivet::CDF_2007_S7057202::_jetMinPT
Make static const and UPPERCASE?

Member Rivet::CDF_2008_LEADINGJETS::analyze (const Event &e)
Implement Run II min bias trigger cf. CDF_2009?

Member Rivet::CDF_2008_NOTE_9351::analyze (const Event &e)
Replace with foreach

Member Rivet::CDF_2008_NOTE_9351::analyze (const Event &e)
Replace with PID::isLepton

Member Rivet::CDF_2008_S7540469::analyze (const Event &event)
Allow proj creation w/o FS as ctor arg, so that calc can be used more easily.

Member Rivet::CDF_2008_S7540469::analyze (const Event &event)
Make this neater, using the JetAlg interface and the built-in sorting

Member Rivet::CDF_2008_S7541902::finalize ()
Replace with autobooking etc. once YODA in place

Member Rivet::CDF_2008_S7782535::analyze (const Event &event)
Replace with foreach

Member Rivet::CDF_2008_S7782535::analyze (const Event &event)
Yuck... JetShape's interface sucks

Member Rivet::CDF_2008_S7828950::_ybins [6]
Yuck!

Member Rivet::CDF_2008_S7828950::init ()
What actually are these histos showing?

Member Rivet::CDF_2009_S8233977::analyze (const Event &evt)
The pT and sum(ET) distributions look slightly different from Niccolo's Monte Carlo plots. Still waiting for his answer.

Member Rivet::CentralEtHCM::project (const Event &e)
Can this extra rapidity cut be implemented so as to use the cached rapidity result?

Member Rivet::D0_1996_S3214044::init ()
Use correct jet algorithm

Member Rivet::D0_1996_S3324664::init ()
Use correct jet algorithm

Member Rivet::D0_1996_S3324664::finalize ()
Understand this!

Member Rivet::D0_1996_S3324664::finalize ()
Prefer to scale rather than normalize, if possible

Member Rivet::D0_1998_S3711838::D0_1998_S3711838 ()
Set approriate for your analysis

Member Rivet::D0_1998_S3711838::D0_1998_S3711838 ()
Set whether your finalize method needs the generator cross section

Member Rivet::D0_1998_S3711838::init ()
Use separate pT and ETmiss cuts in WFinder

Member Rivet::D0_1998_S3711838::analyze (const Event &event)
Use separate pT and ETmiss cuts in WFinder

Member Rivet::D0_2001_S4674421::init ()
Can't take this from ref data?

Member Rivet::D0_2006_S6438750::finalize ()
Generator cross-section from Pythia gives ~7500, vs. expected 2988!

Member Rivet::D0_2007_S7075677::init ()
Ask Gavin Hesketh about his first implemention without eta cuts.

Member Rivet::D0_2008_S7719523::analyze (const Event &event)
Allow proj creation w/o FS as ctor arg, so that calc can be used more easily.

Member Rivet::D0_2008_S7837160::init ()
Use separate pT and ETmiss cuts in WFinder

Member Rivet::D0_2008_S7837160::analyze (const Event &event)
Use pT cut in WFinder

Member Rivet::D0_2008_S7837160::analyze (const Event &event)
Any ETmiss cut?

Member Rivet::E735_1998_S3905616::init ()
E735 trigger?

Member Rivet::FastJets::FastJets (const FinalState &fsp, fastjet::JetDefinition::Plugin &plugin)
Should we be copying the plugin?

Member Rivet::FastJets::reset ()
_cseq = fastjet::ClusterSequence();

Member Rivet::FinalState::FinalState (const vector< pair< double, double > > &etaRanges, double minpt=0.0 *GeV)
Properly check whether any of these eta ranges (or their combination) are actually open

Member Rivet::FinalState::project (const Event &e)
In general, we'd like to calculate a restrictive FS based on the most restricted superset FS.

Member Rivet::FourMomentum::boostVector () const
Be careful about c=1 convention...

Member Rivet::FoxWolframMoments::FoxWolframMoments (const FinalState &fsp)
Let the user supply any projection they like?

Member Rivet::FoxWolframMoments::getFoxWolframMoment (unsigned int l) const
What?!?

Member Rivet::H1_1994_S2919893::analyze (const Event &event)
Use units in w comparisons... what are the units?

Member Rivet::H1_1994_S2919893::analyze (const Event &event)
Is this profile meant to be filled with 2 weight factors?

Member Rivet::H1_1994_S2919893::analyze (const Event &event)
Use angle function

Class H1_1995_S3167097
Check this analysis!

Member Rivet::H1_1995_S3167097::init ()
Automate this sort of thing so that the analysis code is more readable.

Member Rivet::H1_1995_S3167097::finalize ()
Automate this sort of thing so that the analysis code is more readable.

Member Rivet::H1_1995_S3167097::_nb
Remove statics!

Member Rivet::H1_1995_S3167097::_xmin
Remove statics!

Class Hemispheres
Allow axes to be defined by sphericity: superclass Thrust and Sphericity as AxisDefinition?

Member Rivet::HistoHandler::_instance
Threading?

Member Rivet::InitialQuarks::project (const Event &e)
This is all fragile and application-specific: remove!

Member Rivet::JADE_OPAL_2000_S4300807::init ()
Really call exit()? I don't like the break of "command chain" that this implies

Member Rivet::JADE_OPAL_2000_S4300807::analyze (const Event &e)
Put this in an index loop?

Member Rivet::JetShape::diffJetShape (size_t pTbin, size_t rbin) const
Remove this external indexing thing

Member Rivet::JetShape::intJetShape (size_t pTbin, size_t rbin) const
Remove this external indexing thing

Member Rivet::JetShape::psi (size_t pTbin) const
Remove this external indexing thing

Member Rivet::JetShape::project (const Event &e)
Actually use histograms here, rather than doing the binning by hand

Member Rivet::JetShape::project (const Event &e)
Calculate int jet shape from diff jet shape histo (YODA)

Member Rivet::JetShape::project (const Event &e)
Calculate int [0.0, 0.3] jet shape from diff jet shape histo (YODA)

Member Rivet::Log::_nostream
Hide this...

Member Rivet::Log::getColorCode (int level)
Test for VT100 compliance?

Member Rivet::Log::getColorCode (int level)
Do the map::upper_limit thing to find nearest level...

Member Rivet::Log::getLevelName (int level)
Do the map::upper_limit thing to find nearest level...

Class LogicError
Clarify where this might arise!

Class LossyFinalState
This needs an overhaul to make the base projections work properly. Slicing + inheritance again.

Member Rivet::LossyFinalState::RandomFilter::operator() (const Particle &p)
Use a better RNG

Member Rivet::MC_DIJET::analyze (const Event &event)
Add jets

Member Rivet::MC_DIJET::finalize ()
Normalise!

Member Rivet::MC_PHOTONJETUE::analyze (const Event &evt)
Plot evolution of UE as a function of jet-photon angle

Member Rivet::MC_PHOTONJETUE::analyze (const Event &evt)
Plot evolution of UE as a function of photon pT

Member Rivet::MC_SUSY::init ()
LSP eta, pT, phi, mass: no reliable cross-scenario LSP PID but maybe plot for all of chi^0_1, gravitino, sneutrino, gluino, ... or identify the LSP as any PID::isSUSY (?) particle with status = 1?

Member Rivet::MC_SUSY::analyze (const Event &evt)
Resum photons around electrons

Member Rivet::MC_SUSY::analyze (const Event &evt)
Resum photons around muons

Member Rivet::MC_SUSY::finalize ()
Normalisations

Member Rivet::MC_TTBAR::init ()
Book histograms here, e.g.:

Member Rivet::MergedFinalState::compare (const Projection &p) const
: Currently A+B is not recognised to be the same as B+A.

Member Rivet::OPAL_1998_S3780481::analyze (const Event &e)
Use PDG code enums

Member Rivet::ProjectionHandler::_instance
Threading?

Member Rivet::Run::readEvent ()
Clear rather than new the GenEvent object per-event?

Member Rivet::SFM_1984_S1178091::init ()
Corrected to full phase space?

Member Rivet::SFM_1984_S1178091::analyze (const Event &event)
Any trigger?

Class SVertex
Replace function with a functor to improve equality comparisons.

Member Rivet::SVertex::project (const Event &e)
Use acceptance from the FinalState instead

Member Rivet::SVertex::_applyVtxTrackCuts (const ParticleVector &, const Vector3 &, FourMomentum)
Replace with inheritance-based cut method.

Member Rivet::SVertex::_applyVtxTrackCuts (const ParticleVector &, const Vector3 &, FourMomentum)
Move this into the projection concrete class.

Member Rivet::Thrust::_calcThrust (const vector< Vector3 > &fsmomenta)
Improve this --- special directions bad... (a,b,c) _|_ 1/(a^2+b^2) (b,-a,0) etc., but which combination minimises error?

Member Rivet::UA5_1982_S875503::finalize ()
Why the factor of 2 on Nch for ppbar?

Member Rivet::UA5_1989_S1926373::init ()
Moments of distributions

Member Rivet::Vector3::unit () const
What to do in this situation?

Member Rivet::VetoedFinalState::addDecayProductsVeto (const long id)
Need HepMC to sort themselves out and keep vector bosons from the hard vtx in the event record before this will work reliably for all pdg ids

Member Rivet::VetoedFinalState::project (const Event &e)
Improve!

Member Rivet::WFinder::project (const Event &e)
Restrict missing momentum eta range?

Member Rivet::ZEUS_2001_S4815815::init ()
This is the *wrong* jet def: correct it!

Member Rivet::ZEUS_2001_S4815815::init ()
This doesn't seem to correspond to the plots in the paper (SPIRES 4730372)

Member IS_PARTON_PDGID
Use inline PID functions instead

Member calc_BZ
Move to utils?

Member calc_BZ
Use Jet or FourMomentum interface rather than PseudoJet

Member calc_BZ
Move to utils?

Member calc_KSW
Use Jet or FourMomentum interface rather than PseudoJet

Member calc_KSW
Move to utils?

Member calc_NR
Use Jet or FourMomentum interface rather than PseudoJet

Member calc_NR
Move to utils?

Member calc_ALPHA34
Use Jet or FourMomentum interface rather than PseudoJet

Member calc_ALPHA34
Move to utils?

Member _geNormAlignment
e+ e- convention? B-factories different from LEP?

Member _updateLevels
Add single static setLevel

Member _updateLevels
Check ordering - "Foo" should come before "Foo.Bar"

Member inRange
Optimise to one-line at compile time?

Member inRange
Optimise to one-line at compile time?

Member getDPSXValsErrs
Check that "path" matches filename

Member getDPSXValsErrs
Throw an exception here?

Member getDPSXValsErrs
Rethrow as a general XML failure.

Member get2dClosestApproach
Whoa! - implicit constructors from hell!

Member _setup_vfs
More?

Namespace Rivet
Include more projections as required, e.g. ChargedFinalState, FastJets, ZFinder...

Namespace Rivet
Include more projections as required, e.g. ChargedFinalState, FastJets, ZFinder...