rivet is hosted by Hepforge, IPPP Durham
close Warning:
  • Error with navigation contributor "BrowserModule"
  • Can't synchronize with repository "(default)" (Repository path '/hepforge/hg/rivet/public/rivet' does not exist.). Look in the Trac log for more information.

Opened 9 years ago

Last modified 6 years ago

#439 new task

Add and use a set of MomentumFilter functors

Reported by: Andy Buckley Owned by: David Grellscheid
Priority: blocker Milestone: 2.2.0 -- jets, tagging, cuts
Component: General Version: HEAD
Keywords: Cc:

Description

Having to pass lots of parameters to projections to define low/high/multi cuts on eta, y, pT, etc. is increasingly horrible. Nicer would be being able to pass a general object which returns true/false for acceptance of a momentum (from jets, particles, etc.)... similar to what's used as a template param in LossyFinalState?.

We should put an operator
to allow combination of these objects.

Change History (4)

comment:1 Changed 7 years ago by Andy Buckley

Component: ProjectionsGeneral
Milestone: 2.0.02.1.0
Priority: majorblocker
Type: enhancementtask

We have a working proof of concept using boost::dynamic_any, and a neater sounding suggestion of how to use expression templates to express the logical combinations with syntactic sugar that means the user doesn't have to see any of it. Very neat, will go in for 2.1.0.

comment:2 Changed 7 years ago by Andy Buckley

Templatey test version for ints: http://pastebin.com/DbG36iCv

Some neat stuff involved in making this work, re. SFINAE and enable_if

comment:3 Changed 6 years ago by Andy Buckley

Milestone: 2.1.02.2.0

comment:4 Changed 6 years ago by Andy Buckley

Owner: changed from Andy Buckley to David Grellscheid
Note: See TracTickets for help on using tickets.