{ "metadata": { "name": "", "signature": "sha256:dea796e185be329c2d2c8d88359abc64455d543ef2e0332c678fd7f9781de831" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Wave equation\n", "==\n", "\n", "We are seeking the solution for equation\n", "$$\\frac{\\partial^2 u}{\\partial t^2} = c^2\\frac{\\partial^2 u}{\\partial x^2}$$" ] }, { "cell_type": "code", "collapsed": false, "input": [ "%matplotlib inline\n", "from pylab import *\n", "from numpy import *" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 1 }, { "cell_type": "code", "collapsed": false, "input": [ "#dimensions of the computational domain:\n", "maxx = 10.\n", "maxt = 40.\n", "\n", "#wave velocity\n", "v = 0.5" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 2 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We discretize the simulation domain:\n", "$$t_n = t_0 + n\\Delta t$$\n", "$$x_i = x_0 + i\\Delta x$$\n", "and seek for the numerical approximation $U^n_i$ to the actual solution $U(t_n, x_i)$ on the grid points" ] }, { "cell_type": "code", "collapsed": false, "input": [ "#discretization parameters\n", "nx = 100 # number of unknown grid points in spatial direction\n", "CFL = 1.0 # Courant Friedrichs Lewy (CFL) condition v*dt/dx\n", "\n", "def wave_init(maxx, maxt, v, nx, CFL):\n", " #choose time step according to CFL condition\n", " dx = maxx/(nx+1)\n", " dt = CFL*dx/v\n", " nt = int(maxt/dt)+1\n", " \n", " #define array for storing the solution\n", " U = zeros((nt, nx+2))\n", " \n", " x = arange(nx+2)*dx\n", " t = arange(nt)*dt\n", " return U, dx, dt, x, t" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 3 }, { "cell_type": "markdown", "metadata": {}, "source": [ "We may replace the derivatives in wave equation by second differences in the following way\n", "$$\\frac{U^{n-1}_i - 2U^n_i + U^{n+1}_i}{\\Delta t^2} = c^2\\frac{U^n_{i-1} - 2U^n_i + U^n_{i+1}}{\\Delta x^2}$$\n", "to obtain explicit equation for propagation in time:\n", "$$U^{n+1}_i = 2U^n_i - U^{n-1}_i + \\frac{c^2\\Delta t^2}{\\Delta x^2} (U^n_{i-1} - 2U^n_i + U^n_{i+1}).$$\n", "We define a function for propagating the solution over the array U, assuming that U[0:2, xint] is the initial condition and U[:,[0,-1]] are the boundary conditions." ] }, { "cell_type": "code", "collapsed": false, "input": [ "def wave_solve(U, dx, dt, nx, nt):\n", " xint = arange(1, nx+1)\n", " for it in range(1,nt-1):\n", " d2x = U[it, xint-1] - 2*U[it, xint] + U[it, xint+1]\n", " U[it+1,xint] = 2*U[it,xint] - U[it-1, xint] + d2x/dx**2*dt**2*v**2" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 4 }, { "cell_type": "code", "collapsed": false, "input": [ "U, dx, dt, x, t = wave_init(maxx, maxt, v, nx, CFL*1)" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 5 }, { "cell_type": "code", "collapsed": false, "input": [ "# use gaussian pulse as initial condition\n", "U0 = exp(-(x-maxx/3)**2/2.)*2\n", "U[0,:] = U0\n", "U[1,:] = U0" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 6 }, { "cell_type": "code", "collapsed": false, "input": [ "wave_solve(U, dx, dt, nx, len(t))" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 7 }, { "cell_type": "code", "collapsed": false, "input": [ "pcolormesh(U, rasterized=True, vmin=-2, vmax=2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 8, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 8 }, { "cell_type": "markdown", "metadata": {}, "source": [ "What happens if the CFL condition is violated by a small relative amount, say $10^{-3}$?" ] }, { "cell_type": "code", "collapsed": false, "input": [ "CFL = 1.001\n", "U, dx, dt, x, t = wave_init(maxx, maxt, v, nx, CFL)\n", "U0 = exp(-(x-maxx/3)**2/2.)*2\n", "U[0,:] = U0\n", "U[1,:] = U0\n", "wave_solve(U, dx, dt, nx, len(t))\n", "pcolormesh(U, rasterized=True, vmin=-2, vmax=2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 9, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 9 }, { "cell_type": "markdown", "metadata": {}, "source": [ "The unstable high-frequency oscillations quickly grow larger that the solution of interest " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We may also animate the solution. Let us first recalculate with correct CFL condition:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "CFL = 1.\n", "U, dx, dt, x, t = wave_init(maxx, maxt, v, nx, CFL)\n", "U0 = exp(-(x-maxx/3)**2/2.)*2\n", "U[0,:] = U0\n", "U[1,:] = U0\n", "wave_solve(U, dx, dt, nx, len(t))\n", "pcolormesh(U, rasterized=True, vmin=-2, vmax=2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 10, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 10 }, { "cell_type": "code", "collapsed": false, "input": [ "#let's take every 10th frame into animation\n", "Un = U[:-10:10,:]" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 11 }, { "cell_type": "code", "collapsed": false, "input": [ "from matplotlib import animation\n", "from JSAnimation.IPython_display import display_animation" ], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 13 }, { "cell_type": "code", "collapsed": false, "input": [ "fig = figure();\n", "ax = axes(xlim=(0,maxx),ylim=(-3,3));\n", "line, = ax.plot([],[],lw=2);\n", "\n", "def animate(data):\n", " line.set_data(x,data)\n", " return line,\n", "\n", "anim = animation.FuncAnimation(fig, animate, frames=Un, interval=100)\n", "display_animation(anim, default_mode='loop')" ], "language": "python", "metadata": {}, "outputs": [ { "html": [ "\n", "\n", "\n", "
\n", " \n", "
\n", " \n", "
\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
\n", " Once \n", " Loop \n", " Reflect \n", "
\n", "
\n", "\n", "\n", "\n" ], "metadata": {}, "output_type": "pyout", "prompt_number": 14, "text": [ "" ] } ], "prompt_number": 14 }, { "cell_type": "markdown", "metadata": {}, "source": [ "Implementing time-dependent boundary conditions is simple. For example, vibrating with one end of the string looks like:" ] }, { "cell_type": "code", "collapsed": false, "input": [ "maxt=60.\n", "U, dx, dt, x, t = wave_init(maxx, maxt, v, nx, CFL)\n", "U[0,:] = 0\n", "U[1,:] = 0\n", "U[:,0] = sin(t*0.5)\n", "wave_solve(U, dx, dt, nx, len(t))\n", "pcolormesh(U, rasterized=True, vmin=-2, vmax=2)" ], "language": "python", "metadata": {}, "outputs": [ { "metadata": {}, "output_type": "pyout", "prompt_number": 15, "text": [ "" ] }, { "metadata": {}, "output_type": "display_data", "png": "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\n", "text": [ "" ] } ], "prompt_number": 15 }, { "cell_type": "code", "collapsed": false, "input": [], "language": "python", "metadata": {}, "outputs": [], "prompt_number": 15 } ], "metadata": {} } ] }