diff --git a/.ipynb_checkpoints/raremodel-nb-checkpoint.ipynb b/.ipynb_checkpoints/raremodel-nb-checkpoint.ipynb index 87435fa..71f02d1 100644 --- a/.ipynb_checkpoints/raremodel-nb-checkpoint.ipynb +++ b/.ipynb_checkpoints/raremodel-nb-checkpoint.ipynb @@ -56,7 +56,7 @@ "import tensorflow as tf\n", "import zfit\n", "from zfit import ztf\n", - "from IPython.display import clear_output\n", + "# from IPython.display import clear_output\n", "import os\n", "import tensorflow_probability as tfp\n", "tfd = tfp.distributions" @@ -382,8 +382,10 @@ " 'p4415_mass', 'p4415_scale', 'p4415_phase', 'p4415_width',\n", " 'omega_mass', 'omega_scale', 'omega_phase', 'omega_width',\n", " 'phi_mass', 'phi_scale', 'phi_phase', 'phi_width',\n", + " 'Dbar_mass', 'Dbar_scale', 'Dbar_phase',\n", " 'DDstar_mass', 'DDstar_scale', 'DDstar_phase',\n", - " 'Dbar_mass', 'Dbar_scale', 'Dbar_phase'] # the name of the parameters\n", + " 'tau_mass', 'C_tt']\n", + "# the name of the parameters\n", "\n", " def _unnormalized_pdf(self, x):\n", " \n", @@ -429,9 +431,12 @@ " Dbar_contrib = ztf.to_complex(self.params['Dbar_scale'])*tf.exp(tf.complex(ztf.constant(0.0), self.params['Dbar_phase']))*ztf.to_complex(h_S(self.params['Dbar_mass'], q))\n", " DDstar_contrib = ztf.to_complex(self.params['DDstar_scale'])*tf.exp(tf.complex(ztf.constant(0.0), self.params['DDstar_phase']))*ztf.to_complex(h_P(self.params['DDstar_mass'], q))\n", " return Dbar_contrib + DDstar_contrib\n", - " \n", + " \n", + " def ttau_cusp(q):\n", + " return ztf.to_complex(self.params['C_tt'])*(ztf.to_complex((h_S(self.params['tau_mass'], q))) - ztf.to_complex(h_P(self.params['tau_mass'], q)))\n", + " \n", "\n", - " funcs = rho_res(x) + omega_res(x) + phi_res(x) + jpsi_res(x) + psi2s_res(x) + p3770_res(x) + p4040_res(x)+ p4160_res(x) + p4415_res(x) + P2_D(x)\n", + " funcs = rho_res(x) + omega_res(x) + phi_res(x) + jpsi_res(x) + psi2s_res(x) + p3770_res(x) + p4040_res(x)+ p4160_res(x) + p4415_res(x) + P2_D(x) + ttau_cusp(x)\n", "\n", " vec_f = vec(x, funcs)\n", "\n", @@ -591,11 +596,14 @@ "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "1.2615526703874353\n" - ] + "data": { + "text/plain": [ + "" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" } ], "source": [ @@ -604,36 +612,42 @@ "_2 = p4160_scale*np.cos(p4160_phase)*p4160_width/p4160_mass**3 + p4415_scale*np.cos(p4415_phase)*p4415_width/p4415_mass**3\n", "\n", "C_pert = np.random.uniform(0.03, 0.1)\n", + "# c_pert = 0.1\n", "m_c = 1300\n", "\n", "cDDstar_phase = 10\n", "\n", - "while np.abs(cDDstar_phase) > 1:\n", - " Dbar_eta = np.random.uniform(0.0, 5.0)\n", - " DDstar_eta = np.random.uniform(0.0, 10.0)\n", - " Dbar_phase = np.random.uniform(0.0, 2*np.pi)\n", - " DDstar_mass = pdg['D0_M']\n", "\n", - " R = (C_pert/(m_c**2) - ((_0 + _1 + _2)))\n", - " \n", - " Dbar_mass = (pdg['D0_M']+pdg['Dst_M'])/2\n", + "DDstar_eta = 0\n", + "Dbar_phase = np.random.uniform(0.0, 2*np.pi)\n", + "DDstar_phase = np.random.uniform(0.0, 2*np.pi)\n", + "DDstar_mass = pdg['D0_M']\n", "\n", - " R_ = R - Dbar_eta*np.cos(Dbar_phase)/(6*Dbar_mass**2)\n", + "if Dbar_phase < np.pi:\n", + " Dbar_phase = 0.0\n", + "else:\n", + " Dbar_phase = np.pi\n", "\n", - " cDDstar_phase = R_*10*DDstar_mass**2/DDstar_eta\n", - "# print(\"hey\")\n", + "R = (C_pert/(m_c**2) - ((_0 + _1 + _2)))\n", "\n", - "DDstar_phase = np.arccos(cDDstar_phase)\n", + "Dbar_mass = (pdg['D0_M']+pdg['Dst_M'])/2\n", "\n", - "print(DDstar_phase)\n", + "Dbar_eta = R/np.cos(Dbar_phase)*(6*Dbar_mass**2)\n", + "\n", + "# print(np.cos(Dbar_phase))\n", + "\n", + "# cDDstar_phase = R_*10*DDstar_mass**2/DDstar_eta\n", "\n", "\n", - "Dbar_s = zfit.Parameter(\"Dbar_s\", ztf.constant(Dbar_eta), lower_limit=0.0, upper_limit=5)\n", + "# print(Dbar_eta)\n", + "\n", + "\n", + "Dbar_s = zfit.Parameter(\"Dbar_s\", ztf.constant(Dbar_eta), lower_limit=-1.464, upper_limit=1.464)\n", "Dbar_m = zfit.Parameter(\"Dbar_m\", ztf.constant(Dbar_mass), floating = False)\n", - "Dbar_p = zfit.Parameter(\"Dbar_p\", ztf.constant(Dbar_phase), lower_limit=-2*np.pi, upper_limit=2*np.pi)\n", - "DDstar_s = zfit.Parameter(\"DDstar_s\", ztf.constant(DDstar_eta), lower_limit=0.0, upper_limit=10)\n", + "Dbar_p = zfit.Parameter(\"Dbar_p\", ztf.constant(Dbar_phase), floating = False)\n", + "DDstar_s = zfit.Parameter(\"DDstar_s\", ztf.constant(DDstar_eta), floating = False)\n", "DDstar_m = zfit.Parameter(\"DDstar_m\", ztf.constant(DDstar_mass), floating = False)\n", - "DDstar_p = zfit.Parameter(\"DDstar_p\", ztf.constant(DDstar_phase), lower_limit=-2*np.pi, upper_limit=2*np.pi)\n", + "DDstar_p = zfit.Parameter(\"DDstar_p\", ztf.constant(DDstar_phase), floating = False)\n", "\n", "Dbar_s.set_value(0.0)\n", "DDstar_s.set_value(0.0)" @@ -643,12 +657,29 @@ "cell_type": "markdown", "metadata": {}, "source": [ + "## Tau parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "tau_m = zfit.Parameter(\"tau_m\", ztf.constant(pdg['tau_M']), floating = False)\n", + "Ctt = zfit.Parameter(\"Ctt\", ztf.constant(0.0), lower_limit=-0.5, upper_limit=0.5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## Setup pdf" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -662,7 +693,9 @@ " omega_mass = omega_m, omega_scale = omega_s, omega_phase = omega_p, omega_width = omega_w,\n", " phi_mass = phi_m, phi_scale = phi_s, phi_phase = phi_p, phi_width = phi_w,\n", " DDstar_mass = DDstar_m, DDstar_scale = DDstar_s, DDstar_phase = DDstar_p,\n", - " Dbar_mass = Dbar_m, Dbar_scale = Dbar_s, Dbar_phase = Dbar_p)\n", + " Dbar_mass = Dbar_m, Dbar_scale = Dbar_s, Dbar_phase = Dbar_p,\n", + " tau_mass = tau_m, C_tt = Ctt)\n", + " \n", " \n", "# print(total_pdf.obs)\n", "\n", @@ -681,7 +714,7 @@ }, { "cell_type": "code", - "execution_count": 11, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -724,12 +757,12 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 13, "metadata": {}, "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -749,7 +782,7 @@ "# plt.plot(test_q, fplus_y, label = '+')\n", "# plt.plot(test_q, res_y, label = 'res')\n", "plt.legend()\n", - "plt.ylim(0.0, 1.5e-5)\n", + "plt.ylim(0.0, 6e-6)\n", "# plt.yscale('log')\n", "# plt.xlim(770, 785)\n", "plt.savefig('test.png')\n", @@ -758,7 +791,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -774,7 +807,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ @@ -790,7 +823,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -803,7 +836,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 19, "metadata": {}, "outputs": [], "source": [ @@ -857,7 +890,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 20, "metadata": {}, "outputs": [], "source": [ @@ -941,7 +974,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 21, "metadata": {}, "outputs": [], "source": [ @@ -950,7 +983,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 22, "metadata": {}, "outputs": [], "source": [ @@ -959,7 +992,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 23, "metadata": {}, "outputs": [], "source": [ @@ -968,7 +1001,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 24, "metadata": { "scrolled": false }, @@ -977,8 +1010,29 @@ "name": "stdout", "output_type": "stream", "text": [ + "WARNING:tensorflow:From C:\\Users\\sa_li\\.conda\\envs\\rmd\\lib\\site-packages\\zfit\\core\\sample.py:163: to_int32 (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.cast instead.\n", + "WARNING:tensorflow:From C:\\Users\\sa_li\\.conda\\envs\\rmd\\lib\\site-packages\\tensorflow_probability\\python\\distributions\\categorical.py:263: multinomial (from tensorflow.python.ops.random_ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.random.categorical instead.\n", + "1/6 of Toy 1/1\n", + "Time taken: 30 s\n", + "Projected time left: 2 min, 30 s\n", + "2/6 of Toy 1/1\n", + "Time taken: 50 s\n", + "Projected time left: 1 min, 40 s\n", + "3/6 of Toy 1/1\n", + "Time taken: 1 min, 10 s\n", + "Projected time left: 1 min, 10 s\n", + "4/6 of Toy 1/1\n", + "Time taken: 1 min, 30 s\n", + "Projected time left: 45 s\n", + "5/6 of Toy 1/1\n", + "Time taken: 1 min, 52 s\n", + "Projected time left: 22 s\n", "6/6 of Toy 1/1\n", - "Time taken: 1 min, 55 s\n", + "Time taken: 2 min, 15 s\n", "Projected time left: \n" ] } @@ -1012,7 +1066,7 @@ " sampler.resample(n=event_stack)\n", " s = sampler.unstack_x()\n", " sam = zfit.run(s)\n", - " clear_output(wait=True)\n", + "# clear_output(wait=True)\n", "\n", " c = call + 1\n", " \n", @@ -1026,7 +1080,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 25, "metadata": {}, "outputs": [], "source": [ @@ -1043,14 +1097,14 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Time to generate full toy: 115 s\n", + "Time to generate full toy: 135 s\n", "(5404696,)\n" ] } @@ -1076,7 +1130,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 27, "metadata": {}, "outputs": [ { @@ -1088,7 +1142,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -1123,7 +1177,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 28, "metadata": {}, "outputs": [], "source": [ @@ -1146,7 +1200,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 29, "metadata": {}, "outputs": [], "source": [ @@ -1155,7 +1209,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 30, "metadata": {}, "outputs": [], "source": [ @@ -1171,7 +1225,7 @@ }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 31, "metadata": {}, "outputs": [ { @@ -1179,8 +1233,8 @@ "output_type": "stream", "text": [ "------------------------------------------------------------------\n", - "| FCN = -3.432E+05 | Ncalls=386 (386 total) |\n", - "| EDM = 2.21E-06 (Goal: 5E-06) | up = 0.5 |\n", + "| FCN = -7.052E+05 | Ncalls=297 (297 total) |\n", + "| EDM = 1.6E-05 (Goal: 5E-06) | up = 0.5 |\n", "------------------------------------------------------------------\n", "| Valid Min. | Valid Param. | Above EDM | Reached call limit |\n", "------------------------------------------------------------------\n", @@ -1190,34 +1244,38 @@ "------------------------------------------------------------------\n", "| False | True | True | True | False |\n", "------------------------------------------------------------------\n", - "Function minimum: -343194.2940834424\n", + "Function minimum: -705160.6898739187\n", "---------------------------------------------------------------------------------------------\n", "| | Name | Value | Hesse Err | Minos Err- | Minos Err+ | Limit- | Limit+ | Fixed |\n", "---------------------------------------------------------------------------------------------\n", - "| 0 | rho_p | 6.22 | 0.23 | | |-6.28319 | 6.28319 | |\n", - "| 1 | phi_p | 0.74 | 0.13 | | |-6.28319 | 6.28319 | |\n", - "| 2 | p4160_p | -2.08 | 0.05 | | |-6.28319 | 6.28319 | |\n", - "| 3 | p4415_p | -2.74 | 0.09 | | |-6.28319 | 6.28319 | |\n", - "| 4 | jpsi_p | 4.493 | 0.014 | | |-6.28319 | 6.28319 | |\n", - "| 5 | p4040_p | 3.77 | 0.09 | | |-6.28319 | 6.28319 | |\n", - "| 6 | p3770_p | -1.85 | 0.08 | | |-6.28319 | 6.28319 | |\n", - "| 7 | psi2s_p | 5.862 | 0.014 | | |-6.28319 | 6.28319 | |\n", - "| 8 | omega_p | 0.29 | 0.21 | | |-6.28319 | 6.28319 | |\n", + "| 0 | p4415_p | 3.77 | 0.17 | | |-6.28319 | 6.28319 | |\n", + "| 1 | psi2s_p | 1.827 | 0.028 | | |-6.28319 | 6.28319 | |\n", + "| 2 | phi_p | 0.43 | 0.20 | | |-6.28319 | 6.28319 | |\n", + "| 3 | jpsi_p | 1.659 | 0.016 | | |-6.28319 | 6.28319 | |\n", + "| 4 | p4040_p | -2.75 | 0.16 | | |-6.28319 | 6.28319 | |\n", + "| 5 | p3770_p | -3.23 | 0.11 | | |-6.28319 | 6.28319 | |\n", + "| 6 | Dbar_s | -0.08 | 0.04 | | | -1.464 | 1.464 | |\n", + "| 7 | omega_p | 6.28 | 0.05 | | |-6.28319 | 6.28319 | |\n", + "| 8 | p4160_p | -2.33 | 0.08 | | |-6.28319 | 6.28319 | |\n", + "| 9 | rho_p | 6.3 | 0.5 | | |-6.28319 | 6.28319 | |\n", + "| 10| Ctt | 0.20 | 0.09 | | | -0.5 | 0.5 | |\n", "---------------------------------------------------------------------------------------------\n", - "-------------------------------------------------------------------------------------\n", - "| | rho_p phi_p p4160_p p4415_p jpsi_p p4040_p p3770_p psi2s_p omega_p |\n", - "-------------------------------------------------------------------------------------\n", - "| rho_p | 1.000 -0.123 0.015 0.007 -0.009 0.008 0.013 -0.004 -0.152 |\n", - "| phi_p | -0.123 1.000 -0.006 -0.005 -0.023 -0.005 -0.007 -0.010 -0.014 |\n", - "| p4160_p | 0.015 -0.006 1.000 0.075 0.027 -0.288 -0.006 0.016 0.000 |\n", - "| p4415_p | 0.007 -0.005 0.075 1.000 -0.030 -0.008 0.023 -0.031 -0.001 |\n", - "| jpsi_p | -0.009 -0.023 0.027 -0.030 1.000 -0.012 0.043 0.171 -0.014 |\n", - "| p4040_p | 0.008 -0.005 -0.288 -0.008 -0.012 1.000 0.041 -0.013 -0.001 |\n", - "| p3770_p | 0.013 -0.007 -0.006 0.023 0.043 0.041 1.000 0.004 -0.001 |\n", - "| psi2s_p | -0.004 -0.010 0.016 -0.031 0.171 -0.013 0.004 1.000 -0.005 |\n", - "| omega_p | -0.152 -0.014 0.000 -0.001 -0.014 -0.001 -0.001 -0.005 1.000 |\n", - "-------------------------------------------------------------------------------------\n", - "Hesse errors: OrderedDict([(, {'error': 0.22722319040312122}), (, {'error': 0.13174329420879438}), (, {'error': 0.05174968879202346}), (, {'error': 0.09075842158618563}), (, {'error': 0.014043622288271607}), (, {'error': 0.09035710897513649}), (, {'error': 0.0768543526788319}), (, {'error': 0.014018435747616742}), (, {'error': 0.20679579074364973})])\n" + "-----------------------------------------------------------------------------------------------------\n", + "| | p4415_p psi2s_p phi_p jpsi_p p4040_p p3770_p Dbar_s omega_p p4160_p rho_p Ctt |\n", + "-----------------------------------------------------------------------------------------------------\n", + "| p4415_p | 1.000 -0.156 -0.005 -0.098 0.195 0.004 -0.521 0.001 0.252 -0.007 0.051 |\n", + "| psi2s_p | -0.156 1.000 -0.002 0.097 -0.320 -0.530 -0.144 0.000 -0.221 0.030 0.359 |\n", + "| phi_p | -0.005 -0.002 1.000 -0.016 -0.005 -0.006 -0.006 -0.004 -0.005 0.094 -0.005 |\n", + "| jpsi_p | -0.098 0.097 -0.016 1.000 -0.104 -0.085 0.000 0.002 -0.063 0.058 -0.048 |\n", + "| p4040_p | 0.195 -0.320 -0.005 -0.104 1.000 0.131 -0.068 0.001 0.073 -0.005 -0.323 |\n", + "| p3770_p | 0.004 -0.530 -0.006 -0.085 0.131 1.000 0.258 0.001 0.135 -0.003 -0.442 |\n", + "| Dbar_s | -0.521 -0.144 -0.006 0.000 -0.068 0.258 1.000 -0.000 -0.180 -0.002 -0.600 |\n", + "| omega_p | 0.001 0.000 -0.004 0.002 0.001 0.001 -0.000 1.000 0.001 -0.026 -0.000 |\n", + "| p4160_p | 0.252 -0.221 -0.005 -0.063 0.073 0.135 -0.180 0.001 1.000 -0.006 -0.262 |\n", + "| rho_p | -0.007 0.030 0.094 0.058 -0.005 -0.003 -0.002 -0.026 -0.006 1.000 -0.002 |\n", + "| Ctt | 0.051 0.359 -0.005 -0.048 -0.323 -0.442 -0.600 -0.000 -0.262 -0.002 1.000 |\n", + "-----------------------------------------------------------------------------------------------------\n", + "Hesse errors: OrderedDict([(, {'error': 0.17380840871661274}), (, {'error': 0.027970228474171854}), (, {'error': 0.20292039617036783}), (, {'error': 0.015570129374569142}), (, {'error': 0.15843175013133393}), (, {'error': 0.10775629250302043}), (, {'error': 0.04010837657380628}), (, {'error': 0.05022485817315747}), (, {'error': 0.08346937288373035}), (, {'error': 0.5424750787964765}), (, {'error': 0.09097389706661868})])\n" ] } ], @@ -1248,14 +1306,14 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Time taken for fitting: 5 min, 6 s\n" + "Time taken for fitting: 6 min, 50 s\n" ] } ], @@ -1270,12 +1328,12 @@ }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 33, "metadata": {}, "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -1301,7 +1359,7 @@ }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 34, "metadata": {}, "outputs": [], "source": [ @@ -1315,7 +1373,7 @@ }, { "cell_type": "code", - "execution_count": 32, + "execution_count": 35, "metadata": {}, "outputs": [], "source": [ @@ -1336,7 +1394,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 36, "metadata": {}, "outputs": [], "source": [ @@ -1346,33 +1404,33 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 37, "metadata": {}, "outputs": [], "source": [ - " def jpsi_res(q):\n", - " return resonance(q, _mass = jpsi_mass, scale = jpsi_scale,\n", - " phase = jpsi_phase, width = jpsi_width)\n", + "# def jpsi_res(q):\n", + "# return resonance(q, _mass = jpsi_mass, scale = jpsi_scale,\n", + "# phase = jpsi_phase, width = jpsi_width)\n", "\n", - " def psi2s_res(q):\n", - " return resonance(q, _mass = psi2s_mass, scale = psi2s_scale,\n", - " phase = psi2s_phase, width = psi2s_width)\n", + "# def psi2s_res(q):\n", + "# return resonance(q, _mass = psi2s_mass, scale = psi2s_scale,\n", + "# phase = psi2s_phase, width = psi2s_width)\n", " \n", - " def p3770_res(q):\n", - " return resonance(q, _mass = p3770_mass, scale = p3770_scale,\n", - " phase = p3770_phase, width = p3770_width)\n", + "# def p3770_res(q):\n", + "# return resonance(q, _mass = p3770_mass, scale = p3770_scale,\n", + "# phase = p3770_phase, width = p3770_width)\n", " \n", - " def p4040_res(q):\n", - " return resonance(q, _mass = p4040_mass, scale = p4040_scale,\n", - " phase = p4040_phase, width = p4040_width)\n", + "# def p4040_res(q):\n", + "# return resonance(q, _mass = p4040_mass, scale = p4040_scale,\n", + "# phase = p4040_phase, width = p4040_width)\n", " \n", - " def p4160_res(q):\n", - " return resonance(q, _mass = p4160_mass, scale = p4160_scale,\n", - " phase = p4160_phase, width = p4160_width)\n", + "# def p4160_res(q):\n", + "# return resonance(q, _mass = p4160_mass, scale = p4160_scale,\n", + "# phase = p4160_phase, width = p4160_width)\n", " \n", - " def p4415_res(q):\n", - " return resonance(q, _mass = p4415_mass, scale = p4415_scale,\n", - " phase = p4415_phase, width = p4415_width)" + "# def p4415_res(q):\n", + "# return resonance(q, _mass = p4415_mass, scale = p4415_scale,\n", + "# phase = p4415_phase, width = p4415_width)" ] }, { diff --git a/__pycache__/pdg_const.cpython-37.pyc b/__pycache__/pdg_const.cpython-37.pyc index 5b51a60..c7ba368 100644 --- a/__pycache__/pdg_const.cpython-37.pyc +++ b/__pycache__/pdg_const.cpython-37.pyc Binary files differ diff --git a/data/zfit_toys/toy_0/0.pkl b/data/zfit_toys/toy_0/0.pkl index d513ece..f069aed 100644 --- a/data/zfit_toys/toy_0/0.pkl +++ b/data/zfit_toys/toy_0/0.pkl Binary files differ diff --git a/data/zfit_toys/toy_0/1.pkl b/data/zfit_toys/toy_0/1.pkl index 85a52a1..1117ce4 100644 --- a/data/zfit_toys/toy_0/1.pkl +++ b/data/zfit_toys/toy_0/1.pkl Binary files differ diff --git a/data/zfit_toys/toy_0/10.pkl b/data/zfit_toys/toy_0/10.pkl deleted file mode 100644 index 0a343a2..0000000 --- a/data/zfit_toys/toy_0/10.pkl +++ /dev/null Binary files differ diff --git a/data/zfit_toys/toy_0/2.pkl b/data/zfit_toys/toy_0/2.pkl index 81d1565..fe0ccc8 100644 --- a/data/zfit_toys/toy_0/2.pkl +++ b/data/zfit_toys/toy_0/2.pkl Binary files differ diff --git a/data/zfit_toys/toy_0/3.pkl b/data/zfit_toys/toy_0/3.pkl index 66b047b..0a909a3 100644 --- a/data/zfit_toys/toy_0/3.pkl +++ b/data/zfit_toys/toy_0/3.pkl Binary files differ diff --git a/data/zfit_toys/toy_0/4.pkl b/data/zfit_toys/toy_0/4.pkl index cf04db0..2ec64e3 100644 --- a/data/zfit_toys/toy_0/4.pkl +++ b/data/zfit_toys/toy_0/4.pkl Binary files differ diff --git a/data/zfit_toys/toy_0/5.pkl b/data/zfit_toys/toy_0/5.pkl index d455453..3720ea3 100644 --- a/data/zfit_toys/toy_0/5.pkl +++ b/data/zfit_toys/toy_0/5.pkl Binary files differ diff --git a/data/zfit_toys/toy_0/6.pkl b/data/zfit_toys/toy_0/6.pkl deleted file mode 100644 index 3a3d0eb..0000000 --- a/data/zfit_toys/toy_0/6.pkl +++ /dev/null Binary files differ diff --git a/data/zfit_toys/toy_0/7.pkl b/data/zfit_toys/toy_0/7.pkl deleted file mode 100644 index 4bf64a9..0000000 --- a/data/zfit_toys/toy_0/7.pkl +++ /dev/null Binary files differ diff --git a/data/zfit_toys/toy_0/8.pkl b/data/zfit_toys/toy_0/8.pkl deleted file mode 100644 index 2ebd964..0000000 --- a/data/zfit_toys/toy_0/8.pkl +++ /dev/null Binary files differ diff --git a/data/zfit_toys/toy_0/9.pkl b/data/zfit_toys/toy_0/9.pkl deleted file mode 100644 index 35fba40..0000000 --- a/data/zfit_toys/toy_0/9.pkl +++ /dev/null Binary files differ diff --git a/pdg_const.py b/pdg_const.py index 975b31e..4dbc2ab 100644 --- a/pdg_const.py +++ b/pdg_const.py @@ -23,6 +23,7 @@ "omega_width" : 8.49, "muon_M" : 105.7, + "tau_M": 1776.86, "squark_M" : 95.0, "bquark_M" : 4180.0, @@ -94,25 +95,25 @@ # after scaling - "rho": (775.26, 149.0, -0.35, 1.05), + "rho": (775.26, 149.0, -0.22, 1.05), - "omega": (782.7, 8.5, 0.26, 6.8), + "omega": (782.7, 8.5, 0.38, 6.8), - "phi": (1019.46, 4.25, 0.5, 19.2), + "phi": (1019.46, 4.25, 0.62, 19.2), - "jpsi": (3096.0, 0.09, -1.66, 9897.0), + "jpsi": (3096.0, 0.09, 1.63, 9897.0), "jpsi_auc": 0.2126825758464027, - "psi2s": (3686.0, 0.3, 2.0, 1396.0), + "psi2s": (3686.0, 0.3, 1.8, 1396.0), "psi2s_auc": 0.0151332263, - "p3770": (3773.0, 27.2, -2.13, 2.5), + "p3770": (3773.0, 27.2, -2.95, 2.5), - "p4040": (4039.0, 80.0, -2.52, 1.01), + "p4040": (4039.0, 80.0, -2.75, 1.01), - "p4160": (4191.0, 70.0, -1.9, 2.2), + "p4160": (4191.0, 70.0, -2.28, 2.2), - "p4415": (4421.0, 62.0, -2.52, 1.24), + "p4415": (4421.0, 62.0, -2.31, 1.24), # zeroing resonances @@ -144,7 +145,7 @@ "p4415_BR": 6.1e-10, # Estimates - "Dbar_scale": 1.25, #with phase = pi + "Dbar_scale": 1.46, #with phase = pi "DDstar_scale": 2.41, #with phase = pi diff --git a/raremodel-nb.ipynb b/raremodel-nb.ipynb index bddb7b4..71f02d1 100644 --- a/raremodel-nb.ipynb +++ b/raremodel-nb.ipynb @@ -56,7 +56,7 @@ "import tensorflow as tf\n", "import zfit\n", "from zfit import ztf\n", - "from IPython.display import clear_output\n", + "# from IPython.display import clear_output\n", "import os\n", "import tensorflow_probability as tfp\n", "tfd = tfp.distributions" @@ -382,8 +382,10 @@ " 'p4415_mass', 'p4415_scale', 'p4415_phase', 'p4415_width',\n", " 'omega_mass', 'omega_scale', 'omega_phase', 'omega_width',\n", " 'phi_mass', 'phi_scale', 'phi_phase', 'phi_width',\n", + " 'Dbar_mass', 'Dbar_scale', 'Dbar_phase',\n", " 'DDstar_mass', 'DDstar_scale', 'DDstar_phase',\n", - " 'Dbar_mass', 'Dbar_scale', 'Dbar_phase'] # the name of the parameters\n", + " 'tau_mass', 'C_tt']\n", + "# the name of the parameters\n", "\n", " def _unnormalized_pdf(self, x):\n", " \n", @@ -429,9 +431,12 @@ " Dbar_contrib = ztf.to_complex(self.params['Dbar_scale'])*tf.exp(tf.complex(ztf.constant(0.0), self.params['Dbar_phase']))*ztf.to_complex(h_S(self.params['Dbar_mass'], q))\n", " DDstar_contrib = ztf.to_complex(self.params['DDstar_scale'])*tf.exp(tf.complex(ztf.constant(0.0), self.params['DDstar_phase']))*ztf.to_complex(h_P(self.params['DDstar_mass'], q))\n", " return Dbar_contrib + DDstar_contrib\n", - " \n", + " \n", + " def ttau_cusp(q):\n", + " return ztf.to_complex(self.params['C_tt'])*(ztf.to_complex((h_S(self.params['tau_mass'], q))) - ztf.to_complex(h_P(self.params['tau_mass'], q)))\n", + " \n", "\n", - " funcs = rho_res(x) + omega_res(x) + phi_res(x) + jpsi_res(x) + psi2s_res(x) + p3770_res(x) + p4040_res(x)+ p4160_res(x) + p4415_res(x) + P2_D(x)\n", + " funcs = rho_res(x) + omega_res(x) + phi_res(x) + jpsi_res(x) + psi2s_res(x) + p3770_res(x) + p4040_res(x)+ p4160_res(x) + p4415_res(x) + P2_D(x) + ttau_cusp(x)\n", "\n", " vec_f = vec(x, funcs)\n", "\n", @@ -591,16 +596,9 @@ "metadata": {}, "outputs": [ { - "name": "stdout", - "output_type": "stream", - "text": [ - "0.70947351637856\n" - ] - }, - { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 9, @@ -614,36 +612,42 @@ "_2 = p4160_scale*np.cos(p4160_phase)*p4160_width/p4160_mass**3 + p4415_scale*np.cos(p4415_phase)*p4415_width/p4415_mass**3\n", "\n", "C_pert = np.random.uniform(0.03, 0.1)\n", + "# c_pert = 0.1\n", "m_c = 1300\n", "\n", "cDDstar_phase = 10\n", "\n", - "while np.abs(cDDstar_phase) > 1:\n", - " Dbar_eta = np.random.uniform(0.0, 5.0)\n", - " DDstar_eta = np.random.uniform(0.0, 10.0)\n", - " Dbar_phase = np.random.uniform(0.0, 2*np.pi)\n", - " DDstar_mass = pdg['D0_M']\n", "\n", - " R = (C_pert/(m_c**2) - ((_0 + _1 + _2)))\n", - " \n", - " Dbar_mass = (pdg['D0_M']+pdg['Dst_M'])/2\n", + "DDstar_eta = 0\n", + "Dbar_phase = np.random.uniform(0.0, 2*np.pi)\n", + "DDstar_phase = np.random.uniform(0.0, 2*np.pi)\n", + "DDstar_mass = pdg['D0_M']\n", "\n", - " R_ = R - Dbar_eta*np.cos(Dbar_phase)/(6*Dbar_mass**2)\n", + "if Dbar_phase < np.pi:\n", + " Dbar_phase = 0.0\n", + "else:\n", + " Dbar_phase = np.pi\n", "\n", - " cDDstar_phase = R_*10*DDstar_mass**2/DDstar_eta\n", - "# print(\"hey\")\n", + "R = (C_pert/(m_c**2) - ((_0 + _1 + _2)))\n", "\n", - "DDstar_phase = np.arccos(cDDstar_phase)\n", + "Dbar_mass = (pdg['D0_M']+pdg['Dst_M'])/2\n", "\n", - "print(DDstar_phase)\n", + "Dbar_eta = R/np.cos(Dbar_phase)*(6*Dbar_mass**2)\n", + "\n", + "# print(np.cos(Dbar_phase))\n", + "\n", + "# cDDstar_phase = R_*10*DDstar_mass**2/DDstar_eta\n", "\n", "\n", - "Dbar_s = zfit.Parameter(\"Dbar_s\", ztf.constant(Dbar_eta), lower_limit=0.0, upper_limit=5)\n", + "# print(Dbar_eta)\n", + "\n", + "\n", + "Dbar_s = zfit.Parameter(\"Dbar_s\", ztf.constant(Dbar_eta), lower_limit=-1.464, upper_limit=1.464)\n", "Dbar_m = zfit.Parameter(\"Dbar_m\", ztf.constant(Dbar_mass), floating = False)\n", - "Dbar_p = zfit.Parameter(\"Dbar_p\", ztf.constant(Dbar_phase), lower_limit=-2*np.pi, upper_limit=2*np.pi)\n", - "DDstar_s = zfit.Parameter(\"DDstar_s\", ztf.constant(DDstar_eta), lower_limit=0.0, upper_limit=10)\n", + "Dbar_p = zfit.Parameter(\"Dbar_p\", ztf.constant(Dbar_phase), floating = False)\n", + "DDstar_s = zfit.Parameter(\"DDstar_s\", ztf.constant(DDstar_eta), floating = False)\n", "DDstar_m = zfit.Parameter(\"DDstar_m\", ztf.constant(DDstar_mass), floating = False)\n", - "DDstar_p = zfit.Parameter(\"DDstar_p\", ztf.constant(DDstar_phase), lower_limit=-2*np.pi, upper_limit=2*np.pi)\n", + "DDstar_p = zfit.Parameter(\"DDstar_p\", ztf.constant(DDstar_phase), floating = False)\n", "\n", "Dbar_s.set_value(0.0)\n", "DDstar_s.set_value(0.0)" @@ -653,12 +657,29 @@ "cell_type": "markdown", "metadata": {}, "source": [ + "## Tau parameters" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "tau_m = zfit.Parameter(\"tau_m\", ztf.constant(pdg['tau_M']), floating = False)\n", + "Ctt = zfit.Parameter(\"Ctt\", ztf.constant(0.0), lower_limit=-0.5, upper_limit=0.5)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ "## Setup pdf" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 11, "metadata": {}, "outputs": [], "source": [ @@ -672,7 +693,9 @@ " omega_mass = omega_m, omega_scale = omega_s, omega_phase = omega_p, omega_width = omega_w,\n", " phi_mass = phi_m, phi_scale = phi_s, phi_phase = phi_p, phi_width = phi_w,\n", " DDstar_mass = DDstar_m, DDstar_scale = DDstar_s, DDstar_phase = DDstar_p,\n", - " Dbar_mass = Dbar_m, Dbar_scale = Dbar_s, Dbar_phase = Dbar_p)\n", + " Dbar_mass = Dbar_m, Dbar_scale = Dbar_s, Dbar_phase = Dbar_p,\n", + " tau_mass = tau_m, C_tt = Ctt)\n", + " \n", " \n", "# print(total_pdf.obs)\n", "\n", @@ -691,7 +714,7 @@ }, { "cell_type": "code", - "execution_count": 38, + "execution_count": 12, "metadata": {}, "outputs": [], "source": [ @@ -734,12 +757,12 @@ }, { "cell_type": "code", - "execution_count": 39, + "execution_count": 13, "metadata": {}, "outputs": [ { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -759,7 +782,7 @@ "# plt.plot(test_q, fplus_y, label = '+')\n", "# plt.plot(test_q, res_y, label = 'res')\n", "plt.legend()\n", - "plt.ylim(0.0, 1.5e-5)\n", + "plt.ylim(0.0, 6e-6)\n", "# plt.yscale('log')\n", "# plt.xlim(770, 785)\n", "plt.savefig('test.png')\n", @@ -768,7 +791,7 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 16, "metadata": {}, "outputs": [], "source": [ @@ -784,7 +807,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 17, "metadata": {}, "outputs": [], "source": [ @@ -800,7 +823,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 18, "metadata": {}, "outputs": [], "source": [ @@ -813,7 +836,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 19, "metadata": {}, "outputs": [], "source": [ @@ -867,7 +890,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 20, "metadata": {}, "outputs": [], "source": [ @@ -951,7 +974,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 21, "metadata": {}, "outputs": [], "source": [ @@ -960,7 +983,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 22, "metadata": {}, "outputs": [], "source": [ @@ -969,7 +992,7 @@ }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 23, "metadata": {}, "outputs": [], "source": [ @@ -978,7 +1001,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 24, "metadata": { "scrolled": false }, @@ -987,8 +1010,29 @@ "name": "stdout", "output_type": "stream", "text": [ + "WARNING:tensorflow:From C:\\Users\\sa_li\\.conda\\envs\\rmd\\lib\\site-packages\\zfit\\core\\sample.py:163: to_int32 (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.cast instead.\n", + "WARNING:tensorflow:From C:\\Users\\sa_li\\.conda\\envs\\rmd\\lib\\site-packages\\tensorflow_probability\\python\\distributions\\categorical.py:263: multinomial (from tensorflow.python.ops.random_ops) is deprecated and will be removed in a future version.\n", + "Instructions for updating:\n", + "Use tf.random.categorical instead.\n", + "1/6 of Toy 1/1\n", + "Time taken: 30 s\n", + "Projected time left: 2 min, 30 s\n", + "2/6 of Toy 1/1\n", + "Time taken: 50 s\n", + "Projected time left: 1 min, 40 s\n", + "3/6 of Toy 1/1\n", + "Time taken: 1 min, 10 s\n", + "Projected time left: 1 min, 10 s\n", + "4/6 of Toy 1/1\n", + "Time taken: 1 min, 30 s\n", + "Projected time left: 45 s\n", + "5/6 of Toy 1/1\n", + "Time taken: 1 min, 52 s\n", + "Projected time left: 22 s\n", "6/6 of Toy 1/1\n", - "Time taken: 1 min, 49 s\n", + "Time taken: 2 min, 15 s\n", "Projected time left: \n" ] } @@ -1022,7 +1066,7 @@ " sampler.resample(n=event_stack)\n", " s = sampler.unstack_x()\n", " sam = zfit.run(s)\n", - " clear_output(wait=True)\n", + "# clear_output(wait=True)\n", "\n", " c = call + 1\n", " \n", @@ -1036,7 +1080,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 25, "metadata": {}, "outputs": [], "source": [ @@ -1053,14 +1097,14 @@ }, { "cell_type": "code", - "execution_count": 23, + "execution_count": 26, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Time to generate full toy: 109 s\n", + "Time to generate full toy: 135 s\n", "(5404696,)\n" ] } @@ -1086,7 +1130,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 27, "metadata": {}, "outputs": [ { @@ -1098,7 +1142,7 @@ }, { "data": { - "image/png": "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\n", + "image/png": "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\n", "text/plain": [ "
" ] @@ -1133,7 +1177,7 @@ }, { "cell_type": "code", - "execution_count": 25, + "execution_count": 28, "metadata": {}, "outputs": [], "source": [ @@ -1156,7 +1200,7 @@ }, { "cell_type": "code", - "execution_count": 26, + "execution_count": 29, "metadata": {}, "outputs": [], "source": [ @@ -1165,7 +1209,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 30, "metadata": {}, "outputs": [], "source": [ @@ -1181,7 +1225,7 @@ }, { "cell_type": "code", - "execution_count": 35, + "execution_count": 31, "metadata": {}, "outputs": [ { @@ -1189,8 +1233,8 @@ "output_type": "stream", "text": [ "------------------------------------------------------------------\n", - "| FCN = -7.213E+05 | Ncalls=681 (681 total) |\n", - "| EDM = 5.55E-06 (Goal: 5E-06) | up = 0.5 |\n", + "| FCN = -7.052E+05 | Ncalls=297 (297 total) |\n", + "| EDM = 1.6E-05 (Goal: 5E-06) | up = 0.5 |\n", "------------------------------------------------------------------\n", "| Valid Min. | Valid Param. | Above EDM | Reached call limit |\n", "------------------------------------------------------------------\n", @@ -1198,44 +1242,40 @@ "------------------------------------------------------------------\n", "| Hesse failed | Has cov. | Accurate | Pos. def. | Forced |\n", "------------------------------------------------------------------\n", - "| False | True | False | False | True |\n", + "| False | True | True | True | False |\n", "------------------------------------------------------------------\n", - "Function minimum: -721348.5075397649\n", - "----------------------------------------------------------------------------------------------\n", - "| | Name | Value | Hesse Err | Minos Err- | Minos Err+ | Limit- | Limit+ | Fixed |\n", - "----------------------------------------------------------------------------------------------\n", - "| 0 | p3770_p | 1.44 | 0.08 | | |-6.28319 | 6.28319 | |\n", - "| 1 | DDstar_p | 3.362 | 0.030 | | |-6.28319 | 6.28319 | |\n", - "| 2 | Dbar_p | -4.58 | 0.15 | | |-6.28319 | 6.28319 | |\n", - "| 3 | omega_p | 6.28 | 0.06 | | |-6.28319 | 6.28319 | |\n", - "| 4 | p4160_p | 0.18 | 0.11 | | |-6.28319 | 6.28319 | |\n", - "| 5 | p4415_p | -6.283 | 0.023 | | |-6.28319 | 6.28319 | |\n", - "| 6 | rho_p | -5.14 | 0.28 | | |-6.28319 | 6.28319 | |\n", - "| 7 | jpsi_p | -1.169 | 0.026 | | |-6.28319 | 6.28319 | |\n", - "| 8 | DDstar_s | 6.1 | 0.7 | | | 0 | 10 | |\n", - "| 9 | Dbar_s | 2.64 | 0.15 | | | 0 | 5 | |\n", - "| 10| psi2s_p | -0.628E1 | 0.000E1 | | |-6.28319 | 6.28319 | |\n", - "| 11| phi_p | 6.28 | 0.04 | | |-6.28319 | 6.28319 | |\n", - "| 12| p4040_p | 5.03 | 0.25 | | |-6.28319 | 6.28319 | |\n", - "----------------------------------------------------------------------------------------------\n", - "-----------------------------------------------------------------------------------------------------------------------------------\n", - "| | p3770_p DDstar_p Dbar_p omega_p p4160_p p4415_p rho_p jpsi_p DDstar_s Dbar_s psi2s_p phi_p p4040_p |\n", - "-----------------------------------------------------------------------------------------------------------------------------------\n", - "| p3770_p | 1.000 0.072 -0.060 0.000 0.018 -0.001 0.006 0.134 0.052 0.135 0.016 0.000 -0.106 |\n", - "| DDstar_p | 0.072 1.000 -0.492 0.002 -0.170 0.029 0.028 0.173 0.544 0.880 0.007 -0.000 0.165 |\n", - "| Dbar_p | -0.060 -0.492 1.000 -0.000 -0.304 -0.042 -0.023 -0.494 -0.990 -0.762 0.010 0.001 0.065 |\n", - "| omega_p | 0.000 0.002 -0.000 1.000 0.001 0.000 0.060 -0.004 0.001 0.000 0.000 -0.000 0.000 |\n", - "| p4160_p | 0.018 -0.170 -0.304 0.001 1.000 0.041 0.028 0.230 0.301 -0.029 0.010 -0.000 -0.357 |\n", - "| p4415_p | -0.001 0.029 -0.042 0.000 0.041 1.000 0.002 0.014 0.043 0.025 0.000 -0.000 -0.003 |\n", - "| rho_p | 0.006 0.028 -0.023 0.060 0.028 0.002 1.000 -0.063 0.035 0.023 0.001 -0.010 0.002 |\n", - "| jpsi_p | 0.134 0.173 -0.494 -0.004 0.230 0.014 -0.063 1.000 0.460 0.429 0.013 0.002 -0.300 |\n", - "| DDstar_s | 0.052 0.544 -0.990 0.001 0.301 0.043 0.035 0.460 1.000 0.770 -0.005 -0.001 -0.006 |\n", - "| Dbar_s | 0.135 0.880 -0.762 0.000 -0.029 0.025 0.023 0.429 0.770 1.000 -0.000 -0.001 -0.099 |\n", - "| psi2s_p | 0.016 0.007 0.010 0.000 0.010 0.000 0.001 0.013 -0.005 -0.000 1.000 -0.000 -0.003 |\n", - "| phi_p | 0.000 -0.000 0.001 -0.000 -0.000 -0.000 -0.010 0.002 -0.001 -0.001 -0.000 1.000 0.000 |\n", - "| p4040_p | -0.106 0.165 0.065 0.000 -0.357 -0.003 0.002 -0.300 -0.006 -0.099 -0.003 0.000 1.000 |\n", - "-----------------------------------------------------------------------------------------------------------------------------------\n", - "Hesse errors: OrderedDict([(, {'error': 0.07858146820767153}), (, {'error': 0.030386242659268703}), (, {'error': 0.14532810232147053}), (, {'error': 0.059988315550558724}), (, {'error': 0.11316709924753887}), (, {'error': 0.023452973065602567}), (, {'error': 0.2839486650036189}), (, {'error': 0.026060179670634565}), (, {'error': 0.698027602915535}), (, {'error': 0.1531744170214211}), (, {'error': 0.00173355081028026}), (, {'error': 0.03971572039491633}), (, {'error': 0.24719565728499138})])\n" + "Function minimum: -705160.6898739187\n", + "---------------------------------------------------------------------------------------------\n", + "| | Name | Value | Hesse Err | Minos Err- | Minos Err+ | Limit- | Limit+ | Fixed |\n", + "---------------------------------------------------------------------------------------------\n", + "| 0 | p4415_p | 3.77 | 0.17 | | |-6.28319 | 6.28319 | |\n", + "| 1 | psi2s_p | 1.827 | 0.028 | | |-6.28319 | 6.28319 | |\n", + "| 2 | phi_p | 0.43 | 0.20 | | |-6.28319 | 6.28319 | |\n", + "| 3 | jpsi_p | 1.659 | 0.016 | | |-6.28319 | 6.28319 | |\n", + "| 4 | p4040_p | -2.75 | 0.16 | | |-6.28319 | 6.28319 | |\n", + "| 5 | p3770_p | -3.23 | 0.11 | | |-6.28319 | 6.28319 | |\n", + "| 6 | Dbar_s | -0.08 | 0.04 | | | -1.464 | 1.464 | |\n", + "| 7 | omega_p | 6.28 | 0.05 | | |-6.28319 | 6.28319 | |\n", + "| 8 | p4160_p | -2.33 | 0.08 | | |-6.28319 | 6.28319 | |\n", + "| 9 | rho_p | 6.3 | 0.5 | | |-6.28319 | 6.28319 | |\n", + "| 10| Ctt | 0.20 | 0.09 | | | -0.5 | 0.5 | |\n", + "---------------------------------------------------------------------------------------------\n", + "-----------------------------------------------------------------------------------------------------\n", + "| | p4415_p psi2s_p phi_p jpsi_p p4040_p p3770_p Dbar_s omega_p p4160_p rho_p Ctt |\n", + "-----------------------------------------------------------------------------------------------------\n", + "| p4415_p | 1.000 -0.156 -0.005 -0.098 0.195 0.004 -0.521 0.001 0.252 -0.007 0.051 |\n", + "| psi2s_p | -0.156 1.000 -0.002 0.097 -0.320 -0.530 -0.144 0.000 -0.221 0.030 0.359 |\n", + "| phi_p | -0.005 -0.002 1.000 -0.016 -0.005 -0.006 -0.006 -0.004 -0.005 0.094 -0.005 |\n", + "| jpsi_p | -0.098 0.097 -0.016 1.000 -0.104 -0.085 0.000 0.002 -0.063 0.058 -0.048 |\n", + "| p4040_p | 0.195 -0.320 -0.005 -0.104 1.000 0.131 -0.068 0.001 0.073 -0.005 -0.323 |\n", + "| p3770_p | 0.004 -0.530 -0.006 -0.085 0.131 1.000 0.258 0.001 0.135 -0.003 -0.442 |\n", + "| Dbar_s | -0.521 -0.144 -0.006 0.000 -0.068 0.258 1.000 -0.000 -0.180 -0.002 -0.600 |\n", + "| omega_p | 0.001 0.000 -0.004 0.002 0.001 0.001 -0.000 1.000 0.001 -0.026 -0.000 |\n", + "| p4160_p | 0.252 -0.221 -0.005 -0.063 0.073 0.135 -0.180 0.001 1.000 -0.006 -0.262 |\n", + "| rho_p | -0.007 0.030 0.094 0.058 -0.005 -0.003 -0.002 -0.026 -0.006 1.000 -0.002 |\n", + "| Ctt | 0.051 0.359 -0.005 -0.048 -0.323 -0.442 -0.600 -0.000 -0.262 -0.002 1.000 |\n", + "-----------------------------------------------------------------------------------------------------\n", + "Hesse errors: OrderedDict([(, {'error': 0.17380840871661274}), (, {'error': 0.027970228474171854}), (, {'error': 0.20292039617036783}), (, {'error': 0.015570129374569142}), (, {'error': 0.15843175013133393}), (, {'error': 0.10775629250302043}), (, {'error': 0.04010837657380628}), (, {'error': 0.05022485817315747}), (, {'error': 0.08346937288373035}), (, {'error': 0.5424750787964765}), (, {'error': 0.09097389706661868})])\n" ] } ], @@ -1266,29 +1306,14 @@ }, { "cell_type": "code", - "execution_count": 37, + "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "Time taken for fitting: 9 min, 18 s\n" - ] - }, - { - "ename": "TypeError", - "evalue": "real and imag have incorrect types: float32 float64", - "output_type": "error", - "traceback": [ - "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[1;31mTypeError\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[0mcalcs_test\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mzfit\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mrun\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mprobs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 6\u001b[1;33m \u001b[0mres_y\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mzfit\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mrun\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mjpsi_res\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mtest_q\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m", - "\u001b[1;32m\u001b[0m in \u001b[0;36mjpsi_res\u001b[1;34m(q)\u001b[0m\n\u001b[0;32m 1\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mjpsi_res\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mq\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 2\u001b[0m return resonance(q, _mass = jpsi_mass, scale = jpsi_scale,\n\u001b[1;32m----> 3\u001b[1;33m phase = jpsi_phase, width = jpsi_width)\n\u001b[0m\u001b[0;32m 4\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 5\u001b[0m \u001b[1;32mdef\u001b[0m \u001b[0mpsi2s_res\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mq\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m\u001b[0m in \u001b[0;36mresonance\u001b[1;34m(q, _mass, width, phase, scale)\u001b[0m\n\u001b[0;32m 73\u001b[0m \u001b[1;31m#Calculate the resonance\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 74\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 75\u001b[1;33m \u001b[0m_top\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcomplex\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0m_mass\u001b[0m \u001b[1;33m*\u001b[0m \u001b[0mwidth\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mztf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mconstant\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;36m0.0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 76\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 77\u001b[0m \u001b[0m_bottom\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtf\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcomplex\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0m_mass\u001b[0m\u001b[1;33m**\u001b[0m\u001b[1;36m2\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mq2\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m-\u001b[0m\u001b[0m_mass\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0mgamma_j\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m~\\.conda\\envs\\rmd\\lib\\site-packages\\tensorflow\\python\\util\\dispatch.py\u001b[0m in \u001b[0;36mwrapper\u001b[1;34m(*args, **kwargs)\u001b[0m\n\u001b[0;32m 178\u001b[0m \u001b[1;34m\"\"\"Call target, and fall back on dispatchers if there is a TypeError.\"\"\"\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 179\u001b[0m \u001b[1;32mtry\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m--> 180\u001b[1;33m \u001b[1;32mreturn\u001b[0m \u001b[0mtarget\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m*\u001b[0m\u001b[0margs\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;33m**\u001b[0m\u001b[0mkwargs\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 181\u001b[0m \u001b[1;32mexcept\u001b[0m \u001b[1;33m(\u001b[0m\u001b[0mTypeError\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mValueError\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 182\u001b[0m \u001b[1;31m# Note: convert_to_eager_tensor currently raises a ValueError, not a\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;32m~\\.conda\\envs\\rmd\\lib\\site-packages\\tensorflow\\python\\ops\\math_ops.py\u001b[0m in \u001b[0;36mcomplex\u001b[1;34m(real, imag, name)\u001b[0m\n\u001b[0;32m 418\u001b[0m \u001b[1;32melse\u001b[0m\u001b[1;33m:\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 419\u001b[0m raise TypeError(\"real and imag have incorrect types: \"\n\u001b[1;32m--> 420\u001b[1;33m \"{} {}\".format(real.dtype.name, imag.dtype.name))\n\u001b[0m\u001b[0;32m 421\u001b[0m \u001b[1;32mreturn\u001b[0m \u001b[0mgen_math_ops\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0m_complex\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mreal\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mimag\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mTout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mTout\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mname\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mname\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 422\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n", - "\u001b[1;31mTypeError\u001b[0m: real and imag have incorrect types: float32 float64" + "Time taken for fitting: 6 min, 50 s\n" ] } ], @@ -1303,9 +1328,22 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 33, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], "source": [ "plt.clf()\n", "# plt.plot(x_part, calcs, '.')\n", @@ -1321,7 +1359,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 34, "metadata": {}, "outputs": [], "source": [ @@ -1335,7 +1373,7 @@ }, { "cell_type": "code", - "execution_count": null, + "execution_count": 35, "metadata": {}, "outputs": [], "source": [ @@ -1356,7 +1394,7 @@ }, { "cell_type": "code", - "execution_count": 33, + "execution_count": 36, "metadata": {}, "outputs": [], "source": [ @@ -1366,7 +1404,7 @@ }, { "cell_type": "code", - "execution_count": 34, + "execution_count": 37, "metadata": {}, "outputs": [], "source": [ diff --git a/raremodel-nb.py b/raremodel-nb.py index 886b976..a3ff7c8 100644 --- a/raremodel-nb.py +++ b/raremodel-nb.py @@ -251,19 +251,19 @@ return tf.log(ztf.to_complex((1+tf.sqrt(q))/(1-tf.sqrt(q)))-tf.complex(ztf.constant(0), -1*ztf.constant(np.pi))) def inner_right(q): - return ztf.to_complex(2 * tf.atan(1/tf.sqrt(-q))) + return ztf.to_complex(2 * tf.atan(1/tf.sqrt(tf.math.real(-q)))) - big_bracket = tf.where(y > ztf.const(0.0), inner_rect_bracket(y), inner_right(y)) + big_bracket = tf.where(tf.math.real(y) > ztf.constant(0.0), inner_rect_bracket(y), inner_right(y)) return ztf.to_complex(tf.sqrt(tf.abs(y))) * big_bracket def h_S(m, q): - return ztf.to_complex(2) - G(ztf.to_complex(1) - 4*tf.pow(m, 2) / ztf.to_complex(tf.pow(q, 2))) + return ztf.to_complex(2) - G(ztf.to_complex(1) - ztf.to_complex(4*tf.pow(m, 2)) / ztf.to_complex(tf.pow(q, 2))) def h_P(m, q): - return ztf.to_complex(2/3) + (ztf.to_complex(1) - 4*tf.pow(m, 2) / ztf.to_complex(tf.pow(q, 2))) * h_S(m,q) + return ztf.to_complex(2/3) + (ztf.to_complex(1) - ztf.to_complex(4*tf.pow(m, 2)) / ztf.to_complex(tf.pow(q, 2))) * h_S(m,q) def two_p_ccbar(mD, m_D_bar, m_D_star, q): @@ -322,7 +322,11 @@ 'p4160_mass', 'p4160_scale', 'p4160_phase', 'p4160_width', 'p4415_mass', 'p4415_scale', 'p4415_phase', 'p4415_width', 'omega_mass', 'omega_scale', 'omega_phase', 'omega_width', - 'phi_mass', 'phi_scale', 'phi_phase', 'phi_width'] # the name of the parameters + 'phi_mass', 'phi_scale', 'phi_phase', 'phi_width', + 'Dbar_mass', 'Dbar_scale', 'Dbar_phase', + 'DDstar_mass', 'DDstar_scale', 'DDstar_phase', + 'tau_mass', 'C_tt'] +# the name of the parameters def _unnormalized_pdf(self, x): @@ -363,9 +367,17 @@ def p4415_res(q): return resonance(q, _mass = self.params['p4415_mass'], scale = self.params['p4415_scale'], phase = self.params['p4415_phase'], width = self.params['p4415_width']) - + + def P2_D(q): + Dbar_contrib = ztf.to_complex(self.params['Dbar_scale'])*tf.exp(tf.complex(ztf.constant(0.0), self.params['Dbar_phase']))*ztf.to_complex(h_S(self.params['Dbar_mass'], q)) + DDstar_contrib = ztf.to_complex(self.params['DDstar_scale'])*tf.exp(tf.complex(ztf.constant(0.0), self.params['DDstar_phase']))*ztf.to_complex(h_P(self.params['DDstar_mass'], q)) + return Dbar_contrib + DDstar_contrib + + def ttau_cusp(q): + return ztf.to_complex(self.params['C_tt'])*(ztf.to_complex((h_S(self.params['tau_mass'], q))) - ztf.to_complex(h_P(self.params['tau_mass'], q))) + - funcs = rho_res(x) + omega_res(x) + phi_res(x) + jpsi_res(x) + psi2s_res(x) + p3770_res(x) + p4040_res(x)+ p4160_res(x) + p4415_res(x) + funcs = rho_res(x) + omega_res(x) + phi_res(x) + jpsi_res(x) + psi2s_res(x) + p3770_res(x) + p4040_res(x)+ p4160_res(x) + p4415_res(x) + P2_D(x) + ttau_cusp(x) vec_f = vec(x, funcs) @@ -486,11 +498,71 @@ p4415_s = zfit.Parameter("p4415_s", ztf.constant(p4415_scale), floating = False) -# ## Setup pdf +# ## Dynamic generation of 2 particle contribution # In[9]: +_0 = jpsi_scale*np.cos(jpsi_phase)*jpsi_width/jpsi_mass**3 + psi2s_scale*np.cos(psi2s_phase)*psi2s_width/psi2s_mass**3 +_1 = p3770_scale*np.cos(p3770_phase)*p3770_width/p3770_mass**3 + p4040_scale*np.cos(p4040_phase)*p4040_width/p4040_mass**3 +_2 = p4160_scale*np.cos(p4160_phase)*p4160_width/p4160_mass**3 + p4415_scale*np.cos(p4415_phase)*p4415_width/p4415_mass**3 + +C_pert = np.random.uniform(0.03, 0.1) +# c_pert = 0.1 +m_c = 1300 + +cDDstar_phase = 10 + + +DDstar_eta = 0 +Dbar_phase = np.random.uniform(0.0, 2*np.pi) +DDstar_phase = np.random.uniform(0.0, 2*np.pi) +DDstar_mass = pdg['D0_M'] + +if Dbar_phase < np.pi: + Dbar_phase = 0.0 +else: + Dbar_phase = np.pi + +R = (C_pert/(m_c**2) - ((_0 + _1 + _2))) + +Dbar_mass = (pdg['D0_M']+pdg['Dst_M'])/2 + +Dbar_eta = R/np.cos(Dbar_phase)*(6*Dbar_mass**2) + +# print(np.cos(Dbar_phase)) + +# cDDstar_phase = R_*10*DDstar_mass**2/DDstar_eta + + +# print(Dbar_eta) + + +Dbar_s = zfit.Parameter("Dbar_s", ztf.constant(Dbar_eta), lower_limit=-1.464, upper_limit=1.464) +Dbar_m = zfit.Parameter("Dbar_m", ztf.constant(Dbar_mass), floating = False) +Dbar_p = zfit.Parameter("Dbar_p", ztf.constant(Dbar_phase), floating = False) +DDstar_s = zfit.Parameter("DDstar_s", ztf.constant(DDstar_eta), floating = False) +DDstar_m = zfit.Parameter("DDstar_m", ztf.constant(DDstar_mass), floating = False) +DDstar_p = zfit.Parameter("DDstar_p", ztf.constant(DDstar_phase), floating = False) + +Dbar_s.set_value(0.0) +DDstar_s.set_value(0.0) + + +# ## Tau parameters + +# In[10]: + + +tau_m = zfit.Parameter("tau_m", ztf.constant(pdg['tau_M']), floating = False) +Ctt = zfit.Parameter("Ctt", ztf.constant(0.0), lower_limit=-0.5, upper_limit=0.5) + + +# ## Setup pdf + +# In[11]: + + total_f = total_pdf(obs=obs, jpsi_mass = jpsi_m, jpsi_scale = jpsi_s, jpsi_phase = jpsi_p, jpsi_width = jpsi_w, psi2s_mass = psi2s_m, psi2s_scale = psi2s_s, psi2s_phase = psi2s_p, psi2s_width = psi2s_w, p3770_mass = p3770_m, p3770_scale = p3770_s, p3770_phase = p3770_p, p3770_width = p3770_w, @@ -499,8 +571,12 @@ p4415_mass = p4415_m, p4415_scale = p4415_s, p4415_phase = p4415_p, p4415_width = p4415_w, rho_mass = rho_m, rho_scale = rho_s, rho_phase = rho_p, rho_width = rho_w, omega_mass = omega_m, omega_scale = omega_s, omega_phase = omega_p, omega_width = omega_w, - phi_mass = phi_m, phi_scale = phi_s, phi_phase = phi_p, phi_width = phi_w) - + phi_mass = phi_m, phi_scale = phi_s, phi_phase = phi_p, phi_width = phi_w, + DDstar_mass = DDstar_m, DDstar_scale = DDstar_s, DDstar_phase = DDstar_p, + Dbar_mass = Dbar_m, Dbar_scale = Dbar_s, Dbar_phase = Dbar_p, + tau_mass = tau_m, C_tt = Ctt) + + # print(total_pdf.obs) # print(calcs_test) @@ -511,7 +587,7 @@ # ## Test if graphs actually work and compute values -# In[10]: +# In[12]: # def total_test_tf(xq): @@ -551,7 +627,7 @@ fT_y = zfit.run(formfactor(test_q,"T")) -# In[11]: +# In[16]: plt.clf() @@ -569,7 +645,7 @@ # print(jpsi_width) -# In[12]: +# In[14]: @@ -582,7 +658,7 @@ # plt.semilogy(test_q, calcs_test, label = 'pdf') -# In[13]: +# In[15]: # 0.213/(0.00133+0.213+0.015) @@ -590,7 +666,7 @@ # ## Adjust scaling of different parts -# In[14]: +# In[ ]: total_f.update_integration_options(draws_per_dim=200000, mc_sampler=None) @@ -600,7 +676,7 @@ # # print(pdg["jpsi_BR"]/pdg["NR_BR"], inte_fl*pdg["psi2s_auc"]/pdg["NR_auc"]) -# In[15]: +# In[ ]: # # print("jpsi:", inte_fl) @@ -643,169 +719,10 @@ # # print("Time taken: {}".format(display_time(int(time.time() - _)))) -# ## Tensorflow scaling - -# In[16]: - - -# def scaling_func(x): - -# funcs = resonance(x, _mass = ztf.constant(jpsi_mass), scale = ztf.constant(jpsi_scale), phase = ztf.constant(jpsi_phase), width = ztf.constant(jpsi_width)) + resonance(x, _mass = ztf.constant(psi2s_mass), scale = ztf.constant(psi2s_scale), phase = ztf.constant(psi2s_phase), width = ztf.constant(psi2s_width)) - -# vec_f = vec(x, funcs) - -# axiv_nr = axiv_nonres(x) - -# tot = vec_f + axiv_nr - -# return tot - - -# def s_func(x): - -# q = ztf.constant(x) - -# return zfit.run(scaling_func(q)) - - -# print(integrate.quad(s_func, x_min, x_max, limit = 50)) - - -# In[17]: - - -# factor_jpsi = pdg["NR_auc"]*pdg["jpsi_BR"]/(pdg["NR_BR"]*pdg["jpsi_auc"]) -# factor_jpsi = pdg["NR_auc"]*pdg["jpsi_BR"]/(pdg["NR_BR"]*inte_fl) -# print(np.sqrt(factor_jpsi)*jpsi_scale) -# print(np.sqrt(factor_jpsi)) -# # print(psi2s_scale) -# factor_psi2s = pdg["NR_auc"]*pdg["psi2s_BR"]/(pdg["NR_BR"]*pdg["psi2s_auc"]) -# factor_psi2s = pdg["NR_auc"]*pdg["psi2s_BR"]/(pdg["NR_BR"]*inte_fl) -# print(np.sqrt(factor_psi2s)*psi2s_scale) -# print(np.sqrt(factor_psi2s)) - - -# In[18]: - - -# def _t_f(xq): - -# def jpsi_res(q): -# return resonance(q, jpsi_m, jpsi_s, jpsi_p, jpsi_w) - -# def psi2s_res(q): -# return resonance(q, psi2s_m, psi2s_s, psi2s_p, psi2s_w) - -# funcs = psi2s_res(xq) + jpsi_res(xq) - -# vec_f = vec(xq, funcs) - -# axiv_nr = axiv_nonres(xq) - -# tot = vec_f + axiv_nr - -# return tot - -# def t_f(x): -# _ = np.array(x) -# probs = zfit.run(_t_f(_)) -# return probs - - -# In[19]: - - -# print(36000*(1+ pdg["jpsi_BR"]/pdg["NR_BR"] + pdg["psi2s_BR"]/pdg["NR_BR"])) - - -# In[20]: - - -# start = time.time() - -# result, err = integrate.quad(lambda x: t_f(x), x_min, x_max, limit = 5) -# print(result, "{0:.2f} %".format(err/result)) -# print("Time:", time.time()-start) - - # # Sampling -# ## One sample -# ! total_f.sample() always returns the same set ! - -# In[21]: - - -# nevents = int(pdg["number_of_decays"]) -# event_stack = 5000 - -# calls = int(nevents/event_stack + 1) - -# total_samp = [] - -# start = time.time() - -# samp = total_f.sample(n=event_stack) -# s = samp.unstack_x() - -# for call in range(calls): - -# sam = zfit.run(s) -# clear_output(wait=True) - -# # if call != 0: -# # print(np.sum(_last_sam-sam)) - -# # _last_sam = sam - -# c = call + 1 -# print("{0}/{1}".format(c, calls)) -# print("Time taken: {}".format(display_time(int(time.time() - start)))) -# print("Projected time left: {}".format(display_time(int((time.time() - start)/c*(calls-c))))) - -# with open("data/zfit_toys/toy_1/{}.pkl".format(call), "wb") as f: -# pkl.dump(sam, f, pkl.HIGHEST_PROTOCOL) - - -# In[22]: - - -# print("Time to generate full toy: {} s".format(int(time.time()-start))) - -# total_samp = [] - -# for call in range(calls): -# with open(r"data/zfit_toys/toy_1/{}.pkl".format(call), "rb") as input_file: -# sam = pkl.load(input_file) -# total_samp = np.append(total_samp, sam) - -# total_samp = total_samp.astype('float64') - -# data2 = zfit.data.Data.from_numpy(array=total_samp[:int(nevents)], obs=obs) - -# print(total_samp[:nevents].shape) - - -# In[23]: - - -# bins = int((x_max-x_min)/7) - -# # calcs = zfit.run(total_test_tf(samp)) - -# plt.hist(total_samp[:event_stack], bins = bins, range = (x_min,x_max)) - -# # plt.plot(sam, calcs, '.') -# # plt.plot(test_q, calcs_test) -# plt.ylim(0, 20) -# # plt.xlim(3000, 3750) - -# plt.savefig('test2.png') -# 1-(0.21+0.62) - - # ## Toys -# In[24]: +# In[ ]: @@ -886,30 +803,30 @@ return sample, thresholds, weights, weights_max, n_to_produce -# In[25]: +# In[ ]: total_f._sample_and_weights = UniformSampleAndWeights -# In[26]: +# In[ ]: # 0.00133/(0.00133+0.213+0.015)*(x_max-3750)/(x_max-x_min) -# In[27]: +# In[ ]: # zfit.settings.set_verbosity(10) -# In[28]: +# In[ ]: # zfit.run.numeric_checks = False -nr_of_toys = 1 +nr_of_toys = 1000 nevents = int(pdg["number_of_decays"]) nevents = pdg["number_of_decays"] event_stack = 1000000 @@ -947,7 +864,7 @@ pkl.dump(sam, f, pkl.HIGHEST_PROTOCOL) -# In[29]: +# In[ ]: # with open(r"data/zfit_toys/toy_0/0.pkl", "rb") as input_file: @@ -961,7 +878,7 @@ # print(np.sum(sam-sam2)) -# In[30]: +# In[ ]: print("Time to generate full toy: {} s".format(int(time.time()-start))) @@ -982,7 +899,7 @@ print(total_samp[:nevents].shape) -# In[31]: +# In[ ]: plt.clf() @@ -1006,7 +923,7 @@ plt.savefig('test2.png') -# In[32]: +# In[ ]: # sampler = total_f.create_sampler(n=nevents) @@ -1026,13 +943,13 @@ # minimum = minimizer.minimize(nll) -# In[33]: +# In[ ]: # jpsi_width -# In[34]: +# In[ ]: # plt.hist(sample, weights=1 / prob(sample)) @@ -1040,7 +957,7 @@ # # Fitting -# In[35]: +# In[ ]: start = time.time() @@ -1067,7 +984,7 @@ print("Hesse errors:", result.hesse()) -# In[36]: +# In[ ]: print("Time taken for fitting: {}".format(display_time(int(time.time()-start)))) @@ -1078,7 +995,7 @@ res_y = zfit.run(jpsi_res(test_q)) -# In[60]: +# In[ ]: plt.clf() @@ -1093,7 +1010,7 @@ # print(jpsi_width) -# In[38]: +# In[ ]: # _tot = 4.37e-7+6.02e-5+4.97e-6 @@ -1104,7 +1021,7 @@ # print(_probs) -# In[39]: +# In[ ]: # dtype = 'float64' @@ -1122,51 +1039,45 @@ # # print(zfit.run(mixture.prob(mixture.sample((10, 1))))) -# In[40]: +# In[ ]: # print((zfit.run(jpsi_p)%(2*np.pi))/np.pi) # print((zfit.run(psi2s_p)%(2*np.pi))/np.pi) -# In[41]: +# In[ ]: -def jpsi_res(q): - return resonance(q, _mass = jpsi_mass, scale = jpsi_scale, - phase = jpsi_phase, width = jpsi_width) +# def jpsi_res(q): +# return resonance(q, _mass = jpsi_mass, scale = jpsi_scale, +# phase = jpsi_phase, width = jpsi_width) -def psi2s_res(q): - return resonance(q, _mass = psi2s_mass, scale = psi2s_scale, - phase = psi2s_phase, width = psi2s_width) - -def p3770_res(q): - return resonance(q, _mass = p3770_mass, scale = p3770_scale, - phase = p3770_phase, width = p3770_width) - -def p4040_res(q): - return resonance(q, _mass = p4040_mass, scale = p4040_scale, - phase = p4040_phase, width = p4040_width) - -def p4160_res(q): - return resonance(q, _mass = p4160_mass, scale = p4160_scale, - phase = p4160_phase, width = p4160_width) - -def p4415_res(q): - return resonance(q, _mass = p4415_mass, scale = p4415_scale, - phase = p4415_phase, width = p4415_width) +# def psi2s_res(q): +# return resonance(q, _mass = psi2s_mass, scale = psi2s_scale, +# phase = psi2s_phase, width = psi2s_width) + +# def p3770_res(q): +# return resonance(q, _mass = p3770_mass, scale = p3770_scale, +# phase = p3770_phase, width = p3770_width) + +# def p4040_res(q): +# return resonance(q, _mass = p4040_mass, scale = p4040_scale, +# phase = p4040_phase, width = p4040_width) + +# def p4160_res(q): +# return resonance(q, _mass = p4160_mass, scale = p4160_scale, +# phase = p4160_phase, width = p4160_width) + +# def p4415_res(q): +# return resonance(q, _mass = p4415_mass, scale = p4415_scale, +# phase = p4415_phase, width = p4415_width) -# In[59]: +# In[ ]: -_0 = jpsi_scale*np.cos(jpsi_phase)*jpsi_width/jpsi_mass**3 + psi2s_scale*np.cos(psi2s_phase)*psi2s_width/psi2s_mass**3 -_1 = p3770_scale*np.cos(p3770_phase)*p3770_width/p3770_mass**3 + p4040_scale*np.cos(p4040_phase)*p4040_width/p4040_mass**3 -_2 = p4160_scale*np.cos(p4160_phase)*p4160_width/p4160_mass**3 + p4415_scale*np.cos(p4415_phase)*p4415_width/p4415_mass**3 -R = (0.1/(1300**2) - ((_0 + _1 + _2))) - -R*10*2010**2 # In[ ]: diff --git a/test.png b/test.png index e8ee0db..575db76 100644 --- a/test.png +++ b/test.png Binary files differ diff --git a/test2.png b/test2.png index dd24ab3..7f0d402 100644 --- a/test2.png +++ b/test2.png Binary files differ diff --git a/test3.png b/test3.png index 3381cd4..a72d1f7 100644 --- a/test3.png +++ b/test3.png Binary files differ