|
[Rivet] [Rivet-svn] r3383 - in trunk: include/Rivet/Projections src/Analyses src/ProjectionsFrank Siegert frank.siegert at cern.chThu Sep 29 17:03:32 BST 2011
Hi David, I haven't understood in detail yet, why this commit could be wrong, but it completely screws up my results in an analysis using a WFinder (MC_WJETS). I compared r3382 (working) to r3387 (weird results). Has this change been tested or has anybody else noticed strange behaviour after this? Cheers, Frank On 22/09/11 14:53, blackhole at projects.hepforge.org wrote: > Author: dgrell > Date: Thu Sep 22 13:53:44 2011 > New Revision: 3383 > > Log: > VisibleFS: removed explicit exclusion list, replaced with physical criteria > > Modified: > trunk/include/Rivet/Projections/VisibleFinalState.hh > trunk/src/Analyses/ATLAS_2010_S8919674.cc > trunk/src/Analyses/ATLAS_2011_CONF_2011_090.cc > trunk/src/Analyses/ATLAS_2011_S8983313.cc > trunk/src/Analyses/ATLAS_2011_S9019561.cc > trunk/src/Analyses/ATLAS_2011_S9041966.cc > trunk/src/Analyses/MC_PHOTONJETS.cc > trunk/src/Projections/VisibleFinalState.cc > > Modified: trunk/include/Rivet/Projections/VisibleFinalState.hh > ============================================================================== > --- trunk/include/Rivet/Projections/VisibleFinalState.hh Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/include/Rivet/Projections/VisibleFinalState.hh Thu Sep 22 13:53:44 2011 (r3383) > @@ -8,7 +8,6 @@ > #include "Rivet/Event.hh" > #include "Rivet/Projection.hh" > #include "Rivet/Projections/FinalState.hh" > -#include "Rivet/Projections/VetoedFinalState.hh" > > namespace Rivet { > > @@ -20,16 +19,21 @@ > /// @name Constructors > //@{ > > - /// Default constructor. > - VisibleFinalState(); > - > /// Constructor with min and max pseudorapidity \f$ \eta \f$ and min \f$ p_T \f$ (in GeV). > VisibleFinalState(double mineta = -MAXRAPIDITY, > double maxeta = MAXRAPIDITY, > - double minpt = 0.0*GeV); > + double minpt = 0.0*GeV) > + { > + setName("VisibleFinalState"); > + addProjection(FinalState(mineta, maxeta, minpt), "FS"); > + } > > /// Constructor with specific FinalState. > - VisibleFinalState(const FinalState& fsp); > + VisibleFinalState(const FinalState& fsp) > + { > + setName("VisibleFinalState"); > + addProjection(fsp, "FS"); > + } > > /// Clone on the heap. > virtual const Projection* clone() const { > > Modified: trunk/src/Analyses/ATLAS_2010_S8919674.cc > ============================================================================== > --- trunk/src/Analyses/ATLAS_2010_S8919674.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Analyses/ATLAS_2010_S8919674.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -3,6 +3,7 @@ > #include "Rivet/RivetAIDA.hh" > #include "Rivet/Tools/Logging.hh" > #include "Rivet/Projections/IdentifiedFinalState.hh" > +#include "Rivet/Projections/VetoedFinalState.hh" > #include "Rivet/Projections/MissingMomentum.hh" > #include "Rivet/Projections/FastJets.hh" > #include "Rivet/Projections/ClusteredPhotons.hh" > > Modified: trunk/src/Analyses/ATLAS_2011_CONF_2011_090.cc > ============================================================================== > --- trunk/src/Analyses/ATLAS_2011_CONF_2011_090.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Analyses/ATLAS_2011_CONF_2011_090.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -7,6 +7,7 @@ > #include "Rivet/Projections/ChargedFinalState.hh" > #include "Rivet/Projections/VisibleFinalState.hh" > #include "Rivet/Projections/IdentifiedFinalState.hh" > +#include "Rivet/Projections/VetoedFinalState.hh" > #include "Rivet/Projections/FastJets.hh" > > namespace Rivet { > > Modified: trunk/src/Analyses/ATLAS_2011_S8983313.cc > ============================================================================== > --- trunk/src/Analyses/ATLAS_2011_S8983313.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Analyses/ATLAS_2011_S8983313.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -6,6 +6,7 @@ > #include "Rivet/Projections/FinalState.hh" > #include "Rivet/Projections/ChargedFinalState.hh" > #include "Rivet/Projections/VisibleFinalState.hh" > +#include "Rivet/Projections/VetoedFinalState.hh" > #include "Rivet/Projections/IdentifiedFinalState.hh" > #include "Rivet/Projections/FastJets.hh" > #include "Rivet/Tools/RivetMT2.hh" > > Modified: trunk/src/Analyses/ATLAS_2011_S9019561.cc > ============================================================================== > --- trunk/src/Analyses/ATLAS_2011_S9019561.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Analyses/ATLAS_2011_S9019561.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -8,6 +8,7 @@ > #include "Rivet/Projections/VisibleFinalState.hh" > #include "Rivet/Projections/IdentifiedFinalState.hh" > #include "Rivet/Projections/FastJets.hh" > +#include "Rivet/Projections/VetoedFinalState.hh" > > namespace Rivet { > > > Modified: trunk/src/Analyses/ATLAS_2011_S9041966.cc > ============================================================================== > --- trunk/src/Analyses/ATLAS_2011_S9041966.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Analyses/ATLAS_2011_S9041966.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -7,6 +7,7 @@ > #include "Rivet/Projections/ChargedFinalState.hh" > #include "Rivet/Projections/VisibleFinalState.hh" > #include "Rivet/Projections/IdentifiedFinalState.hh" > +#include "Rivet/Projections/VetoedFinalState.hh" > #include "Rivet/Projections/FastJets.hh" > > namespace Rivet { > > Modified: trunk/src/Analyses/MC_PHOTONJETS.cc > ============================================================================== > --- trunk/src/Analyses/MC_PHOTONJETS.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Analyses/MC_PHOTONJETS.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -1,6 +1,7 @@ > // -*- C++ -*- > #include "Rivet/Analyses/MC_JetAnalysis.hh" > #include "Rivet/Projections/LeadingParticlesFinalState.hh" > +#include "Rivet/Projections/VetoedFinalState.hh" > #include "Rivet/Projections/FastJets.hh" > #include "Rivet/Tools/Logging.hh" > #include "Rivet/RivetAIDA.hh" > > Modified: trunk/src/Projections/VisibleFinalState.cc > ============================================================================== > --- trunk/src/Projections/VisibleFinalState.cc Thu Sep 22 13:53:43 2011 (r3382) > +++ trunk/src/Projections/VisibleFinalState.cc Thu Sep 22 13:53:44 2011 (r3383) > @@ -1,56 +1,45 @@ > // -*- C++ -*- > #include "Rivet/Rivet.hh" > +#include "Rivet/Tools/ParticleIdUtils.hh" > #include "Rivet/Projections/VisibleFinalState.hh" > #include "Rivet/Cmp.hh" > -#include "Rivet/Tools/Utils.hh" > #include<algorithm> > > namespace Rivet { > > > - namespace { > - void _setup_vfs(VetoedFinalState& vfs) { > - vfs.vetoNeutrinos(); > - vfs.addVetoId(1000022); // lightest neutralino > - vfs.addVetoId(1000039); // gravitino > - /// @todo More? > - } > + int VisibleFinalState::compare(const Projection& p) const { > + return FinalState::compare(p); > } > > > - VisibleFinalState::VisibleFinalState() { > - setName("VisibleFinalState"); > - VetoedFinalState vfs; > - _setup_vfs(vfs); > - addProjection(vfs, "VetoedFS"); > - } > + // Since we remove inivisibles from the FinalState in project(), > + // we need a filter where invisible --> true > + bool isInvisibleFilter(const Particle& p) { > + // charged particles are visible > + if ( PID::threeCharge( p.pdgId() ) != 0 ) > + return false; > > + // neutral hadrons are visible > + if ( PID::isHadron( p.pdgId() ) ) > + return false; > > - VisibleFinalState::VisibleFinalState(double mineta, double maxeta, double minpt) { > - setName("VisibleFinalState"); > - VetoedFinalState vfs(FinalState(mineta, maxeta, minpt)); > - _setup_vfs(vfs); > - addProjection(vfs, "VetoedFS"); > - } > + // photons are visible > + if ( p.pdgId() == PHOTON ) > + return false; > > - > - VisibleFinalState::VisibleFinalState(const FinalState& fsp) { > - setName("VisibleFinalState"); > - VetoedFinalState vfs(fsp); > - _setup_vfs(vfs); > - addProjection(vfs, "VetoedFS"); > - } > - > - > - int VisibleFinalState::compare(const Projection& p) const { > - return mkNamedPCmp(p, "VetoedFS"); > + // everything else is invisible > + return true; > } > > > void VisibleFinalState::project(const Event& e) { > - const FinalState& vfs = applyProjection<FinalState>(e, "VetoedFS"); > - _theParticles = vfs.particles(); > + const FinalState& fs = applyProjection<FinalState>(e, "FS"); > + _theParticles.clear(); > + std::remove_copy_if(fs.particles().begin(), fs.particles().end(), > + std::back_inserter(_theParticles), isInvisibleFilter); > + MSG_DEBUG("Number of visible final-state particles = " > +<< _theParticles.size()); > } > > - > } > _______________________________________________ > Rivet-svn mailing list > Rivet-svn at projects.hepforge.org > http://www.hepforge.org/lists/listinfo/rivet-svn
More information about the Rivet mailing list |