Back to home page

EIC code displayed by LXR

 
 

    


Warning, /python-analysis-bootcamp/Comparing measured and true x and Q^2.ipynb is written in an unsupported language. File is not indexed.

0001 {"cells":[{"cell_type":"markdown","metadata":{},"source":["# Comparing Measured and True x and Q<sup>2</sup>"]},{"cell_type":"markdown","metadata":{},"source":["One of the main goals of analysis of simulated data is to determine how well we will be able to measure the quantities we set out to measure. Since we have access to 'truth' information as well as the 'observed' quantities for the same event, we can make simple comparison."]},{"cell_type":"markdown","metadata":{},"source":["Let us start again from the $x$ and $Q^2$ calculations in a previous notebook."]},{"cell_type":"markdown","id":"described-kernel","metadata":{},"source":["## Importing packages"]},{"attachments":{},"cell_type":"markdown","id":"indoor-desperate","metadata":{},"source":["Depending on the versions of uproot and XRootD that you have installed, you may encouter a warning from uproot below. Nevertheless, because of the simple data format of the ePIC ROOT files, we are able to ignore this warning."]},{"cell_type":"code","execution_count":1,"id":"crazy-lambda","metadata":{"trusted":true},"outputs":[],"source":["import numpy as np\n","import uproot as ur\n","import awkward as ak\n","import matplotlib.pyplot as plt"]},{"cell_type":"markdown","id":"differential-pierce","metadata":{},"source":["## Opening a file with uproot"]},{"cell_type":"markdown","id":"thick-mozambique","metadata":{},"source":["To test uproot, we will open a sample file (a DIS simulation sample):"]},{"cell_type":"code","execution_count":3,"id":"a46335f8","metadata":{},"outputs":[],"source":["server = 'root://dtn-eic.jlab.org//work/eic2/'\n","dir = 'EPIC/RECO/24.02.0/epic_craterlake/DIS/NC/18x275/minQ2=10/'\n","file = 'pythia8NCDIS_18x275_minQ2=10_beamEffects_xAngle=-0.025_hiDiv_1.0000.eicrecon.tree.edm4eic.root'"]},{"cell_type":"code","execution_count":4,"id":"wicked-amsterdam","metadata":{"trusted":true},"outputs":[],"source":["events = ur.open(server + dir + file + ':events')"]},{"cell_type":"markdown","id":"bright-ferry","metadata":{},"source":["## Accessing the reconstructed particle momentum"]},{"cell_type":"markdown","id":"living-architecture","metadata":{},"source":["For this analysis we will only use the three-momentum `p` and the particle identication code `pid`. We will select only electrons (`pid == 11`) and combine them with their initial momentum $\\vec{p}_0$ which, in the ATHENA coordinate system, is in the negative $z$ direction by definition."]},{"cell_type":"code","execution_count":5,"id":"a3658175","metadata":{},"outputs":[],"source":["reconstructed_charged_particles = events['ReconstructedChargedParticles'].arrays()"]},{"cell_type":"code","execution_count":6,"id":"76ff5666","metadata":{},"outputs":[],"source":["kp1, kp2, kp3 = reconstructed_charged_particles['ReconstructedChargedParticles.momentum.x'], reconstructed_charged_particles['ReconstructedChargedParticles.momentum.y'], reconstructed_charged_particles['ReconstructedChargedParticles.momentum.z']\n","PDG = reconstructed_charged_particles['ReconstructedChargedParticles.PDG']\n","m = reconstructed_charged_particles['ReconstructedChargedParticles.mass']"]},{"cell_type":"markdown","metadata":{},"source":["## Determining the momentum transfer $Q^2$"]},{"cell_type":"markdown","id":"small-queensland","metadata":{},"source":["For all particles we can calculate the energy, which we will consider the zeroth component of the four-momentum $p$."]},{"cell_type":"code","execution_count":7,"id":"collect-secondary","metadata":{"trusted":true},"outputs":[],"source":["kp0 = np.sqrt(m**2+(kp1**2+kp2**2+kp3**2))"]},{"cell_type":"markdown","metadata":{},"source":["The four-momentum of the incoming electron beam has only a $p_z$ and $E$ component."]},{"cell_type":"code","execution_count":8,"metadata":{"trusted":true},"outputs":[],"source":["k3 = -18\n","m0 = 0.000511\n","k0 = np.sqrt(m0**2 + k3**2)"]},{"cell_type":"markdown","metadata":{},"source":["We can now calculate the components of the four-momentum transfer $q_\\mu = (k_\\mu - k'_\\mu)$:"]},{"cell_type":"code","execution_count":9,"id":"boring-testing","metadata":{"trusted":true},"outputs":[],"source":["q0 = k0 - kp0\n","q1 =    - kp1\n","q2 =    - kp2\n","q3 = k3 - kp3"]},{"cell_type":"markdown","metadata":{},"source":["With the four components we can form the squared four-momentum transfer, a scalar quantity, which is $Q^2 = -q^2$:"]},{"cell_type":"code","execution_count":10,"metadata":{"trusted":true},"outputs":[],"source":["Q2 = -(q0**2 - q1**2 - q2**2 - q3**2)"]},{"cell_type":"markdown","metadata":{},"source":["## Determining the momentum fraction $x$"]},{"cell_type":"markdown","metadata":{},"source":["In order to determine $x$ we also need the incoming proton momentum $\\vec{p}$. While it might be appealing to think that the proton momentum must be exactly along the $z$ axis as well, this is not the case in the interaction points of the EIC. At interaction point 6 (IP6), the crossing angle is -25 mrad in the $xz$ plane. Thus, the proton four-momentum is:"]},{"cell_type":"code","execution_count":11,"metadata":{"trusted":true},"outputs":[],"source":["alpha = -0.025\n","p1 = 275 * np.sin(alpha)\n","p2 = 0\n","p3 = 275 * np.cos(alpha)\n","p0 = np.sqrt(0.938**2 + p1**2 + p2**2 + p3**2)"]},{"cell_type":"markdown","metadata":{},"source":["With this proton four-momentum we can now calculate the product $p \\cdot q$, another scalar quantity:"]},{"cell_type":"code","execution_count":12,"metadata":{"trusted":true},"outputs":[],"source":["pq = p0 * q0 - p1 * q1 - p2 * q2 - p3 * q3"]},{"cell_type":"markdown","metadata":{},"source":["and finally also $x = \\frac{Q^2}{2 pq}$:"]},{"cell_type":"code","execution_count":13,"metadata":{"trusted":true},"outputs":[],"source":["x = 0.5 * Q2 / pq"]},{"cell_type":"markdown","metadata":{},"source":["## Determining the true $x$ "]},{"attachments":{},"cell_type":"markdown","metadata":{},"source":["Because we have access to the `MCParticles` branch, we can determine the 'true' $x$. For the sake of this tutorial, let's use the lab frame quantities to construct that value of $x$."]},{"cell_type":"code","execution_count":14,"metadata":{"trusted":true},"outputs":[],"source":["pdgID = events['MCParticles.PDG'].array()\n","status = events['MCParticles.generatorStatus'].array()\n","psx,psy,psz = events['MCParticles.momentum.x'].array(), events['MCParticles.momentum.y'].array(), events['MCParticles.momentum.z'].array()"]},{"cell_type":"markdown","metadata":{},"source":["We can calculate the lab angles, and electron energies. Those give us the true $Q^2$."]},{"cell_type":"code","execution_count":15,"metadata":{"trusted":true},"outputs":[],"source":["E = 18\n","Ep = np.sqrt(0.000511**2 + psx**2 + psy**2 + psz**2)\n","theta = np.arctan2(np.sqrt(psx**2 + psy**2), psz)\n","Q2_true = 2 * E * Ep * (1 + np.cos(theta))"]},{"cell_type":"markdown","metadata":{},"source":["We can also calculate the true $y$, the center of mass energy $s$, and the true $x$."]},{"cell_type":"code","execution_count":16,"metadata":{"trusted":true},"outputs":[],"source":["y_true = 1 - 0.5 * Ep / E * (1 - np.cos(theta))\n","s = 4 * 18 * 275\n","x_true = Q2_true / s / y_true"]},{"cell_type":"code","execution_count":17,"metadata":{"trusted":true},"outputs":[{"data":{"text/plain":["140.71247279470288"]},"execution_count":17,"metadata":{},"output_type":"execute_result"}],"source":["np.sqrt(s)"]},{"cell_type":"markdown","metadata":{},"source":["We still have to select our primary events: all calculations above also included protons, pions, and even particles that are internal to the generator and never intended to be simulated."]},{"cell_type":"code","execution_count":18,"metadata":{"trusted":true},"outputs":[],"source":["select = np.logical_and((status == 1), (pdgID == 11))"]},{"cell_type":"markdown","metadata":{},"source":["## Comparing the true $x$ and observed $x$"]},{"cell_type":"markdown","metadata":{},"source":["So, how well did we do? Let's take a look at the numbers first."]},{"cell_type":"code","execution_count":19,"metadata":{"trusted":true},"outputs":[{"name":"stdout","output_type":"stream","text":["[[0.0215], [0.00479], [0.0534], [0.013], ..., [0.0031], [0.0046], [0.00952]]\n","[[0.181], [0.00491], [0.0668], [0.0125], ..., [0.00315], [0.00435], [0.0167]]\n"]}],"source":["print(x[PDG == 11])\n","print(x_true[select])"]},{"cell_type":"code","execution_count":20,"metadata":{"trusted":true},"outputs":[{"name":"stdout","output_type":"stream","text":["[[19.7], [58.2], [29], [46.2], [39.8], ..., [17.4], [22.5], [14.9], [16.7]]\n","[[20.5], [59], [29.2], [45.7], [46.3], ..., [17.3], [22.6], [14.8], [17.4]]\n"]}],"source":["print(Q2[PDG == 11])\n","print(Q2_true[select])"]},{"cell_type":"markdown","metadata":{},"source":["We notice that the values are clearly not 100% identical, but we notice a few other things as well:\n","- There are multiple electrons in each events, and we have to make sure we compare the same values.\n","- There are even negative signs for $x$.\n","\n","Whereas the mathematical calculation of $x$ for a scattered electron guarantees a value between 0 and 1, that is not true anymore when we combine measured momenta (which can be reconstructed as larger than the beam energy due to resolution effects), or when angles can be reconstructed differently from the actual scattering angle."]},{"cell_type":"markdown","metadata":{},"source":["If we wish to plot the observed and true values of $x$ with respect to each others, we will need to ensure that the two structures are identical: one and only one entry per event, or none at all for either. Let's use the electron with the largest $Q^2$ in each event."]},{"cell_type":"code","execution_count":21,"metadata":{"trusted":true},"outputs":[],"source":["Q2_true_largest = ak.to_numpy(ak.max(Q2_true[select],1))\n","Q2_meas_largest = ak.to_numpy(ak.max(Q2[PDG == 11],1))\n","Q2_ratio_meas_to_true = Q2_meas_largest / Q2_true_largest"]},{"cell_type":"code","execution_count":22,"metadata":{"trusted":true},"outputs":[{"data":{"image/png":"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","text/plain":["<Figure size 640x480 with 1 Axes>"]},"metadata":{},"output_type":"display_data"}],"source":["plt.hist(Q2_ratio_meas_to_true, range=[0.9, 1.1], bins = 20)\n","plt.yscale('log')\n","plt.xlabel('meas $Q^2$ / true $Q^2$')\n","plt.ylabel('Number of events')\n","plt.show()"]},{"cell_type":"code","execution_count":39,"metadata":{"trusted":true},"outputs":[{"data":{"image/png":"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8MMPkuS6kecvK1C/KCkpqbMadbLZs2ertLTU9SoqKvJy5QAAoLGrd3hauXKlRowYoeDgYK1du1ajRo1S3759tX//fkknHuWybt06rxV6sv79+2vnzp1ubbt27VLHjh0lSbGxsXI4HMrNzXVtr66uVl5envr163face12u1q2bOn2AgAAOJnHF4y/++67Gjp0qMLCwrRp0ybXNUPl5eWu02reNnXqVH355ZdKT0/X7t27lZ2drZdeekmTJk2SdOJ0XWpqqtLT07VixQpt375dY8eOVXh4uO66664GqQkAAJwbPA5PzzzzjBYtWqTFixerWbN/fbW2X79+ys/P93T4U7ryyiu1YsUKvfHGG4qPj9fTTz+t+fPn6+6773b1mTFjhlJTUzVx4kQlJCRo//79ysnJUURERIPUBAAAzg0e3+cpPDxcO3bs0MUXX6yIiAht2bJFcXFx2rNnj7p27apjx455q1af4z5PAPyF+zwB9dfQ93ny6FYF0omLt3fv3q2LL77YrX3dunWKi4vzdHgACCjBkZE+mcc6VvXbnbzAWdV4f8FFI2Xz2i0mzyBI8uotwOuM7pkJEyZoypQp+uqrr2Sz2fTjjz9q+fLlmj59uiZOnOiNGgEAAAKGxytPM2bMUGlpqQYPHqxjx45p4MCBstvtmj59uiZPnuyNGgEAAAKG155tV1FRoR07dsjpdKpr165q0aKFN4b1K655AvBrnLYDPOSD03Y11nGttlYE7jVPvwgPD1dCQoK3hgMAAAhI9Q5PlZWV+vTTTzV8+HBJJ+7OffJz4YKDg/X000+refPmnlcJAAAQIOodnl599VV98MEHrvCUlZWlyy+/XGFhYZKk7777TjExMZo6dap3KgUAAAgA9T7xuHz5co0bN86tLTs7W6tWrdKqVav07LPP6s9//rPHBQIAAASSeoenXbt26dJLL3W9b968uYKC/jXcVVddpR07dnhWHQAAQICp92m70tJShYT86+P//Oc/3bY7nU63a6AAAACagnqvPLVv317bt28/7fatW7eqffv29R0eAAAgINU7PA0bNkyPP/74KZ9dV1lZqSeffFLXX3+9R8UBAAAEmnrfJPPgwYPq0aOHQkNDNXnyZF166aWy2Wz67rvvlJWVpZqaGm3atEnR0dHertlnuEkmgF/jJpmAh87lm2RGR0dr/fr1uu+++zRr1iz9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K4fDodzcXFdbdXW18vLy1K9fP1+X2+Rde+212rZtmzZv3ux6JSQk6O6779bmzZsVFxfH8fCx/v3717l9x65du9SxY0dJ/BnxtYqKCgUFuf+zGRwc7LpVAcfDf87mZ9+7d281a9bMrc+BAwe0fft28+NTv+vcAc/dd999VmRkpLV69WrrwIEDrldFRYWrz+9//3srMjLSeu+996xt27ZZd955p9WuXTurrKzMj5WfO07+tp1lcTx87euvv7ZCQkKsOXPmWN9//721fPlyKzw83Hr99dddfTgmvpOSkmJdeOGF1gcffGAVFhZa7733nnXBBRdYM2bMcPXheDSc8vJya9OmTdamTZssSda8efOsTZs2WXv37rUs6+x+9vfee6/Vvn1765NPPrHy8/Ota665xurevbtVU1NjVAvhCX4j6ZSvV155xdXH6XRaTzzxhOVwOCy73W4NHDjQ2rZtm/+KPsf8OjxxPHzvf//3f634+HjLbrdbXbp0sV566SW37RwT3ykrK7OmTJlidejQwWrevLkVFxdnPfLII1ZVVZWrD8ej4axateqU/2akpKRYlnV2P/vKykpr8uTJVlRUlBUWFmYNHz7c+uGHH4xrsVmWZdV7nQwAAOAcwzVPAAAABghPAAAABghPAAAABghPAAAABghPAAAABghPAAAABghPAAAABghPAAAABghPAAAABghPAJq0oqIiJSYmqmvXrurWrZvefvttf5d0Vhpr3cC5gMezAGjSDhw4oIMHD6pHjx4qKSlRr169tHPnTp133nn+Lu2MGmvdwLmAlScATVq7du3Uo0cPSVLbtm0VFRWlQ4cOnbZ/YmKibDabbDabNm/e7JsiT+FMdY8dO9ZV4/vvv++3GoFzFeEJgLHExESlpqb6uwxt3rxZd9xxhxwOh0JDQ3XJJZcoLS1Nx48fP2X/b775Rk6nUxdddNEZx/3P//xPHThwQPHx8W7txcXFmjJlijp16qTmzZsrOjpaAwYM0KJFi1RRUXFWNd9www0aMmTIKbd98cUXstlsys/PP2Pdf/jDH3TgwIGzmg+A94X4uwAATVN1dbVCQ0MbbPwlS5bo3nvv1X333acPPvhArVq10tq1azVt2jR9//33Wr58uVv/n376SWPGjNHLL7/8m2OHh4fL4XC4te3Zs0f9+/fX+eefr/T0dF1xxRWqqanRrl27tGTJEsXExOjGG2/8zbHHjx+vkSNHau/everYsWOdferRo4d69ep1xrojIyMVGRn5m3MBaCAWABhISUmxJLm9CgsLrUGDBlmTJk2ypk6darVu3doaOHCgZVmW1bFjR+v55593G6N79+7WE088YVmWZTmdTmvu3LlWbGys1bx5c6tbt27W22+/fcYaVq9ebQUFBVlLly6ts+3ll1+2JFnffvutq+3YsWPW1Vdfbb366qu/uX+DBg2ypkyZUqd96NChVvv27a0jR46c8nNOp/Os9uf48eNWdHS0lZaW5vb5o0ePWhEREdaCBQvOum5J1ooVK35znwB4F6ftABj5wx/+oL59+7pObR04cMB1OmnZsmUKCQnR559/rj/96U9nNd6jjz6qV155RQsXLlRBQYGmTp2qUaNGKS8v77SfmTp1qv793/9dKSkpdbYNHjxYkrRlyxZJkmVZGjt2rK655hqNHj3adHclnVj9ycnJ0aRJk057wbbNZjur/QkJCdGYMWO0dOlSWSd9X+ftt99WdXW17r77bq/VDaBhEJ4AGImMjFRoaKjr1JbD4VBwcLAkqVOnTsrMzNRll12mLl26/OZYR48e1bx587RkyRINHTpUcXFxGjt2rEaNGnXa8LVt2zZt2rRJkyZNOuX2yspKSSdCiiR9/vnneuutt/T++++rR48e6tGjh7Zt22a0z7t375ZlWbrsssvc2i+44AK1aNFCLVq00MyZM896f8aNG6d//OMfWr16tattyZIlGjlypFq1auW1ugE0DK55AuA1CQkJRv137NihY8eOKSkpya29urpaPXv2POVnfvkG3C/fRPu1Xy627t69uyRpwIABcjqdRnWdzi+rS7/4+uuv5XQ6dffdd6uqquqs96dLly7q16+flixZosGDB+vvf/+71q5dq5ycHFcfb9YNwLsITwC85lSntIKCgtxOT0lyfRvul3Dw17/+VRdeeKFbH7vdfso5qqurJUnNmzc/5fY//vGP6tevnzp16mRW/Bl06tRJNptN3333nVt7XFycJCksLEyS2f6MHz9ekydP1h//+Ee98sor6tixo6699lqv1Qyg4XDaDoCx0NBQ1dbWnlXfNm3auH2tvqysTIWFhZKkrl27ym6364cfflCnTp3cXqe7nUC3bt0k6ZTXRD333HPatm2bXnjhBdNdOqPWrVsrKSlJWVlZOnr06Gn7mezPbbfdpuDgYGVnZ2vZsmW655576qxsAQhMrDwBMHbxxRfrq6++0j/+8Q+1aNFCUVFRp+17zTXXaOnSpbrhhhvUqlUrPfbYY65rpCIiIjR9+nRNnTpVTqdTAwYMUFlZmdavX68WLVqc8oLwK6+8Utddd50mTZqk48ePKyEhQQcPHtTLL7+sN954Q++995569+7t9X1+8cUX1b9/fyUkJCgtLU3dunVTUFCQNmzYoO+++069e/c22p8WLVro9ttv18MPP6zS0lKNHTvW6zUDaBiEJwDGpk+frpSUFHXt2lWVlZWulaRTmT17tvbs2aPhw4crMjJSTz/9tFv/p59+Wm3btlVGRob27Nmj888/X7169dLDDz982jHfffddPfnkk3rooYe0b98+1dbW6rrrrtOuXbvqnC7zlksuuUSbNm1Senq6Zs+erX379slut6tr166aPn26Jk6caLw/48eP1//8z/8oOTlZHTp0aJC6AXgfz7YD0Oj913/9lz755BNt3LjR9W21+kpMTFSPHj00f/587xTXgGw2m1asWKGbbrrJ36UA5xSueQLQ6C1YsEDjx4+v81iT+nrxxRfVokWLgL01wL333qsWLVr4uwzgnMXKEwCcZP/+/a57RXXo0KFBHzFTXyUlJSorK5N04gHCp7txJ4CGQXgCAAAwwGk7AAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA4QnAAAAA/8PK/uwTXAAv8cAAAAASUVORK5CYII=","text/plain":["<Figure size 640x480 with 1 Axes>"]},"metadata":{},"output_type":"display_data"}],"source":["Q2_bins = np.linspace(1e0,1e2,20)\n","plt.hist2d(Q2_true_largest, Q2_meas_largest, bins = [Q2_bins, Q2_bins])\n","plt.xlabel('true $Q^2$ [GeV$^2$]')\n","plt.ylabel('meas $Q^2$ [GeV$^2$]')\n","plt.show()"]},{"cell_type":"markdown","metadata":{},"source":["Now we have to get the $x$ values to use the corresponding values."]},{"cell_type":"code","execution_count":41,"metadata":{"trusted":true},"outputs":[],"source":["x_true_largestQ2 = x_true[Q2_true==ak.max(Q2_true[select],1)]\n","x_meas_largestQ2 = np.array(ak.to_numpy(x[Q2==ak.max(Q2[PDG==11],1)]))\n","x_ratio_meas_to_true = x_meas_largestQ2 / x_true_largestQ2"]},{"cell_type":"markdown","metadata":{},"source":["We can now plot both a histogram of the ratio and another scatter plot."]},{"cell_type":"code","execution_count":42,"metadata":{"trusted":true},"outputs":[{"data":{"image/png":"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v/3tb3I6nVq0aJF3UgIAALihTkUnMTFRDodDlmVVjs2aNavafj//+c81evRoz6UDAACohzoVnZMnT3o7BwAAgMfVqeh06NDB2zkAAAA8zq0bBn711Vfat2+fioqK5HK5qmybOnWqR4IBAADUl+2is3btWk2ePFkhISFq2bKlHA5H5TaHw0HRAQAAjYbtojN37lzNnTtXs2fPVkCA7XenAwAANBjbTeXChQt69NFHKTkAAKDRs91WJk6cqM2bN3sjCwAAgEc5rH++OU4dVFRU6L777tPFixd1++23Kzg4uMr2JUuWeDSgN5WWlioqKkolJSWKjIz0+PHj0rd7/JgA4E/yF430dQQ0QnZ+f9u+Rufll19WRkaGunTpIknVLkYGAABoLGwXnSVLluhPf/qTxo8f74U47nnwwQf1wQcfaOjQodqyZYuv4wAAgEbC9jU6oaGh6t+/vzeyuG3q1Kl68803fR0DAAA0MraLzrRp07RixQpvZHHb4MGDFRER4esYAACgkbFddD766COtX79eHTt21KhRo/TQQw9V+bJr9+7dGjVqlNq2bSuHw6Ft27ZV22flypWKj49XWFiYevfurT179tj+PgAAwP/YvkbnxhtvdKvQXE95ebl69uypCRMm6Kc//Wm17Zs2bdL06dO1cuVK9e/fX6+//rpSUlKUm5urW265xdb3unTpki5dulT5uLS0tN75AQBA4+XWR0B4UkpKilJSUq67fcmSJZo4caImTZokSVq6dKkyMjK0atUqLVy40Nb3WrhwoebPn1+vvAAAM3jrFiC8Jb5xadS3N758+bIOHTqkESNGVBkfMWKE9u/fb/t4s2fPVklJSeXXqVOnPBUVAAA0QrZXdOLj42u9X86JEyfqFeifnT17VhUVFYqJiakyHhMTozNnzlQ+Tk5O1uHDh1VeXq527dpp69atSkpKqna80NBQhYaGeiwfAABo3GwXnenTp1d5fOXKFeXk5Oi9997Tr3/9a0/lquJfi5VlWVXGMjIyvPJ9AQBA02a76EybNq3GcafTqYMHD9Y70D9r1aqVAgMDq6zeSFJRUVG1VR4AAIB/5bFrdFJSUvTWW2956nCSpJCQEPXu3VuZmZlVxjMzM9WvXz+Pfi8AAGAe2ys617NlyxZFR0fbft758+d17NixyscnT57UkSNHFB0drVtuuUVpaWkaM2aM+vTp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PueRRx7Rrl27tGbNGn322WfauHGjunbt2oCpmx6787x3716NHTtWEydO1NGjR7V582ZlZ2dr0qRJDZy8aSkvL1fPnj312muv1Wn/kydP6t5779Xdd9+tnJwc/fu//7umTp2qt956y8tJmza787x7924NHz5c7777rg4dOqTBgwdr1KhRysnJ8XLSps3uPF9TUlKisWPHaujQoV5KZgALfuPOO++0Jk+eXGWsa9euVnp6eo3779ixw4qKirKKi4sbIp4x7M7zK6+8YnXs2LHK2PLly6127dp5LaNpJFlbt26tdZ9Zs2ZZXbt2rTL29NNPW3fddZcXk5mlLvNck4SEBGv+/PmeD2QoO/M8evRo69lnn7XmzZtn9ezZ06u5mipWdPzE5cuXdejQIY0YMaLK+IgRI7R///4an/P222+rT58+Wrx4sW6++WZ17txZM2fO1MWLFxsicpPkzjz369dPX375pd59911ZlqX//d//1ZYtWzRy5MiGiOw3Pvzww2o/l+TkZB08eFBXrlzxUSrzuVwulZWVKTo62tdRjLN27VodP35c8+bN83WURs2vP9TTn5w9e1YVFRWKiYmpMh4TE6MzZ87U+JwTJ05o7969CgsL09atW3X27FlNmTJF586d4zqd63Bnnvv166cNGzZo9OjR+u6773T16lXdf//9WrFiRUNE9htnzpyp8edy9epVnT17VrGxsT5KZrZXX31V5eXleuSRR3wdxSj/+Mc/lJ6erj179igoiF/ltWFFx884HI4qjy3LqjZ2jcvlksPh0IYNG3TnnXfq3nvv1ZIlS7Ru3TpWdX6AnXnOzc3V1KlTNXfuXB06dEjvvfeeTp48qcmTJzdEVL9S08+lpnF4xsaNG/X8889r06ZNatOmja/jGKOiokI///nPNX/+fHXu3NnXcRo9aqCfaNWqlQIDA6utKhQVFVX7V+41sbGxuvnmmxUVFVU51q1bN1mWpS+//FK33XabVzM3Re7M88KFC9W/f3/9+te/liT16NFDzZs31913360XX3yRlQYPuemmm2r8uQQFBally5Y+SmWuTZs2aeLEidq8ebOGDRvm6zhGKSsr08GDB5WTk6NnnnlG0vf/MLUsS0FBQdq5c6eGDBni45SNBys6fiIkJES9e/dWZmZmlfHMzEz169evxuf0799fp0+f1vnz5yvHPv/8cwUEBKhd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","text/plain":["<Figure size 640x480 with 1 Axes>"]},"metadata":{},"output_type":"display_data"}],"source":["plt.hist(ak.flatten(x_ratio_meas_to_true), range=[0.5, 1.5], bins = 20)\n","plt.yscale('log')\n","plt.xlabel('meas $x$ / true $x$')\n","plt.ylabel('Number of events')\n","plt.show()"]},{"cell_type":"code","execution_count":43,"metadata":{"trusted":true},"outputs":[{"data":{"image/png":"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","text/plain":["<Figure size 640x480 with 1 Axes>"]},"metadata":{},"output_type":"display_data"}],"source":["x_bins = np.logspace(-3,0,30)\n","plt.hist2d(ak.to_numpy(x_true_largestQ2[:,0]), ak.to_numpy(x_meas_largestQ2[:,0]), bins = [x_bins, x_bins])\n","plt.xscale('log')\n","plt.yscale('log')\n","plt.xlabel('true $x$')\n","plt.ylabel('meas $x$')\n","plt.show()"]},{"attachments":{},"cell_type":"markdown","id":"fb5d1d29","metadata":{},"source":["# What's next in simulation, reconstruction, and analysis?"]},{"attachments":{},"cell_type":"markdown","id":"94d174ab","metadata":{},"source":["- Developing a better \"electron finding\" algorithm.\n","- Other methods of reconstructing $x$ and $Q^2$: $\\Sigma$ and $e\\Sigma$ methods, Jacquet-Blondel method,...\n","- Implementing \"unfolding\" of $x$ and $Q^2$-dependent quantities based on the off-diagonal elements in the correlation plots above."]},{"cell_type":"code","execution_count":null,"metadata":{"trusted":true},"outputs":[],"source":[]}],"metadata":{"kernelspec":{"display_name":"Python 3 (ipykernel)","language":"python","name":"python3"},"language_info":{"codemirror_mode":{"name":"ipython","version":3},"file_extension":".py","mimetype":"text/x-python","name":"python","nbconvert_exporter":"python","pygments_lexer":"ipython3","version":"3.12.1"}},"nbformat":4,"nbformat_minor":5}