From 6d1fe85c26b72a68083beb3e7fc2bb94ef4a0589 Mon Sep 17 00:00:00 2001 From: Riya-code2003 Date: Mon, 26 Jan 2026 22:42:06 +0530 Subject: [PATCH 1/7] fix #127: Add physics callout box for higgs search data distributioney6 Added a physics tip about the Higgs signal and clarified data vs. MC comparison. --- _episodes/04-higgs-search.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index 881a08b..42d4a9a 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -177,7 +177,6 @@ ax.hist(branches["data_A"]["m4l"]) {: .output} ![m4lep_histogram_1]({{ page.root }}/fig/m4lep_histogram_1.png) - > ## Exercise > > Make the histogram of the variable `m4l` for sample `mc_363490.llll`. @@ -497,6 +496,11 @@ ax.legend(fontsize=18, frameon=False) ``` ![m4lep_histogram_5]({{ page.root }}/fig/m4lep_histogram_5.png) + +> ## Physics Tip: The Higgs Signal +> When looking at the invariant mass distribution, the peak at $125 \text{GeV}$ represents the reconstructed Higgs Boson. +> **Data vs. MC:** The Black dots represent actual ATLAS experiment data, while the colored histograms are Monte Carlo (MC) Simulations. We compare them to see if our theoretical models match reality! {: .challenge} + > ## Exercise > > Modify a bit the previous code to include the ticks and text, in the text and axis labels use latex to achieve the final plot. From e53ec029e216cef8f41a1af8b378f3c24e07db45 Mon Sep 17 00:00:00 2001 From: Riya-code2003 Date: Tue, 27 Jan 2026 07:57:05 +0530 Subject: [PATCH 2/7] docs: update callout to include python unpacking explanation to Higgs search callout Added a new challenge section on Python unpacking and physics logic, clarifying the distinction between data and Monte Carlo simulations. --- _episodes/04-higgs-search.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index 42d4a9a..5f273b7 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -497,9 +497,11 @@ ax.legend(fontsize=18, frameon=False) ![m4lep_histogram_5]({{ page.root }}/fig/m4lep_histogram_5.png) -> ## Physics Tip: The Higgs Signal -> When looking at the invariant mass distribution, the peak at $125 \text{GeV}$ represents the reconstructed Higgs Boson. -> **Data vs. MC:** The Black dots represent actual ATLAS experiment data, while the colored histograms are Monte Carlo (MC) Simulations. We compare them to see if our theoretical models match reality! {: .challenge} +> ## Challenge: Python unpacking & Physics Logic +> +> **Python Unpacking:** In the code'fig, (ax_1, ax_2) = plt.subplots(1,2)', we use "tuple unpacking" to assign the figure and two separate plot axes to variables in one go. +> **Physics Logic:** For newcomers, remember the black dots are actual **Data** from ATLAS, while colored histograms are **Monte Carlo (MC)** simulations.We compare them to verify the $125 \text{Gev} Higgs signal matches theory! {: .challenge} + > ## Exercise > From 7c0696f629ffbd9a8934fa63d652db739266c4d0 Mon Sep 17 00:00:00 2001 From: Riya-code2003 Date: Thu, 29 Jan 2026 05:41:29 +0530 Subject: [PATCH 3/7] Enhance challenge section on Python and physics concepts Clarified explanations on Python unpacking and physics logic related to Higgs signal verification. --- _episodes/04-higgs-search.md | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index 5f273b7..4c76916 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -409,6 +409,19 @@ units = " [GeV]" ranges = [[80, 170]] bins = 24 ``` +> ## Challenge: Python unpacking & Physics Logic +> +> **Python Unpacking:** In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use `tuple unpacking` to assign the figure and two separate plot axes to variables in one go. For example: +> +> ``` python +> packed_data = (1, (2, 3)) +> a, (b, c) = packed_data +> assert a == 1 and b == 2 and c == 3 +> ``` +> +> **Physics Logic:** For newcomers, remember the black dots are actual **Data** from ATLAS, while colored histograms are **Monte Carlo (MC)** simulations. We compare them to verify the 125 GeV Higgs signal matches theory! +{: .challenge} + ```python fig, (ax_1, ax_2) = plt.subplots(1, 2) @@ -499,8 +512,6 @@ ax.legend(fontsize=18, frameon=False) > ## Challenge: Python unpacking & Physics Logic > -> **Python Unpacking:** In the code'fig, (ax_1, ax_2) = plt.subplots(1,2)', we use "tuple unpacking" to assign the figure and two separate plot axes to variables in one go. -> **Physics Logic:** For newcomers, remember the black dots are actual **Data** from ATLAS, while colored histograms are **Monte Carlo (MC)** simulations.We compare them to verify the $125 \text{Gev} Higgs signal matches theory! {: .challenge} > ## Exercise From 2d62ee8daee28bc55a89efc3ad23aefcc8c07238 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 29 Jan 2026 00:13:03 +0000 Subject: [PATCH 4/7] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- _episodes/04-higgs-search.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index 4c76916..ef043fd 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -410,7 +410,7 @@ ranges = [[80, 170]] bins = 24 ``` > ## Challenge: Python unpacking & Physics Logic -> +> > **Python Unpacking:** In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use `tuple unpacking` to assign the figure and two separate plot axes to variables in one go. For example: > > ``` python @@ -418,7 +418,7 @@ bins = 24 > a, (b, c) = packed_data > assert a == 1 and b == 2 and c == 3 > ``` -> +> > **Physics Logic:** For newcomers, remember the black dots are actual **Data** from ATLAS, while colored histograms are **Monte Carlo (MC)** simulations. We compare them to verify the 125 GeV Higgs signal matches theory! {: .challenge} From 93a24c1412be228ce4a5bfeb2bb9e67c3cc851eb Mon Sep 17 00:00:00 2001 From: Riya-code2003 Date: Thu, 5 Feb 2026 05:46:19 +0530 Subject: [PATCH 5/7] Revise section titles and enhance explanations Updated section titles and improved clarity in explanations regarding Python unpacking and physics logic. --- _episodes/04-higgs-search.md | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index ef043fd..6ca8694 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -177,6 +177,7 @@ ax.hist(branches["data_A"]["m4l"]) {: .output} ![m4lep_histogram_1]({{ page.root }}/fig/m4lep_histogram_1.png) +> > ## Exercise > > Make the histogram of the variable `m4l` for sample `mc_363490.llll`. @@ -401,7 +402,7 @@ for k in range(0, 3): ~~~ {: .output} -And then make a plot, actually, let's make 2 plots, with matplotlib we can add sub-plots to the figure, then, we will be able to compare the MC distribution without and with weights. +And then make a plot, actually, let's make 2 plots, with matplotlib we can add sub-plots to the figure, then we will be able to compare the MC distribution without and with weights. ```python var_name = "m4l" @@ -409,19 +410,16 @@ units = " [GeV]" ranges = [[80, 170]] bins = 24 ``` -> ## Challenge: Python unpacking & Physics Logic -> -> **Python Unpacking:** In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use `tuple unpacking` to assign the figure and two separate plot axes to variables in one go. For example: -> -> ``` python -> packed_data = (1, (2, 3)) -> a, (b, c) = packed_data -> assert a == 1 and b == 2 and c == 3 -> ``` -> -> **Physics Logic:** For newcomers, remember the black dots are actual **Data** from ATLAS, while colored histograms are **Monte Carlo (MC)** simulations. We compare them to verify the 125 GeV Higgs signal matches theory! -{: .challenge} +> ## Python Unpacking & Physics Logic +> +> In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use 'tuple unpacking'. +> This is a very common pattern in Python when a function returns multiple values. +> Here, `subplots` returns a figure object and an array of axes. We "unpack" them +> into two separate variables, `ax_1` and `ax_2`, so we can plot different +> distributions side-by-side. +{: .callout} +> ```python fig, (ax_1, ax_2) = plt.subplots(1, 2) @@ -510,7 +508,6 @@ ax.legend(fontsize=18, frameon=False) ![m4lep_histogram_5]({{ page.root }}/fig/m4lep_histogram_5.png) -> ## Challenge: Python unpacking & Physics Logic > From da5627c22019fc0a2e0b0dc216510b8910496116 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Thu, 5 Feb 2026 00:16:33 +0000 Subject: [PATCH 6/7] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- _episodes/04-higgs-search.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index 6ca8694..1d66377 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -411,11 +411,11 @@ ranges = [[80, 170]] bins = 24 ``` > ## Python Unpacking & Physics Logic -> -> In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use 'tuple unpacking'. -> This is a very common pattern in Python when a function returns multiple values. -> Here, `subplots` returns a figure object and an array of axes. We "unpack" them -> into two separate variables, `ax_1` and `ax_2`, so we can plot different +> +> In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use 'tuple unpacking'. +> This is a very common pattern in Python when a function returns multiple values. +> Here, `subplots` returns a figure object and an array of axes. We "unpack" them +> into two separate variables, `ax_1` and `ax_2`, so we can plot different > distributions side-by-side. {: .callout} From ffae3ef26d61eefe9fd74d5b5844a9c793c6b4b0 Mon Sep 17 00:00:00 2001 From: Riya-code2003 Date: Thu, 5 Feb 2026 06:14:07 +0530 Subject: [PATCH 7/7] Fix formatting in Python Unpacking & Physics Logic section Correct formatting and spacing in the Python unpacking section. --- _episodes/04-higgs-search.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/_episodes/04-higgs-search.md b/_episodes/04-higgs-search.md index 1d66377..2ff1c5a 100644 --- a/_episodes/04-higgs-search.md +++ b/_episodes/04-higgs-search.md @@ -410,7 +410,7 @@ units = " [GeV]" ranges = [[80, 170]] bins = 24 ``` -> ## Python Unpacking & Physics Logic +> ##Python Unpacking & Physics Logic > > In the code `fig, (ax_1, ax_2) = plt.subplots(1, 2)`, we use 'tuple unpacking'. > This is a very common pattern in Python when a function returns multiple values. @@ -419,7 +419,7 @@ bins = 24 > distributions side-by-side. {: .callout} -> + ```python fig, (ax_1, ax_2) = plt.subplots(1, 2)