{ "cells": [ { "cell_type": "markdown", "id": "6f71ed5b", "metadata": {}, "source": [ "# SoLID sum diff ratios" ] }, { "cell_type": "code", "execution_count": 6, "id": "5f90b0f6-477a-4bf4-98ff-b1fe4cb51b75", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Defaulting to user installation because normal site-packages is not writeable\n", "\u001b[31mERROR: Could not find a version that satisfies the requirement lhapdf (from versions: none)\u001b[0m\u001b[31m\n", "\u001b[0m\u001b[31mERROR: No matching distribution found for lhapdf\u001b[0m\u001b[31m\n", "\u001b[0m" ] } ], "source": [ "!pip install lhapdf" ] }, { "cell_type": "code", "execution_count": 1, "id": "0da97e2d", "metadata": {}, "outputs": [ { "ename": "ModuleNotFoundError", "evalue": "No module named 'lhapdf'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mModuleNotFoundError\u001b[0m Traceback (most recent call last)", "Cell \u001b[0;32mIn[1], line 15\u001b[0m\n\u001b[1;32m 13\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mmatplotlib\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01mgridspec\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m GridSpec\n\u001b[1;32m 14\u001b[0m \u001b[38;5;28;01mfrom\u001b[39;00m \u001b[38;5;21;01mscipy\u001b[39;00m\u001b[38;5;21;01m.\u001b[39;00m\u001b[38;5;21;01minterpolate\u001b[39;00m \u001b[38;5;28;01mimport\u001b[39;00m interp1d\n\u001b[0;32m---> 15\u001b[0m \u001b[38;5;28;01mimport\u001b[39;00m \u001b[38;5;21;01mlhapdf\u001b[39;00m\n\u001b[1;32m 16\u001b[0m path\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124m/w/jam-sciwork24/apps/lhapdf_tables:/w/jam-sciwork24/share/replicas\u001b[39m\u001b[38;5;124m\"\u001b[39m\n\u001b[1;32m 17\u001b[0m os\u001b[38;5;241m.\u001b[39menviron[\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mLHAPDF_DATA_PATH\u001b[39m\u001b[38;5;124m\"\u001b[39m] \u001b[38;5;241m=\u001b[39m path\n", "\u001b[0;31mModuleNotFoundError\u001b[0m: No module named 'lhapdf'" ] } ], "source": [ "import sys,os,time\n", "import pandas as pd\n", "import numpy as np\n", "from numba import jit\n", "import numba as nb\n", "from tqdm.notebook import tqdm\n", "\n", "#--matplotlib\n", "import matplotlib\n", "matplotlib.rc('text',usetex=True)\n", "import pylab as py\n", "from matplotlib.lines import Line2D\n", "from matplotlib.gridspec import GridSpec\n", "from scipy.interpolate import interp1d\n", "import lhapdf\n", "path=\"/w/jam-sciwork24/apps/lhapdf_tables:/w/jam-sciwork24/share/replicas\"\n", "os.environ[\"LHAPDF_DATA_PATH\"] = path" ] }, { "cell_type": "code", "execution_count": 60, "id": "f8c5af32", "metadata": {}, "outputs": [], "source": [ "#ls /w/jam-sciwork24/apps/lhapdf_tables" ] }, { "cell_type": "code", "execution_count": 61, "id": "17deb47b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "LHAPDF 6.5.4 loading all 215 PDFs in set JAM20-SIDIS_PDF_proton_nlo\n", "JAM20-SIDIS_PDF_proton_nlo, version 1; 215 PDF members\n", "LHAPDF 6.5.4 loading all 1057 PDFs in set JAM22pdf\n", "JAM22pdf, version 1; 1057 PDF members\n", "LHAPDF 6.5.4 loading all 49 PDFs in set CJ15nlo\n", "CJ15nlo, version 2; 49 PDF members\n", "LHAPDF 6.5.4 loading all 59 PDFs in set CT18NLO\n", "CT18NLO, version 1; 59 PDF members\n" ] } ], "source": [ "jam20=lhapdf.mkPDFs(\"JAM20-SIDIS_PDF_proton_nlo\")\n", "jam22=lhapdf.mkPDFs(\"JAM22pdf\")\n", "CJ15nlo=lhapdf.mkPDFs(\"CJ15nlo\")\n", "CT18nlo=lhapdf.mkPDFs(\"CT18NLO\")\n", "#g=0, d=1, u=2, s=3, c=4, b=5, db=-1, ub=-2, sb=-3, cb=-4, bb=-5" ] }, { "cell_type": "code", "execution_count": 62, "id": "bc0379ea-f57c-416a-af14-2bf1409c7e35", "metadata": {}, "outputs": [], "source": [ "def get_ratios(pdf,x,Q2): \n", " d = pdf.xfxQ2(1,x,Q2)\n", " db = pdf.xfxQ2(-1,x,Q2) \n", " u = pdf.xfxQ2(2,x,Q2)\n", " ub = pdf.xfxQ2(-2,x,Q2) \n", " Sum=(4*u+4*ub+d+db)/5/(u+ub+d+db)\n", " uv=u-ub\n", " dv=d-db\n", " Dif=(4*uv-dv)/3/(uv+dv)\n", " return [Sum,Dif]" ] }, { "cell_type": "code", "execution_count": 63, "id": "d34b8461-6207-4801-9b22-8caeec150bcd", "metadata": {}, "outputs": [], "source": [ "def mcstat(pdfs,x,Q2):\n", " nreps=len(pdfs)\n", " data=np.zeros((nreps,2))\n", " for i in range(nreps):\n", " data[i]=get_ratios(pdfs[i],x,Q2)\n", " mean=np.mean(data,axis=0)\n", " std=np.std(data,axis=0)\n", " return mean,std" ] }, { "cell_type": "code", "execution_count": 64, "id": "f8789486-4308-4ee2-be03-bebe5d86c850", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "JAM20nlo: sum=5.97e-01 diff=8.16e-01\n", "JAM22nlo: sum=5.86e-01 diff=7.97e-01\n", "CJ15nlo : sum=5.89e-01 diff=8.10e-01\n", "CJ18nlo : sum=5.95e-01 diff=8.22e-01\n" ] } ], "source": [ "x=0.25; Q2=2.25\n", "mean,std=mcstat(jam20,x,Q2)\n", "print('JAM20nlo: sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n", "mean,std=mcstat(jam22,x,Q2)\n", "print('JAM22nlo: sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n", "mean=get_ratios(CJ15nlo[0],x,Q2)\n", "print('CJ15nlo : sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n", "mean=get_ratios(CT18nlo[0],x,Q2)\n", "print('CJ18nlo : sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n" ] }, { "cell_type": "code", "execution_count": 65, "id": "b8c99b5a-1fe5-4ba5-9407-64c380762525", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "JAM20nlo: sum=5.14e-01 diff=6.97e-01\n", "JAM22nlo: sum=5.08e-01 diff=7.44e-01\n", "CJ15nlo : sum=5.07e-01 diff=7.39e-01\n", "CJ18nlo : sum=5.05e-01 diff=7.30e-01\n" ] } ], "source": [ "x=0.01; Q2=2.25\n", "mean,std=mcstat(jam20,x,Q2)\n", "print('JAM20nlo: sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n", "mean,std=mcstat(jam22,x,Q2)\n", "print('JAM22nlo: sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n", "mean=get_ratios(CJ15nlo[0],x,Q2)\n", "print('CJ15nlo : sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n", "mean=get_ratios(CT18nlo[0],x,Q2)\n", "print('CJ18nlo : sum=%0.2e diff=%0.2e'%(mean[0],mean[1]))\n" ] }, { "cell_type": "code", "execution_count": null, "id": "d41d6560-13f9-4201-943b-7c339e6770c2", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "dc1e0f45", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "ef850d66-b8ad-4269-a914-50ff03ff2514", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "af714058-4934-41d0-a977-7f6ec4bc1f26", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "c5ab3af8-40ed-46c1-a052-aeaff2755168", "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "id": "99d23e0b", "metadata": {}, "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.11.9" } }, "nbformat": 4, "nbformat_minor": 5 }