Compact Muon Solenoid

(CMS) particle detector page provides collaborators with a flexible framework[1] that allows one to define applications for simulation, reconstruction, on-line event selection and off-line analysis in a modular way.

Users can plug together modules provided with the standard CMS software releases along whith their userdefined modules. A module can perform analysis tasks, production of new object collections to be stored in the event, and event filtering. All modules may have configurable parameters, and jobs for event processing are configured with python scripts.

In order to reach the desired degree of flexibility in the configuration, mainly for analysis applications, we realized a Parser that allows the framework to interpret expressions and Boolean conditions (usually intended as “cuts”) written by the user as strings, and evaluate those user-defined expressions and cuts on objects that are retrieved from the CMS Event Store. In this way, many analysis modules for object selection and event filtering achieve the sufficient generality for a wide range of applications without the need of writing a large number of specialized modules.

[…] The result of the parsing phase is an Object Tree where each node represent an ‘atomic’ evaluation step, as in Figure 1. […]

Figure 1. Example of translation from a string cut to an object tree model. The “leaves” of the tree that refer to an object method are mapped to Reflex method calls.

~

LISTA, Luca, JONES, Christopher D. and PETRUCCIANI, Giovanni, 2010. Expression and cut parser for CMS event data. Journal of Physics: Conference Series. April 2010. Vol. 219, no. 3. doi .

[1] Jones C D, Kowalkoski J, Paterno M, Sexton-Kennedy E and Tannenbaum W 2006 Proc. of CHEP 2006, vol 1, ed S Banerjee (India: Macmillan) pp 248-251