{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "# Numerical calculations for \"Cosmology ...\"\n", "\n", "This SageMath notebook performs numerical calculations \n", "for the note *Calculations for \"Cosmology ...\"* \n", "which supplements \n", "the paper *Cosmology from the two-dimensional renormalization group acting as the Ricci flow*.\n", "\n", "This notebook contains the calculations related to the fixed point equation of the Ricci flow.\n", "\n", "Notation and section numbering are as in the note *Calculations ...*.\n", "\n", "The unit of time is the Hubble time $t_H=H_0^{-1}$ estimated to be $t_H =4.55\\times 10^{17}\\mathrm{s}=1.44 \\times 10^{10}\\mathrm{y}$.\n", "\n", "The present deceleration parameter is estimated to be $q_0 = -0.60$." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "t_{H}= 4.55e17 's' = 1.44e10 'y'" ] }, "execution_count": 1, "metadata": { }, "output_type": "execute_result" }, { "data": { "text/html": [ "" ], "text/plain": [ "q_0= -0.60" ] }, "execution_count": 1, "metadata": { }, "output_type": "execute_result" } ], "source": [ "%display latex\n", "LE = lambda latex_string: LatexExpr(latex_string)\n", "#\n", "t_H_in_secs = 4.55e17\n", "t_H_in_years = 1.44e10\n", "q_0 = -0.6\n", "pretty_print(LE(\"t_{H}=\"),t_H_in_secs.n(digits=3),\"s\",\n", " LE(\"=\"),t_H_in_years.n(digits=3),\"y\")\n", "pretty_print(LE(\"q_0=\"),q_0.n(digits=2))" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "## 7 The cosmological parameters" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### 7.1 Formulas for $H$, $q$, $w$, and $\\Omega$" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [ ], "source": [ "T = var('T')\n", "#\n", "incomplete_beta(p,q,x)=(x^p/p)*hypergeometric([p,1-q],[p+1],x)\n", "beta(p,q)=incomplete_beta(p,q,1)\n", "#\n", "sqrt3 = sqrt(3)\n", "nu = sqrt3/2 -1/2\n", "#\n", "f_T(T) = ((cos(T))^2+nu)/(sin(T)*cos(T))\n", "v_T(T) = (-sqrt3/2)/(sin(T)*cos(T))\n", "a_dimless(T) = (sin(T))^(1+nu)*(cos(T))^(-nu)\n", "t_dimless(T) = (1/2)*incomplete_beta(1+nu/2,1/2-nu/2,(sin(T))^2)\n", "#\n", "H_dimless(T) = f_T(T)/a_dimless(T)\n", "q(T) = (sqrt3*(cos(T))^2-nu)/((cos(T))^2+nu)^2\n", "w(T) = 1+(4/3)*(f_T(T)*v_T(T))/(f_T(T)^2+1)\n", "Omega(T) = 1 + 1/f_T(T)^2\n" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "consistency check of the formula for q(T)" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkwAAAGDCAYAAADZMk8/AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4zLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvIxREBQAAIABJREFUeJzsvXl4FFXa/n93OiuEBMIatrCGHUREQGTUwQ0Vx23cxRf1O7/ROIM6+s444qgziq/6uo6g4wLu4Cug4uCgogIugGxRlH1fJBAI6SQEsnX//ng8qerqqq6uXtKd5P5cV65Od9dyqrrqnLvu5znnuHw+nw+EEEIIIcSSpHgXgBBCCCEk0aFgIoQQQgixgYKJEEIIIcQGCiZCCCGEEBsomAghhBBCbKBgIoQQQgixgYKJEEIIIcQGCiZCCCGEEBsomAghhBBCbKBgIoQQQgixgYKJEEIIIcQGCiYbfD4fysrKwCn3CCGEkOYLBZMN5eXlyM7ORnl5ebyLQgghhJA4QcFECCGEEGIDBRMhhBBCiA0UTIQQQgghNlAwEUIIIYTYQMFkwfTp0zFw4ECMHDky3kUhhBBCSJxx+dhfPihlZWXIzs6Gx+NBVlZWvItDCCGENDo2bAD27wfOOSfeJQmf5HgXgBBCCCFNmxkzgK+/BgoL412S8GFIjhBCCCExpaYG8HrjXYrIoGAihBBCSEypqwMaewIQBRMhhBBCYkptLQUTIYQQQkhQKJgIIYQQQmyoq4t3CSKHgokQQgghMYUOEyGEEEKIDUz6JoQQQgixgQ5TE4ZToxBCCCHRoSkIJk6NYgOnRiGEEEIi47zzgJ07gS1b4l2S8KHDRAghhJCY0hQcJgomQgghhMSU2tp4lyByKJgIIYQQElPYS44QQgghxAaG5AghhBBCbKDDRAghhBBiAx0mQgghhBAbKJgIIYQQQmzg5LuEEEIIITbQYWrCcGoUQgghJDo0BcHEqVFs4NQohBBCSGTk5QFeL7B3b7xLEj50mAghhBASU5qCw0TBRAghhJCYwnGYCCGEEEJs4FxyhBBCCCE2MCRHCCGEEGJDswzJLVu2DBMnTkTnzp3hcrnwwQcfBF1+yZIlcLlcAX+bNm0Ku9CKKVOmYMSIEUhLS8NJJ50U8P2uXbtM971o0aKI900IIYSQ0GgKDlOy0xWOHTuGYcOGYfLkybj88stDXm/z5s1+3fLbt2/vdNcB+Hw+3HTTTVi5ciV++OEHy+UWL16MQYMG1b/PycmJeN+EEEIICY1mKZgmTJiACRMmON5Rhw4d0Lp1a8vvZ82ahccffxw7d+5Ejx498Mc//hG33XZb0G0+99xzAIDi4uKggqlt27bo1KmT4zITQgghJHKaZUguXIYPH47c3FyMHz8eX375pd93L7/8Mu677z488sgj2LhxI6ZNm4b7778fr7/+elT2ffHFF6NDhw4YO3Ys5s6dG3TZqqoqlJWV+f0RQgghJDy8XhFLFEw25Obm4qWXXsK8efMwf/589OvXD+PHj8eyZcvql/nHP/6BJ598Epdddhl69uyJyy67DHfeeSf+9a9/RbTvzMxMPPXUU5g7dy4+/vhjjB8/HldddRXeeusty3UeffRRZGdn1/9169YtojIQQgghzZmmMPEuEOHUKC6XC++//z4uueQSR+tNnDgRLpcLCxYsQHFxMTp06ICMjAwkJWn6rba2FtnZ2Th48CAmTJiAr776CgCQl5eHn376yW97Dz74ID744AMUFhba7vsPf/gDli5dahnCq6qqQlVVVf37srIydOvWjVOjEEIIIWFw/DjQogXQti1w+HC8SxM+jnOYosHo0aPrXR6v1wtAwnKjRo3yW87tdgMAXnnlFRw/fhwAkJKSEvG+X3nlFcvv09LSkJaWFtE+CCGEECKoQSsbe0guLoJp3bp1yM3NBQB07NgRXbp0wY4dO3DdddeZLt+lS5eY7JsQQgghsUWF5JqdYKqoqMC2bdvq3+/cuROFhYXIyclB9+7dce+992L//v144403AADPPPMMevTogUGDBqG6uhpvvfUW5s2bh3nz5tVv48EHH8Qf//hHZGVlYcKECaiqqsLq1atx9OhR3HXXXZZl2bZtGyoqKlBUVITjx4/Xh+QGDhyI1NRUvP7660hJScHw4cORlJSEjz76CM899xwee+wxp4dNCCGEkDBotg7T6tWrcdZZZ9W/V4LmxhtvxGuvvYYDBw5gz5499d9XV1fj7rvvxv79+5GRkYFBgwZh4cKFuOCCC+qXueWWW9CiRQs88cQT+O///m+0bNkSQ4YMwR133BG0LLfccguWLl1a/3748OEAUD80AQA8/PDD2L17N9xuN/Lz8zFz5kxcf/31Tg+bEEIIIWHQVART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x3u070R1mKIdknOa9N2sBdODDz4Il8vl99epU6eItnngwAFce+216NevH5KSknDHHXeYLldaWoqCggLk5uYiPT0dAwYMwMcffxzRvgkhhDRO9I5JPB0mny9xhxWIRS+5puIwNcjAlYMGDcLixYvr37vd7oi2V1VVhfbt2+O+++7D008/bbpMdXU1zjnnHHTo0AFz585F165dsXfvXrRq1SqifRNCCGmcJEpIzjghrfo/kQRTWprzkJzZMTgNyWVkJMZ5MKNBBFNycrKlq1RdXY2pU6fi7bffRmlpKQYPHozHHnsMZ555puX2evTogWeffRYAMHPmTNNlZs6ciZKSEnz77bdI+eWqzMvLi+xACCGENFoSRTApQZCIDpMKyWVkxCYkZ0VjcJgaJIdp69at6Ny5M3r27Imrr74aO3bsqP9u8uTJ+OabbzBnzhz88MMP+O1vf4vzzz8fW7dujWifCxYswJgxY1BQUICOHTti8ODBmDZtGur0fqMJVVVVKCsr8/sjhBDS+EkUwaTEQSI7TNEUTE56yTVrwTRq1Ci88cYb+OSTT/Dyyy+jqKgIp512Go4cOYLt27dj9uzZeO+99zBu3Dj07t0bd999N04//XTMmjUrov3u2LEDc+fORV1dHT7++GNMnToVTz75JB555JGg6z366KPIzs6u/+vWrVtE5SCEEJIYJIpgMnOYEq2XXEZG9HrJNZWk75iH5CZMmFD//5AhQzBmzBj07t0br7/+Orp16wafz4f8/Hy/daqqqtC2bVsAQGZmZv3n119/PV588cWQ9uv1etGhQwe89NJLcLvdGDFiBH7++Wc88cQT+Nvf/ma53r333ou77rqr/n1ZWRlFEyGENAESJek7kR2mSENyx4/7f8ek7who2bIlhgwZgq1bt6JLly5wu91Ys2ZNQCK4EkqFhYX1n2VlZYW8n9zcXKSkpPhtd8CAASgqKkJ1dTVSU1NN10tLS0NaWpqTQyKEENIISGSHKVEEk9OQnNcrQlQlfTflcZgaXDBVVVVh48aNGDduHIYPH466ujocOnQI48aNM12+T58+Ye1n7NixeOedd+D1epGUJJHHLVu2IDc311IsEUIIabokimBKZIfJaUjuxAlteY7DFCF33303li5dip07d2LlypW44oorUFZWhhtvvBH5+fm47rrrMGnSJMyfPx87d+7EqlWr8Nhj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VTCp8kbDYWrRQsoi89zV4ehRWbFVK7kJfD5XfQ6TzxfoCkXqMIUTklP71R+rfpYDp3i9XrhcLrz99ts49dRTccEFF+Cpp57Ca6+95shlomBqhrRr1w5utzvAYTh06FCAE2Hkf//3fzFt2jR8+umnGKq6CSU42lg92QAycdppe3HihDyFq1ww1YCOHy839JdfAtu3b8euXbswceJEJCcnIzk5GW+88QYWLFiA5ORkbN++HfPnS/JuourGcH7r3Nxc5Ofnw62rNQcMGICioiJUB5vEMEooh2bHDmehqtRUCcf8+CNQWpqEpKQtfsetFw9m+vf+++/HDTfcgFtuuQVDhgzBpZdeimnTpuHRRx+FVyXphUifPlrvroYUTO3by7X4/fcNF44DNMHUurUzkWuHmWBavVocSCvBJOGko34OkxqGxSwHLylpG1atKkW/fmdh0KC2SE+HZUjODnWN6UPu+vMRai85dczRGIfJ5dLGYiovL0ddnezkb3+bhuTkZFRVVaGqShTa4sVfBoTk0tLCF0zhjsME+AsmIDKXKTc3F126dEG2buC2AQMGwOfzYZ+DsWQomJohqampGDFiBD5Tc4j8wmeffYbTjN3jdDzxxBP4xz/+gUWLFuGUYF1FEoyWLeVGrahIBpCJ48eXY+hQCcupaVFGjZJWWs239fnnQP/+/bF+/XoUFhbW/1188cU466yzUFhYiJqabli3ThLNE5VwfuuxY8di27ZtfiJhy5YtyM3NRWqw+WuiREaGNmq108a3UycZuBQABg50+x23Pv/EzGGqrKxEkiFJy+12w+fzwWdWywehd28J1wINK5hcLm1MNavxgmJBbq40rNEMxwHmOUxffilO0ciRwdY8grIyLZHRSjDNnj0bX375IlJSBuL48Zz641AhqHAdJr1gUoImJ8c+z9EomOwcppSU4FOtKJTwbNUqC4A83U2a9DsUFhYiJSUVaWly3Q8ffmpASC41NXohOTvBZMyd0hNJHtPYsWPx888/o0K3kS1btiApKQldHQxSR8HUTLnrrrvwyiuvYObMmdi4cSPuvPNO7NmzB7///e8BAJMmTfLrTv34449j6tSpmDlzJnr06IGioiIUFRX5XYCJSlKSVJQyim8Svv56EXr0WIcFC+rw+OPS++/226Ur8qRJk5CZuRyLFwPp6ekYPHiw31/r1q3RqlUrDB48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fTwejzxO/dcEACBLOb0ll/ar5O7evasbN26ou7tbknTp0iVJUklJiUpKSrRixQotWbJEa9eu1d69ezV37lx1d3ersbFRa9euVVVVVdjjDg4Oqr29ffhxV1eXWltbNWnSpOGAtX37dq1evVpPPvmkbt++rU8//VR9fX3auHFjun9tAAAQwOktubQPfZ84cUJer1c1NTWSpNraWnm9Xn3++eeSJJfLpcbGRi1btkybNm1SRUWFamtr1dnZqenTp0c8bnd3t7xer7xer27duqX6+np5vV5t3rx5eJ+ff/5Zb7zxhubOnavXXntNeXl5OnfunMrKytL7SwMAgCBOrzC5fD6fL9Mnkc36+vo0efJk9fb2qrCwMNOnAwCAI334ofT3v0t/+YsUwzVhWSfjywoAAIDc5/QKE4EJAACMGgITAABABAx9AwAA2KAlBwAAYIMKU45qaGjQvHnzVF1dnelTAQDA8agw5aitW7eqvb1d58+fz/SpAADgeAQmAAAAG7TkAAAAYkSFCQAAIAIqTAAAADaYYQIAALBBhQkAAMAGFSYAAAAbBCYAAIAY0ZIDAACIgApTjuLWKAAApA5D3zmKW6MAAJA6VJgAAABsEJgAAABs0JIDAACwQYUJAAAgRlSYAAAAIqDCBAAAYIPABAAAYIOhbwAAABtUmAAAAGxQYcpR3BoFAIDUo8KUY7g1CgAAqUOFCQAAwIbLJY0bJ7ndmT6TxBCYAABA2hUWSsXFmT6LxBGYAABA2m3YIF24kOmzSByBCQAApJ3HIz35ZKbPInEEJgAAABsEJgAAABsEJgAAABsEJgAAABsEJgAAABsEJgAAABsun8/ny/RJZDOfz6d79+6poKBALrOuOwAAGFMITAAAADZoyQEAANggMAEAANggMAEAANggMAEAANggMAEAANggMAEAANggMAEAANggMAEAANggMAEAANggMAEAANj4P4cnplznjr4tAAAAAElFTkSuQmCC", "text/plain": [ "Graphics object consisting of 1 graphics primitive" ] }, "execution_count": 3, "metadata": { }, "output_type": "execute_result" } ], "source": [ "qder(T) = -f_T^(-2)*f_T.derivative(T)\n", "plot(q-qder,(T,0,pi/2))" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### 7.2 Estimate $t_0$, $t_0'$, and $z$" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "\\nu= 0.366025 \\qquad\\sqrt{3}= 1.73205 \\qquad1/\\sqrt{3}= 0.577350" ] }, "execution_count": 4, "metadata": { }, "output_type": "execute_result" }, { "data": { "text/html": [ "" ], "text/plain": [ "T_0= 1.2 = 0.77 \\,\\frac{\\pi}{2} \\qquad t_0'= 1.1 \\,t_H \\qquad t_0= 0.73 \\,t_H" ] }, "execution_count": 4, "metadata": { }, "output_type": "execute_result" }, { "data": { "text/html": [ "" ], "text/plain": [ "a_0= 1.5 \\,t_H \\qquad w_0= -0.61 \\qquad \\Omega_0= 1.5" ] }, "execution_count": 4, "metadata": { }, "output_type": "execute_result" }, { "data": { "text/html": [ "" ], "text/plain": [ "t_{\\max}= 1.6 \\,t_H" ] }, "execution_count": 4, "metadata": { }, "output_type": "execute_result" }, { "data": { "text/html": [ "" ], "text/plain": [ "'at ' \\;\\;q=0: \\quad z= 0.18 \\qquad T= 1.09314 = 0.695913 \\frac{\\pi}{2}" ] }, "execution_count": 4, "metadata": { }, "output_type": "execute_result" }, { "data": { "text/html": [ "" ], "text/plain": [ "'at ' \\;\\;T=\\frac12 T_0:\\quad z= 1.7" ] }, "execution_count": 4, "metadata": { }, "output_type": "execute_result" } ], "source": [ "Tx = var('Tx')\n", "T_0 = N(find_root(q(Tx)==q_0,0,pi/2))\n", "tprime_0 = H_dimless(T_0) # in units of t_H\n", "#\n", "a(T) = tprime_0*a_dimless(T)\n", "H(T) = H_dimless(T)/tprime_0\n", "t(T) = tprime_0*t_dimless(T)\n", "#\n", "z(T) = a(T_0)/a(T) - 1\n", "#\n", "t_0 = t(T_0)\n", "t_max = t(pi/2)\n", "a_0 = a(T_0)\n", "#\n", "w_0 =w(T_0)\n", "Omega_0 =Omega(T_0)\n", "#\n", "T_qeq0 = pi/2-atan(sqrt(2))/2\n", "z_qeq0 = z(T_qeq0)\n", "z_half_T_0 = z(T_0/2)\n", "#\n", "sig = lambda x: x.n(digits=2)\n", "exact = lambda x: x.n(digits=6)\n", "#\n", "pretty_print(LE(r\"\\nu=\"),exact(nu),LE(r\"\\qquad\\sqrt{3}=\"),exact(sqrt3),\n", " LE(r\"\\qquad1/\\sqrt{3}=\"),exact(1/sqrt3))\n", "#\n", "pretty_print(LE(r\"T_0=\"),sig(T_0),LE(\"=\"),sig(T_0/(pi/2)),LE(r\"\\,\\frac{\\pi}{2}\"),\n", " LE(r\"\\qquad t_0'=\"),sig(tprime_0),LE(r\"\\,t_H\"),\n", " LE(r\"\\qquad t_0=\"),sig(t_0),LE(r\"\\,t_H\"))\n", "pretty_print(LE(r\"a_0=\"),sig(a_0),LE(r\"\\,t_H\"),\n", " LE(r\"\\qquad w_0=\"),sig(w_0),\n", " LE(r\"\\qquad \\Omega_0=\"),sig(Omega_0))\n", "pretty_print(LE(r\"t_{\\max}=\"),sig(t_max),LE(r\"\\,t_H\"))\n", "#\n", "pretty_print(r\"at \", LE(r\"\\;\\;q=0:\"),\n", " LE(\"\\quad z=\"),sig(z_qeq0),\n", " LE(\"\\qquad T=\"),exact(T_qeq0),LE(\"=\"), exact(T_qeq0/(pi/2)), LE(r\"\\frac{\\pi}{2}\"))\n", "pretty_print(\"at \", LE(r\"\\;\\;T=\\frac12 T_0:\\quad z=\"),sig(z_half_T_0))" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### 7.3 The limit $T\\rightarrow 0$" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "" ], "text/plain": [ "\\frac{t'_0}{2+\\nu}= 0.47 \\qquad t'_0\\left(\\frac{2+\\nu}{t'_0}\\right)^{1/\\sqrt{3}}= 1.7 \\qquad\\frac{a_0}{t'_0}\\left(\\frac{2+\\nu}{t'_0}\\right)^{-1/\\sqrt{3}}= 0.86 \\qquad\\left(\\frac{a_0}{t'_0}\\right)^{\\sqrt{3}}\\left(\\frac{2+\\nu}{t'_0}\\right)^{-1}= 0.77 \\qquad\\left(\\frac{a_0}{t'_0}\\right)^{-\\sqrt{3}}\\left(\\frac{1+\\nu}{t'_0}\\right)= 0.75" ] }, "execution_count": 5, "metadata": { }, "output_type": "execute_result" } ], "source": [ "coefftT = (tprime_0/(2+nu))\n", "coeffat = tprime_0 * coefftT^(-1/sqrt3)\n", "coeffzt = a_0/coeffat\n", "coefftz = coeffzt^(sqrt3)\n", "coeffHz = ((1+nu)/(2+nu))/coefftz\n", "#\n", "pretty_print(LE(r\"\\frac{t'_0}{2+\\nu}=\"),sig(coefftT),\n", " LE(r\"\\qquad t'_0\\left(\\frac{2+\\nu}{t'_0}\\right)^{1/\\sqrt{3}}=\"),sig(coeffat),\n", " LE(r\"\\qquad\\frac{a_0}{t'_0}\\left(\\frac{2+\\nu}{t'_0}\\right)^{-1/\\sqrt{3}}=\"),sig(coeffzt),\n", " LE(r\"\\qquad\\left(\\frac{a_0}{t'_0}\\right)^{\\sqrt{3}}\\left(\\frac{2+\\nu}{t'_0}\\right)^{-1}=\"),sig(coefftz),\n", " LE(r\"\\qquad\\left(\\frac{a_0}{t'_0}\\right)^{-\\sqrt{3}}\\left(\\frac{1+\\nu}{t'_0}\\right)=\"),sig(coeffHz),)" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "Calculate and plot the cosmological parameters $H/H_1$, $q$, $w$, $\\Omega$ as functions of $z = a(t_0)/a(t) -1$." ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### 7.5 Table of parameters for selected z values" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[1000, 100, 10, 1.68628376855095, 1, 0.176297241220437, 0]\n" ] } ], "source": [ "#\n", "Tx = var('Tx')\n", "zlist = [1000,100,10,N(z_half_T_0),1,N(z_qeq0),0]\n", "print zlist\n", "z_params={}\n", "for z_val in zlist:\n", " T_val=RR(find_root(z(Tx)==z_val,0,pi/2))\n", " z_params[z_val] = {\"z\": latex(sig(z_val))}\n", " z_params[z_val][\"T\"]= sig(T_val)\n", " z_params[z_val][\"T_normalized\"]= sig(T_val/(pi/2))\n", " z_params[z_val][\"H_normalized\"]=sig(H(T_val)/H(T_0))\n", " z_params[z_val][\"q\"]=sig(sig(q(T_val)))\n", " z_params[z_val][\"w\"]=sig(w(T_val))\n", " z_params[z_val][\"Omega\"]=sig(Omega(T_val))\n", " t_val = sig(t(T_val))\n", " z_params[z_val][\"t_in_t_H\"]= sig(t_val)\n", " z_params[z_val][\"t_in_secs\"]=sig(t_val*t_H_in_secs)\n", " z_params[z_val][\"t_in_years\"]=sig(t_val*t_H_in_years)\n", " z_params[z_val][\"label\"]=\"\"\n", "z_params[N(z_half_T_0)][\"label\"]=r\"$T=\\frac12 T_0$\"\n", "z_params[N(z_qeq0)][\"label\"]=r\"$q=0$\"\n", "z_params[0][\"label\"]=r\"$t=t_0$\"" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "
\n", " | \n", " | \n", " | \n", " | \n", " | \n", " |
\n", " | \n", " | 0.75 | \n", "\n", " | \n", " | \n", " |
\n", " | 1000. | \n", "\n", " | \n", " | \n", " | \n", " |
\n", " | 100. | \n", "\n", " | \n", " | \n", " | \n", " |
\n", " | 10. | \n", "\n", " | \n", " | \n", " | \n", " |
\n", " | 1.7 | \n", "\n", " | \n", " | \n", " | \n", " |
\n", " | 1.0 | \n", "\n", " | \n", " | \n", " | \n", " |
\n", " | 0.18 | \n", "\n", " | \n", " | \n", " | \n", " |
\n", " | 0.00 | \n", "\n", " | \n", " | \n", " | \n", " |