Skip to main content

Project used to apply selection to ntuples used for RX measurements filtered and skimmed by post_ap project

Project description

[TOC]

$R_X$ selection

This project is meant to apply an offline selection to ntuples produced by post_ap and downloaded with rx_data. the selection is done with jobs sent to an HTCondor cluster.

How to pick up selection and apply it to data and MC

For this do:

from rx_selection import selection as sel

# trigger : HLT2 trigger, e.g. Hlt2RD_BuToKpEE_MVA 
# q2bin   : low, central, jpsi, psi2, high
# smeared : If true (default), the selection will use cuts on smeared masses. Only makes sense for electron MC samples
# process : 
#     One of the keys in https://gitlab.cern.ch/rx_run3/rx_data/-/blob/master/src/rx_data_lfns/rx/v7/rk_samples.yaml
#     DATA will do all the data combined

d_sel = sel.selection(trigger='Hlt2RD_BuToKpEE_MVA', q2bin='jpsi', process='DATA', smeared=True)

# You can override the selection here
for cut_name, cut_value in d_sel.items():
    rdf = rdf.Filter(cut_value, cut_name)

rep = rdf.Report()
# Here you cross check that the cuts were applied and see the statistics
rep.Print()

Changing selection

Overriding default

The selection stored in the config files can be overriden with:

from rx_selection import selection as sel

with sel.custom_selection(d_sel = {'bdt' : 'mva_cmb > 0.1'}):
    run_function_that_uses_selection()

This will make sure that the bdt field:

  • Is added with a mva_cmb > 0.1 cut, if it does not exist
  • Is updated, if it exists

inside the context, outside, the nominal selection will be used.

This manager implements a lock that prevents custom selections from been set more than once in a nested way.

If the user has to use a ustom selection inside a context already using a custom selection, he has to use:

from rx_selection import selection as sel

with sel.custom_selection(d_sel = {'bdt_cmb' : 'mva_cmb > 0.1'}):
    # mva_cmb cut added on top of default selection
    run_with_cmb_cut()
    with sel.custom_selection(d_sel = {'bdt_prc' : 'mva_prc > 0.2'}, force_override=True):
        # mva_prc cut added on top of default selection
        run_with_prc_cut()

Overriding current selection

In order to override whatever is the current selection do:

from rx_selection import selection as sel

with sel.custom_selection(d_sel = {'bdt' : 'mva_cmb > 0.1'}):
    # Here you run with mva_cmb only
    with sel.update_selection(d_sel = {'bdt_prc' : 'mva_prc > 0.2'}):
        # Here you run with both mva_cmb and mva_prc
        run_function_that_uses_selection()

This will not override the default selection, as custom_selection does. It will override the current selection, which might be a custom selection.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rx_selection-0.1.9.dev281.tar.gz (15.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rx_selection-0.1.9.dev281-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

Details for the file rx_selection-0.1.9.dev281.tar.gz.

File metadata

  • Download URL: rx_selection-0.1.9.dev281.tar.gz
  • Upload date:
  • Size: 15.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for rx_selection-0.1.9.dev281.tar.gz
Algorithm Hash digest
SHA256 2e56f1c39bf6545e226086b5718acbbc69a0cde3a095e6d349ca3e69d8c15cb5
MD5 3bac45387850f7c1c7e9b67d02639fd0
BLAKE2b-256 6baba70b27c3e832559df2b050d3a85771d34b60bd2b4aa824565bcdbf331819

See more details on using hashes here.

Provenance

The following attestation bundles were made for rx_selection-0.1.9.dev281.tar.gz:

Publisher: publish.yaml on RX-Run3/rx_selection

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rx_selection-0.1.9.dev281-py3-none-any.whl.

File metadata

File hashes

Hashes for rx_selection-0.1.9.dev281-py3-none-any.whl
Algorithm Hash digest
SHA256 f6b7a1a70a8eeda3772aff982514b5a6e20de2f1bdae8be3e5ce530c8bd90e9f
MD5 b0da6b5e5325807835a51dd0464919b7
BLAKE2b-256 03bcf8a90a6811486d749a14a8ff6aa11e81b2de85334844b03f341fd630e7fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for rx_selection-0.1.9.dev281-py3-none-any.whl:

Publisher: publish.yaml on RX-Run3/rx_selection

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page