{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "c6805951",
   "metadata": {},
   "source": [
    "# Multidimensional differential equations\n",
    "\n",
    "- Börge Göbel "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "921259c3",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt \n",
    "from scipy import integrate"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "29eb17ec",
   "metadata": {},
   "source": [
    "## Heat equation"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a0e04d81",
   "metadata": {},
   "source": [
    "We solve the differential equations:\n",
    "\n",
    "\\\\( \n",
    "\\frac{\\partial}{\\partial t} u(\\vec{r},t) = a \\Delta u(\\vec{r},t)\n",
    "\\\\)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b461fb52",
   "metadata": {},
   "source": [
    "## In one dimension:\n",
    "\n",
    "\\\\( \n",
    "\\frac{\\partial}{\\partial t} u(x,t) = a \\frac{\\partial^2}{\\partial x^2} u(x,t)\n",
    "\\\\)\n",
    "\n",
    "Here, \\\\( u(x,t) \\\\) is an array \\\\(\\{ u_1, u_2, \\dots, u_n \\} \\\\) that has different values for different times. It describes the temperature. We can discretize the spatial derivative according to:\n",
    "\n",
    "\\\\( \n",
    "\\frac{\\partial^2}{\\partial x^2} u_j = \\frac{u_{j+1}-2u_{j}+u_{j-1}}{(\\Delta x)^2}\n",
    "\\\\)\n",
    "\n",
    "For the edges we use double-forward or double-backward methods:\n",
    "\n",
    "\\\\( \n",
    "\\frac{\\partial^2}{\\partial x^2} u_1 = \\frac{u_{1}-2u_{2}+u_{3}}{(\\Delta x)^2}\\\\\n",
    "\\frac{\\partial^2}{\\partial x^2} u_n = \\frac{u_{n}-2u_{n-1}+u_{n-2}}{(\\Delta x)^2}\n",
    "\\\\)\n",
    "\n",
    "We can rewrite the heat equation as a set of coupled equation:\n",
    "\n",
    "\\begin{align}\n",
    "\\frac{\\partial}{\\partial t}u_1&=\\frac{a}{(\\Delta x)^2}\\left(u_1-2u_2+u_3\\right)\\\\\n",
    "\\frac{\\partial}{\\partial t}u_2&=\\frac{a}{(\\Delta x)^2}\\left(u_1-2u_2+u_3\\right)\\\\\n",
    "\\frac{\\partial}{\\partial t}u_3&=\\frac{a}{(\\Delta x)^2}\\left(u_2-2u_3+u_4\\right)\\\\ \n",
    "\\vdots\\\\ \n",
    "\\frac{\\partial}{\\partial t}u_j&=\\frac{a}{(\\Delta x)^2}\\left(u_{j-1}-2u_j+u_{j+1}\\right)\\\\ \n",
    "\\vdots\\\\\n",
    "\\frac{\\partial}{\\partial t}u_{n-2}&=\\frac{a}{(\\Delta x)^2}\\left(u_{n-3}-2u_{n-2}+u_{n-1}\\right)\\\\\n",
    "\\frac{\\partial}{\\partial t}u_{n-1}&=\\frac{a}{(\\Delta x)^2}\\left(u_{n-2}-2u_{n-1}+u_{n}\\right)\\\\\n",
    "\\frac{\\partial}{\\partial t}u_n&=\\frac{a}{(\\Delta x)^2}\\left(u_{n-2}-2u_{n-1}+u_{n}\\right)\n",
    "\\end{align}\n",
    "\n",
    "Alternatively, we can also keep the temperature at the edges constant and consider these to be (part of) the constant heat bath:\n",
    "\n",
    "\\\\( u_1 = \\mathrm{const.}\\\\ u_n = \\mathrm{const.} \\\\)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "7da90f3f",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Testing\n",
    "u = np.array([1,4,9,16,25])\n",
    "unew = np.zeros(5)\n",
    "unew[1:-1] = u[2:] -2*u[1:-1] + u[:-2]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "0298047e",
   "metadata": {},
   "outputs": [],
   "source": [
    "a = 1.0\n",
    "dx = 1.0\n",
    "\n",
    "def f_1D(t,u):\n",
    "    unew = np.zeros(len(u))\n",
    "    unew[1:-1] = u[2:] -2*u[1:-1] + u[:-2]\n",
    "    return unew * a/dx**2"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "79665d62",
   "metadata": {},
   "outputs": [],
   "source": [
    "tStart = 0\n",
    "tEnd = 5000\n",
    "\n",
    "size = 100\n",
    "u0 = np.zeros([size])\n",
    "u0[0] = 1\n",
    "\n",
    "solution = integrate.solve_ivp(f_1D, [tStart, tEnd], u0, method='RK45', t_eval=np.linspace(tStart,tEnd,10001))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "98f02657",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1e49758a730>]"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "index = size//2\n",
    "\n",
    "plt.xlabel('Time t')\n",
    "plt.ylabel('Temperature for cell #'+str(index))\n",
    "\n",
    "plt.plot(solution.t, solution.y[index])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "8aaa6260",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.colorbar.Colorbar at 0x1e49c9773d0>"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "t_list, x_list = np.meshgrid(solution.t, np.arange(size))\n",
    "\n",
    "plt.xlabel('Time t')\n",
    "plt.ylabel('Coordinate')\n",
    "\n",
    "plt.contourf(t_list, x_list, solution.y)\n",
    "plt.colorbar()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1a95b3a3",
   "metadata": {},
   "source": [
    "### Other starting parameters"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "642d0941",
   "metadata": {},
   "outputs": [],
   "source": [
    "tStart = 0\n",
    "tEnd = 2000\n",
    "\n",
    "size = 100\n",
    "u0 = np.zeros([size])\n",
    "u0[0] = 1\n",
    "u0[-1] = 1\n",
    "\n",
    "solution = integrate.solve_ivp(f_1D, [tStart, tEnd], u0, method='RK45', t_eval=np.linspace(tStart,tEnd,10001))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "2c23e51f",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[<matplotlib.lines.Line2D at 0x1e49b7c99d0>]"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "index = size//2\n",
    "\n",
    "plt.xlabel('Time t')\n",
    "plt.ylabel('Temperature for cell #'+str(index))\n",
    "\n",
    "plt.plot(solution.t, solution.y[index])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "757731fe",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.colorbar.Colorbar at 0x1e49b8a54f0>"
      ]
     },
     "execution_count": 27,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "t_list, x_list = np.meshgrid(solution.t, np.arange(size))\n",
    "\n",
    "plt.xlabel('Time t')\n",
    "plt.ylabel('Coordinate')\n",
    "\n",
    "plt.contourf(t_list, x_list, solution.y)\n",
    "plt.colorbar()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "81519a01",
   "metadata": {},
   "source": [
    "## In 2 dimensions"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "46cfdb1d",
   "metadata": {},
   "source": [
    "\\\\( \n",
    "\\frac{\\partial}{\\partial t} u(\\vec{r},t) = a \\left(\\frac{\\partial^2}{\\partial x^2} u(\\vec{r},t) + \\frac{\\partial^2}{\\partial y^2} u(\\vec{r},t)\\right)\n",
    "\\\\)\n",
    "\n",
    "Here, \\\\( u(\\vec{r},t) \\\\) is an array \\\\(\\{ u_{1,1}, u_{1,2}, \\dots, u_{n,n} \\} \\\\) that has different values for different times. We can discretize the spatial derivative according to:\n",
    "\n",
    "\\\\( \n",
    "\\frac{\\partial^2}{\\partial x^2} u_{i,j} + \\frac{\\partial^2}{\\partial y^2} u_{i,j} = \\frac{u_{i+1,j}-2u_{i,j}+u_{i-1,j}}{(\\Delta x)^2}+\\frac{u_{i,j+1}-2u_{i,j}+u_{i,j-1}}{(\\Delta y)^2}\n",
    "\\\\)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "1864095f",
   "metadata": {},
   "outputs": [],
   "source": [
    "a = 1.0\n",
    "dx = 1.0\n",
    "dy = 1.0\n",
    "\n",
    "def f_2D(t,u):\n",
    "    unew = np.zeros( [len(u),len(u)] )\n",
    "    unew[1:-1,1:-1] = (u[2:,1:-1] -2*u[1:-1,1:-1] + u[:-2,1:-1]) * a/dx**2 + (u[1:-1,2:] -2*u[1:-1,1:-1] + u[1:-1,:-2]) * a/dy**2\n",
    "    return unew \n",
    "\n",
    "sizex = 100\n",
    "sizey = 100\n",
    "\n",
    "def f_2D_flattened(t,u):\n",
    "    u = u.reshape(sizex, sizey)\n",
    "    unew = np.zeros( [sizex,sizey] )\n",
    "    unew[1:-1,1:-1] = (u[2:,1:-1] -2*u[1:-1,1:-1] + u[:-2,1:-1]) * a/dx**2 + (u[1:-1,2:] -2*u[1:-1,1:-1] + u[1:-1,:-2]) * a/dy**2\n",
    "    return unew.flatten()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "id": "40da810b",
   "metadata": {},
   "outputs": [],
   "source": [
    "tStart = 0\n",
    "tEnd = 10000\n",
    "\n",
    "u0 = np.zeros([sizex,sizey])\n",
    "u0[0,:] = 1\n",
    "u0[:,0] = 1\n",
    "\n",
    "solution = integrate.solve_ivp(f_2D_flattened, [tStart, tEnd], u0.flatten(), method='RK45', t_eval=np.linspace(tStart,tEnd,10001))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "81b45625",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x_list, y_list = np.meshgrid(np.arange(sizex), np.arange(sizey))\n",
    "\n",
    "\n",
    "tIndex = 0\n",
    "plt.xlabel('Coordinate x')\n",
    "plt.ylabel('Coordinate y')\n",
    "plt.contourf(x_list, y_list, solution.y[:,tIndex].reshape(sizex, sizey))\n",
    "plt.colorbar()\n",
    "plt.title('t = '+str(solution.t[tIndex]))\n",
    "plt.show()\n",
    "\n",
    "tIndex = tEnd//200\n",
    "plt.xlabel('Coordinate x')\n",
    "plt.ylabel('Coordinate y')\n",
    "plt.contourf(x_list, y_list, solution.y[:,tIndex].reshape(sizex, sizey))\n",
    "plt.colorbar()\n",
    "plt.title('t = '+str(solution.t[tIndex]))\n",
    "plt.show()\n",
    "\n",
    "tIndex = tEnd\n",
    "plt.xlabel('Coordinate x')\n",
    "plt.ylabel('Coordinate y')\n",
    "plt.contourf(x_list, y_list, solution.y[:,tIndex].reshape(sizex, sizey))\n",
    "plt.colorbar()\n",
    "plt.title('t = '+str(solution.t[tIndex]))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "afb7489d",
   "metadata": {},
   "source": [
    "### Different starting conditions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "id": "1873586e",
   "metadata": {},
   "outputs": [],
   "source": [
    "tStart = 0\n",
    "tEnd = 10000\n",
    "\n",
    "u0 = np.zeros([sizex,sizey])\n",
    "u0[0,:] = 1\n",
    "u0[:,0] = 1\n",
    "\n",
    "u0[-1,:] = 1\n",
    "u0[:,-1] = 1\n",
    "\n",
    "solution = integrate.solve_ivp(f_2D_flattened, [tStart, tEnd], u0.flatten(), method='RK45', t_eval=np.linspace(tStart,tEnd,10001))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "id": "fd0ddac4",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "x_list, y_list = np.meshgrid(np.arange(sizex), np.arange(sizey))\n",
    "\n",
    "\n",
    "tIndex = 0\n",
    "plt.xlabel('Coordinate x')\n",
    "plt.ylabel('Coordinate y')\n",
    "plt.contourf(x_list, y_list, solution.y[:,tIndex].reshape(sizex, sizey))\n",
    "plt.colorbar()\n",
    "plt.title('t = '+str(solution.t[tIndex]))\n",
    "plt.show()\n",
    "\n",
    "tIndex = tEnd//200\n",
    "plt.xlabel('Coordinate x')\n",
    "plt.ylabel('Coordinate y')\n",
    "plt.contourf(x_list, y_list, solution.y[:,tIndex].reshape(sizex, sizey))\n",
    "plt.colorbar()\n",
    "plt.title('t = '+str(solution.t[tIndex]))\n",
    "plt.show()\n",
    "\n",
    "tIndex = tEnd\n",
    "plt.xlabel('Coordinate x')\n",
    "plt.ylabel('Coordinate y')\n",
    "plt.contourf(x_list, y_list, solution.y[:,tIndex].reshape(sizex, sizey))\n",
    "plt.colorbar()\n",
    "plt.title('t = '+str(solution.t[tIndex]))\n",
    "plt.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
