{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Approximating solutions" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import numpy\n", "w = var('w')\n", "palette = [(215/255, 0/255, 132/255), (255/255, 1/255, 73/255), (255/255, 121/255, 1/255), (255/255, 210/255, 0/255)]\n", "cool_palette = [(0/255, 150/255, 173/255), (0/255, 200/255, 146/255)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Computing a special function with Picard iteration\n", "\n", "The function $G(w) = w e^w$ is invertible on the domain $[0, \\infty)$." ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "image/png": "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H/7wB8ycORMPPfQQAKB///6oqanBf//3f+PJJ5+E0ajLK0gKK1aswIMPPogPP/zQLWc97VFVVYW9e/fiwIEDePTRRwFc/D0WQsBsNmPjxo0YN26clN50+RsSGBiIwYMHY9OmTYr6pk2bFAtfqr300kv44x//iPXr1+PGG2+U1k/v3r1x6NAh5OTkNP8zffp0jB07Fjk5OejatavXegGAESNGID8/vzmcAeDo0aNISEjoUCi2t5/a2lqX8DOZTBBCQGjjCVipMjMz8cADD+CDDz6Qet01PDzc5fd4zpw5SE9PR05ODoYNGyatN83clfa2rKwsERAQIJYuXSq+/fZb8fjjj4vQ0FBRUFAghBBi5syZirueL774oggMDBQrV64URUVFzf9UVVVJ6UfNnXel29pLYWGhCAsLE48++qjIzc0Vn376qYiLixN/+tOfpPSzaNEiYbFYRGZmpjh+/LjYuHGjSE1NFffcc49b+rmSqqoqceDAAXHgwAEBQLz66qviwIED4uTJk9KOuXDhQjFz5szm73/wwQfCbDaLN954Q/F7XFFRIaUfNa3cldZtMAohxBtvvCGSk5NFYGCguOGGG8TWrVubPxszZoyYNWtW83ZycrIA4PLPokWLpPSj5s5gbE8vu3btEsOGDRNBQUGiR48e4rnnnhN2u11KP01NTeLpp58WqampIjg4WHTt2lU88sgjory83G39tGTLli0t/o5c7f83Tx9z1qxZYsyYMc3fHzNmjEd7bGs/aloJRs2srkNEpBW6vMZIRHQ1DEYiIhUGIxGRCoORiEiFwUhEpMJgJCJSYTASEakwGImIVBiMREQqDEYiIhUGIxGRCoORiEjl/wNqzCzilFtjPgAAAABJRU5ErkJggg==\n", "text/plain": [ "Graphics object consisting of 1 graphics primitive" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "g_graph = plot(w*exp(w), (w, 0, log(4)), thickness = 3, color = cool_palette[1])\n", "g_labels = ['$w$', '$G(w)$']\n", "show(g_graph, axes_labels = g_labels, aspect_ratio = 1/2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Its inverse $W(t)$ is called the \"Lambert $W$ function.\" We can draw a graph of $W$ by graphing $G$ and then reflecting to switch the input and the output. If we have a way to calculate $e^w$, we can use this idea to calculate $W$. But could we calculate $W$ directly?" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "Graphics object consisting of 1 graphics primitive" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "w_graph = parametric_plot((w*exp(w), w), (w, 0, log(4)), thickness = 3, color = cool_palette[1])\n", "w_labels = ['$t$', '$W(t)$']\n", "show(w_graph, aspect_ratio = 2, axes_labels = w_labels)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Even if we don't know how to calculate $e^w$, there's one value of $G$ we can calculate: we know $G(0) = 0$. Flipping inputs and outputs, we learn that $W(0) = 0$ too.\n", "\n", "We know from the definition of an inverse that $G(W(t)) = t$. In other words $W(t) e^{W(t)} = t$. Differentiating both sides with respect to $t$, and using the definition of $W$, you can deduce that\n", "$$W'(t) = \\frac{1}{t + e^{W(t)}}.$$\n", "Now we have a differential equation for $W$, and the initial value information $W(0) = 0$, so we can approximate $W$ using Picard iteration.\n", "\n", "Let's try it, approximating the integral with a 120-step Riemann sum. By the fourth iteration after our constant initial guess, the graph of the approximation is so close to the flipped graph of $G$ that the difference is hard to see." ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "Graphics object consisting of 5 graphics primitives" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "t_grid = numpy.linspace(0, N(log(4)*4), 121)\n", "w_appx = [numpy.empty(len(t_grid))]\n", "w_appx[0].fill(0)\n", "for _ in range(4):\n", " next_appx = numpy.cumsum([t_grid[1] / (t_val + exp(w_val)) for (t_val, w_val) in zip(t_grid, w_appx[-1][0:-1])])\n", " w_appx.append(numpy.insert(next_appx, 0, 0))\n", "dashed_w_graph = parametric_plot((w*exp(w), w), (w, 0, log(4)), thickness = 3, color = cool_palette[1], linestyle = 'dashed')\n", "picard_iterates = sum([scatter_plot(zip(t_grid, w_appx[k+1]), edgecolor = palette[k], facecolor = palette[k], markersize = 3, zorder = 0) for k in range(4)])\n", "show(dashed_w_graph + picard_iterates, aspect_ratio = 2, axes_labels = w_labels)" ] } ], "metadata": { "kernelspec": { "display_name": "SageMath 8.1", "language": "", "name": "sagemath" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.15rc1" } }, "nbformat": 4, "nbformat_minor": 2 }