{"nbformat_minor": 0, "metadata": {"signature": "sha256:1295e21047bd11e2f743be049b451a6a9e2314d3aefa38c69ed35dbe63357d65", "name": ""}, "worksheets": [{"cells": [{"source": ["# Jump with Chebyshev Nodes"], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "input": ["import numpy as np\n", "import numpy.linalg as la\n", "import matplotlib.pyplot as pt\n", "import scipy.special as sps"], "cell_type": "code", "outputs": [], "metadata": {}, "prompt_number": 23, "language": "python"}, {"collapsed": false, "input": ["n = 50\n", "\n", "k = np.arange(1, n+1, dtype=np.float64)\n", "\n", "cheb_nodes = np.cos((2*k-1)/(2*n)*np.pi)\n", "pt.plot(cheb_nodes, 0*cheb_nodes, \"o\")"], "cell_type": "code", "outputs": [{"output_type": "pyout", "prompt_number": 32, "metadata": {}, "text": ["[]"]}, {"output_type": "display_data", "text": [""], "png": "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\nXuHiizfx53/+jTZ/4YWneOtbL+Nzn/saL788PbL9wQ++k+uvfxuf/vTvcu+9j89bDpy2bFzt9de/\nDWDivpXoX6ltrNS+zpa683mba7luNc73Pv2T9C1nOcy//ix0LRu87r0+f/Lk9/LVr/5vXnnlFV59\ndeq0/wdLVlUTT8Bbgc8MtG8Dbhuq+XXghoH2YWDjUtbtlhdUwR0F7++mg1374EDf3Pz09M0Dy09v\nb9lyR91113+qLVvuaMugauPGX6yNG98/b9m42i1b7qiHHz5YDz98cKK+qurdv1LbWKl9nS115/M2\n13Ldapzvffon6Rt37Vjq9Wexa9m4a+B35qma5Lo+yUptZfgZ4KMD7Z8FPjJU8yngRwfavw38MPDT\ni61b80KhCj40MNXAz4XmT2+/6U3vGeoft9742p/8yQ/VO99550R9VdW7f6W2sVL7OlvqzudtruW6\n1Tjf+/RP0jfu2rGc689i17KFr4FU1fKv670eH81dsJck/Xazt/v5e8AV3QQweIs0bv709qlT3z1m\nP6ffco2rfeml8bdnS+l7+eXRh36p/Su1jZXa19lSdz5vcy3Xrcb5vlK/L0vtG3ftWM71Z7Fr2fz2\nMeZfKyfTNxSeAzYPtDcDxxep2dTVXLCEdTt7u5//uvv56tDPheZPb09P/7/RuzltvfG1F130KlWj\nM3GxPoALLzzVq3+ltrFS+zpb6s7nba7lutU43/v0T/K7Pu7asZzrz2LXsvntzcy/Vh4cs59FTHJ7\n8frEXKj8CXMf3dcBfwBcPVSzE3ikm98OfH6p63Z13e3Q7QU3dtPBrn1woO/17xRuqvnP4ea3t2y5\nfcwzvX8x4juF0bVbtty+wLPExfuqxj2/XHr/Sm1jpfZ1ttSdz9tcy3Wrcb736Z+kb9y1Y6nXn8Wu\nZeOugd+Zp2qC63pqTMotVZJ3Afcwdx/zYFV9OMnNXeA80NXcB+wAXgRurKovjlt3xPZrenpX99dH\nU7z5zZu48MJpql7m4os38e1vf7PNX3TRq2zffimf//zXeemlqZHtD3zguvbt/0c+cmDecuC0ZeNq\nB//qYJK+lehfqW2s1L7OlrrzeZtruW41zvc+/ZP0LWc5zL/+LHQtG7zuvT4/99dHx3jllZd59dUp\nTp3aT1Ut+9F971B4oyWptT5GSVprkkwUCr7RLElqDAVJUmMoSJIaQ0GS1BgKkqTGUJAkNYaCJKkx\n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\n", "metadata": {}}], "metadata": {}, "prompt_number": 32, "language": "python"}, {"source": ["Build the Vandermonde matrix for orthogonal polynomials with Chebyshev nodes:"], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "input": ["V = np.array([\n", " sps.eval_legendre(i, cheb_nodes)\n", " for i in range(n)\n", "]).T\n", "\n", "la.cond(V)"], "cell_type": "code", "outputs": [{"output_type": "pyout", "prompt_number": 35, "metadata": {}, "text": ["13.082290511123739"]}], "metadata": {}, "prompt_number": 35, "language": "python"}, {"source": ["Notice the condition number of the Vandermonde matrix! How does that compare to our prior ones?"], "metadata": {}, "cell_type": "markdown"}, {"collapsed": false, "input": ["def f(x):\n", " return (x>=0).astype(np.float64)"], "cell_type": "code", "outputs": [], "metadata": {}, "prompt_number": 36, "language": "python"}, {"collapsed": false, "input": ["coeffs = la.solve(V, f(cheb_nodes))"], "cell_type": "code", "outputs": [], "metadata": {}, "prompt_number": 37, "language": "python"}, {"collapsed": false, "input": ["x = np.linspace(-1, 1, 1000)"], "cell_type": "code", "outputs": [], "metadata": {}, "prompt_number": 38, "language": "python"}, {"collapsed": false, "input": ["interpolant = 0\n", "for i in range(n):\n", " interpolant += coeffs[i]*sps.eval_legendre(i, x)"], "cell_type": "code", "outputs": [], "metadata": {}, "prompt_number": 39, "language": "python"}, {"collapsed": false, "input": ["pt.plot(x, interpolant)\n", "pt.plot(x, f(x), \"--\", color=\"gray\")"], "cell_type": "code", "outputs": [{"output_type": "pyout", "prompt_number": 41, "metadata": {}, "text": ["[]"]}, {"output_type": "display_data", "text": [""], "png": "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\nU68rXuAfP348GzZsyLyBIs2QAr80qTVr4Mwz4YQT4I03wkPNzz8fysrSr2v7dpg+PaR1YhUUwFln\nwWuvpV7funX1A7/W6pF8pMAvDXr3XbjwQjj6aPjmN+HTTzOrp6oKrroKbroJRo+GY46BX/8ajj8e\nbr89/fpefjl8iCTKy59/PpSUpF5fvB6/Bh1IPso68JvZYDNbZGZLzOyOBGUeqTk+18z6ZXvOfLdu\nHcyYAStWZPZ69zCUsbgYevcOwXr58szqeuKJ0KO+7jqYMiXUd8YZ8NFH6df12GPhWbY/+1ndPjP4\n7W/DGPwPP0yvvkRpnlpnnglvv516fYly/Jq5K3nH3TP+AtoCS4GewL7AR0BRTJmvAlNrfh4A/G+c\nejwSca+udl+71vdQXe0+e7b79u0e12efuU+Z4r5tW/zjtWbPdn/4YfdZs5KXqzVzpvvIke7/8R/u\nc+em9prqavdnnnEfMMD9iCPcr7nGfcGC1F7r7r55s/s3v+l+0EHugwa5d+7sPny4+8aNqdexa5f7\ndde5n3CC+8SJ4fx33+1+6KHhOqVj/Hj3ww93X7p0z/1/+5t79+7h2qdqzZrQhkTX47e/db/wwtTr\n27LFvWNH99LSxGUqKtwLC0PZVAweXP8aPf7447429k0p0kyEEJ5+7M62x98fWOruK9y9EhgPDI0p\ncwnwp5oPmfeAg8ysXr/qnnvgySfDuOvJk+v2//CH8PWvw4ABYa30aG+8ASefDA88ENIFH38cv5H3\n3w+XXAKLFoWe68iRIe0Qj3uY+n/DDdCnDxx8MFxwAfzyl+FYIrt2wdVXh3Jjx9a17eyz4S9/Sfy6\nWp99FnLShYXh5ucbb4Qe/5FHwumnw9KlDddRWRl6wKWl8N57cOmlUFQUetgvvww33hhy4qmYMwdG\njQqvO/roPY8NHw633BJ+3+rq1Oq7/faQ4ikqin/85pthyRKYNSu1+iZNCqmcjh0Tl9l3X+jfP6Sq\nUqFRPdJaZDWBy8yuAC5y95trtq8DBrj7rVFlXgbuc/d3arZfB+5w939GlfGbbnqFigro0SMEviuv\nBPciRo7sxYIF8POfw8qVMHEiLFy4gDlzljNxYsg9d+8epug/91wRf/lLL/r0qWvjXXfBW28t4Nvf\nXs7++4fgOH06tGkDt95aRJ8+vXaXrayE73wH1q5dwIgRoTyEm4jTpkFBQREPP9yLdu32vA4ffLCA\n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\nYII=\n", "metadata": {}}], "metadata": {}, "prompt_number": 41, "language": "python"}, {"collapsed": false, "input": [], "cell_type": "code", "outputs": [], "metadata": {}, "language": "python"}], "metadata": {}}], "nbformat": 3}