Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Binning explanation for 2D observables #20

Closed
bonanomi opened this issue Dec 3, 2020 · 6 comments
Closed

Binning explanation for 2D observables #20

bonanomi opened this issue Dec 3, 2020 · 6 comments
Labels
enhancement New feature or request

Comments

@bonanomi
Copy link
Owner

bonanomi commented Dec 3, 2020

As a first benchmark for 2D measurements try to produce binned pTH in nJets bins measurement.

In principle it's still a "1D" measurement, where we use as gen/reco observables a cut on both pTH and nJets.

This measurement is interesting because of its many possible interpretations.

E.g. see Fig. 10 in ATLAS differential paper.

@AlessandroTarabini
Copy link
Collaborator

Working on RunCoefficients.py and RunPlotCoefficients.py

@AlessandroTarabini
Copy link
Collaborator

AlessandroTarabini commented Dec 10, 2020

RunCoefficients and RunPlotCoefficients updated for 2D measurements.
Three different formats of binning:

  • |0|1|2|3|20| vs |0|10|20|45|90|250| / |0|10|20|80|250| / |0|20|90|250| / |0|25|250| (like njets vs pT4l)
  • |50|80| vs |10|30| / |50|80| vs |30|60| / |80|110| vs |10|25| / |80|110| vs |25|30| (like mZ1 vs mZ2)
  • |0|1|2|3|20| vs |0|10|20|45|90|250|

Name of the 2D variable: '(name_var_1) vs (name_var_2)'

The obs_bins variable is a dictionary whose index is the number of the bin, each entry of the dictionary is a list [obs_bins_low, obs_bins_high, obs_bins_low_2nd, obs_bins_high_2nd]. The first two entries are the lower and upper bound of the first variable. The second two entries are the lower and upper bound of the second variable

Working on RunTemplates and plot_templates

@AlessandroTarabini
Copy link
Collaborator

RunTemplates and plot_templates updated for 2d measurements.
The structure recalls the one used in RunCoefficients.
There is the tricky point, already present in RunCoefficients, of the length of obs_bins. For 1D measurement the number of bins is len(obs_bins)-1, instead for 2D measurement the number of bins is len(obs_bins). This is the source of the if statements to differentiate between 1D and 2D analysis.

Working on "fit" scripts

@AlessandroTarabini
Copy link
Collaborator

"fit" scripts updated for 2d measurements.
Found a wiser method to implement the difference between obs_bins in 1D measurement and 2D measurements. Define a varibale nBins=len(obs_bins) for 2D and nBins=len(obs_bins)-1 for 1D. Already implemented in "fit" scripts. With this method it is not necessary to provide bin boundaries in inputs (they are taken from inputs files).

To do: Implement nBins method in other scripts as well to optimize the framework

Working on producePlots

@bonanomi
Copy link
Owner Author

When ready, PR [to this branch] for testing before final release in the framework.

@AlessandroTarabini
Copy link
Collaborator

#24

@AlessandroTarabini AlessandroTarabini changed the title Produce double differential measurement pTH vs nJets Produce double differential measurements Dec 18, 2020
@bonanomi bonanomi pinned this issue Mar 17, 2021
@bonanomi bonanomi changed the title Produce double differential measurements Binning explanation for 2D observables Mar 27, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants