{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "Contenido bajo licencia Creative Commons BY 4.0 y código bajo licencia MIT. © Manuela Bastidas Olivares y Nicolás Guarín-Zapata 2024." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Solucion de la ecuación de Poisson usando PINNs" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Descripción del problema" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Queremos resolver la siguiente ecuación\n", "\n", "$$ \\frac{d^2 u(x)}{d^2 x} = f(x)\\quad \\forall x \\in (0, \\pi)$$\n", "\n", "con $u(0) = u(\\pi) = 0$.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Aproximación de la función" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "En este caso tenemos una aproximación\n", "\n", "$$u_\\theta(x) \\approx \\operatorname{NN}(x; \\theta)\\, ,$$\n", "\n", "dondee $\\operatorname{NN}$ es una red neuronal con parámetros\n", "entrenables $\\theta$.\n", "\n", "El residual para este problema estaría dado por\n", "\n", "$$R(x) = \\frac{d^2 u_\\theta(x)}{d^2 x} - f(x) \\, .$$\n", "\n", "Por el caracter no linealidad respecto a los parámetros\n", "$\\theta$ de las redes neuronales evaluar el residual\n", "en una serie de puntos $x_i$ y forzarlo a ser cero\n", "en estos puntos, llevaría a un sistema\n", "no lineal de ecuaciones\n", "\n", "$$R(x_i) = 0 \\quad \\forall x_i\\, .$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Función de pérdida" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Una alternativa a resolver el sistema de ecuaciones anteriormente\n", "planteado es minimizar\n", "\n", "$$\\min_\\theta \\frac{1}{N}\\sum_{i}^N |R(x_i)|^2 \\, .$$\n", "\n", "Que sería exactamente 0 si cada uno de los residuales es igual a 0.\n", "\n", "A este problema le harían falta las condiciones de frontera. Para\n", "esto se propone una función objetivo que las incluya\n", "\n", "$$\\min_\\theta \\frac{1}{N}\\sum_{i}^N R(x_i)^2 + \\lambda_1 u_\\theta(0)^2\n", "+ \\lambda_2 u_\\theta(\\pi)^2\\, .$$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ejemplo computacional" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "# Esto permite tener gráficos interactivos en\n", "# el caso de correrse en Google Colab\n", "if 'google.colab' in str(get_ipython()):\n", " %pip install ipympl\n", " from google.colab import output\n", " output.enable_custom_widget_manager()" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "%matplotlib widget" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import torch\n", "from torch.autograd import grad" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [], "source": [ "if 'google.colab' in str(get_ipython()):\n", " style = \"https://raw.githubusercontent.com/nicoguaro/pinns_mapi-3/main/notebooks/clean.mplstyle\"\n", "else:\n", " style = \"./clean.mplstyle\"\n", "plt.style.use(style)" ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [], "source": [ "class Model(torch.nn.Module):\n", " def __init__(self, neurons, n_layers, activation=torch.tanh):\n", " super(Model, self).__init__()\n", " self.activation = activation\n", " self.layers = torch.nn.ModuleList()\n", " self.layers.append(torch.nn.Linear(1, neurons))\n", " for _ in range(n_layers-2):\n", " self.layers.append(torch.nn.Linear(neurons, neurons))\n", " self.layers.append(torch.nn.Linear(neurons, 1))\n", "\n", " def forward(self, x):\n", " for layer in self.layers[:-1]:\n", " x = self.activation(layer(x))\n", " x = self.layers[-1](x)\n", " return x\n" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "def f_rhs(x):\n", " return -4*torch.sin(2 * x)\n", "\n", "\n", "def residual(u, x, f):\n", " du = grad(u, x, grad_outputs=torch.ones_like(u), create_graph=True)[0]\n", " ddu = grad(du, x, grad_outputs=torch.ones_like(du), create_graph=True)[0]\n", " return ddu - f(x)\n", "\n", "\n", "def loss_fn(u_model, x, f):\n", " u = u_model(x)\n", " res = residual(u, x, f)\n", " res_MSE = torch.mean(res**2)\n", " bc = u_model(torch.tensor([np.pi]))**2 + u_model(torch.tensor([0.]))**2\n", " return res_MSE + bc[0]\n", "\n", "\n", "def train(model, optimizer, loss_fn, f, n_pts, iterations):\n", " losses = []\n", " for iteration in range(iterations): \n", " optimizer.zero_grad()\n", " x = torch.FloatTensor(n_pts,1).uniform_(0, np.pi).requires_grad_(True)\n", " loss = loss_fn(model, x, f)\n", " loss.backward()\n", " optimizer.step()\n", " losses.append(loss.item())\n", " if iteration % 100 == 0:\n", " print(f'Iteration {iteration}, Loss {loss.item()}')\n", " return losses\n", "\n", "\n", "def exact_u(x):\n", " return torch.sin(2 * x)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "251" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "nn = 10\n", "nl = 4\n", "model = Model(neurons=nn, n_layers=nl)\n", "optimizer = torch.optim.Adam(model.parameters(), lr=1e-3)\n", "\n", "# Número de parámetros\n", "sum(p.numel() for p in model.parameters() if p.requires_grad)" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "n_pts = 1000\n", "iterations = 1000" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Iteration 0, Loss 7.980610370635986\n", "Iteration 100, Loss 5.786739349365234\n", "Iteration 200, Loss 1.7077887058258057\n", "Iteration 300, Loss 1.131252408027649\n", "Iteration 400, Loss 0.1608763039112091\n", "Iteration 500, Loss 0.003429063130170107\n", "Iteration 600, Loss 0.0006879867287352681\n", "Iteration 700, Loss 0.00047126287245191634\n", "Iteration 800, Loss 0.00043680204544216394\n", "Iteration 900, Loss 0.0004027598479297012\n" ] } ], "source": [ "losses = train(model, optimizer, loss_fn, f_rhs, n_pts, iterations)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "xlist = np.linspace(0, np.pi, n_pts)\n", "xlist_torch = torch.tensor(xlist, dtype=torch.float32, requires_grad=True).view(-1, 1)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [], "source": [ "u_ap = model(xlist_torch)\n", "u_ex = exact_u(xlist_torch)" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'u(x)')" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "df1ef6165b334ae5b02df2ec614afea3", "version_major": 2, "version_minor": 0 }, "image/png": "iVBORw0KGgoAAAANSUhEUgAAAlgAAAGQCAYAAAByNR6YAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAABnBElEQVR4nO3dd1hTZxsG8PskBMIMIDIcFVu3ONEqWmutiqOuLlEraj9r3bPOWlu1dbbuumcdVdtarVZrta1b3OBedaEWRBTCXsn7/YEGIzjQwMm4f9eV65KT95zceTzAw5szJCGEABERERGZjELuAERERETWhg0WERERkYmxwSIiIiIyMTZYRERERCbGBouIiIjIxNhgEREREZkYGywiIiIiE2ODRURERGRibLCIiIiITIwNFhEREZGJscEiIiIiMjE2WEREREQmxgaLiIiIyMTYYBERERGZGBssIiIiIhNjg0VERERkYmywiIiIiEyMDRYRERGRibHBIiIiIjIxNlhEREREJsYGi4iIiMjE2GARERERmRgbLCIiIiITY4NFREREZGJssIiIiIhMjA0WERERkYmxwSIiIiIyMTZYRERERCbGBouIiIjIxNhgEREREZkYGywiIiIiE2ODRURERGRibLCIiIiITIwNFhEREZGJscEiIiIiMjE2WEREREQmxgaLiIiIyMTYYBERERGZGBssIiIiIhNjg0VERERkYmywiIiIiEyMDRYRERGRibHBIiIiIjIxNlhEREREJsYGi4iIiMjE2GARERERmRgbLCIiIiITY4Mlo6T0dCSlp8sdwyywFsZYjxysRQ7WwhjrkYO1MD9ssIiIiIhMjA0WERERkYmxwSIiIiIyMTZYRERERCbGBouIiIjIxNhgEREREZkYGywiIiIiE2ODRURERGRiFtFg7d27F61bt0axYsUgSRI2bdr0zHX27NmDwMBAqNVqvPrqq1iwYEGuMRs2bEClSpXg4OCASpUqYePGjQWQnoiIiGyNRTRYycnJqFatGr7//vvnGn/t2jW0bNkSDRo0QHh4OD7//HMMGDAAGzZsMIwJCwtDSEgIQkNDcfLkSYSGhqJ9+/Y4fPhwQb0NIiIishGSEELIHSI/JEnCxo0b0a5duyeOGTFiBDZv3ozz588blvXq1QsnT55EWFgYACAkJAQJCQn4448/DGOaN28ODw8PrF27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", "text/html": [ "\n", "
\n", "
\n", " Figure\n", "
\n", " \n", "
\n", " " ], "text/plain": [ "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "plt.plot(xlist, u_ap.detach().numpy())\n", "plt.plot(xlist, u_ex.detach().numpy(), \".\", markevery=50)\n", "plt.legend(['Aproximación', 'Exacta'])\n", "plt.xlabel(\"x\")\n", "plt.ylabel(\"u(x)\")" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "7a51435ac68c4c9ea26e526a6fef87ef", "version_major": 2, "version_minor": 0 }, "image/png": "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KTExUWlpaZo4caIKCgoC3sObbrpJ06dPV2pqqi655BJJ0tKlS9WlSxfFxcVpyJAh2rFjR8B2a3vv7r//fqWlpSkpKUlTpkxRZWVlwPLPPvtMl1xyiVJTU5WcnKxBgwbp888/P+l7ByDM1XKvwqgePWwoBMcjYDUQ0zTlKy8/6cP84XGq9YJ5hPpDoc8++6wSEhK0Zs0aPfjgg7rnnnuU/cNHfH0+n0aOHKnVq1frn//8pzZu3Kj7779fzhPcvHTJkiW65ZZb9Pvf/15fffWVfvvb3+rXv/61li9fHrDen//8Z11xxRX64osvNGrUKF111VUqLCw8YY2TJ0/Wjh079OGHH+qVV17RnDlzlJ+f719umqZ++tOfau/evVq6dKnWrVunPn366OKLLz7pdiXpD3/4g37/+99r/fr1GjBggMaMGaMDBw5IkvLy8jRo0CBlZmZq7dq1evfdd7Vv3z5dccUVNd5Dl8ulVatW6amnntLOnTv1s5/9TKNGjVJOTo6uvfZa3X777Set46WXXtJdd92l++67T2vXrlV6errmzJkTsE5JSYkmTZqklStX6pNPPlHnzp01atQolZSUnHTbAMLYMed0tlr2jtpu/1at33vXxoLgZ6JBeMvKzF1t24f84S0rq3ONkyZNMp1Op5mQkOB/jB8/3r9s7NixAevfcsst5qBBg/zzgwYNMi+88MKAdfr162fedtttpmma5rJly0yHw2Fu3ry51tdfsGCBmZyc7J8fMGCAed111wWsc/nll5ujRo3yz0sy//jHP/rnS0tLTcMwzHfeeafW19i8ebMpyfzkk0/8Y5s2bTIlmY888ohpmqb5wQcfmM2aNTMrKysDnnvWWWeZTz31VK3b3b59uynJvP/++/1jVVVVZvv27c0HHnjANE3TvPPOO81hw4YFPG/nzp2mJP97MmjQIDMzMzNgnTvuuMPs1q2b6fP5/GO33XabKcncuXevWVJZWeO969+/vzl16tSA7Zx//vlm7969a63fNE3T4/GYSUlJ5ptvvnnCdRD5SiorzZLjehuNR/nSpeautu3Nkvn/FzBuxe8T1A97sJq4IUOGKCcnx/94/PHHg3p+r169AubT09P9e4dycnLUvn17denSpU7b2rRpky644IKAsQsuuECbNm064WsmJCQoKSkpYI/U8dt0uVzq27evf+ycc84JOLy2bt06lZaWqmXLlkpMTPQ/tm/frm+//fakNffv398/feR1jtS7bt06LV++PGCb55xTfePWY7d7bG1Hav7xj38ccAuLY1/nRN/n8escP5+fn6+pU6eqS5cuSk5OVnJyskpLS5Wbm3vSbQMIX3EjR6rtti1KnHJNwHjrjz6UJEU30CexcWqc5N5AjLg4pW/dfNJ1yn64AGCChRcANII88TkhIUFnn312jXGHw1HjcGNVLTcHjYqKCnx9w5DP55Ok0zoJ+/j7YpmmWWPsZK95vCPfQ2332zrC5/MpPT29xvlTkk55KYTaHHktn8+n0aNH64EHHqixTnp6un86ISGh1pqtNnnyZO3fv1+PPvqozjzzTMXExKh///5yu90N8noAQqO2n/tRnTur3e6dkiR3To72/3R0jXWSbv29Sv7+UIPX11SxB6uBGIYhR3z8SR/GD49TrRfM42RBIhitWrVSXl5ewFhOTk5Q2+jVq5d27dpV58sJdOvWTR9//HHA2OrVq9WtW7egXvf4bXo8Hq1du9Y/tnnzZv/1pCSpT58+2rt3r1wul84+++yAR2pq6km3/8knn/inPR6P1q1b599L1adPH3399dfq2LFjje0eH6qO1b1794DtHv86J/o+T/WclStX6uabb9aoUaPUo0cPxcTEBJxwD6Bxis7MVOrrr6nNus8Cxpv9btoJnxP7x5kNXFXjR8BCrYYOHaq1a9fqueee09atW3XXXXfpq6++CmobgwYN0kUXXaSf//znys7O1vbt2/XOO+/o3XdrPwHzD3/4gxYuXKgnn3xSW7du1cMPP6x///vfuvXWW0/7++jatatGjBih6667TmvWrNG6det07bXXBuxd+8lPfqL+/ftr3LhxWrZsmXbs2KHVq1frj3/8Y0Awq80TTzyhJUuW6JtvvtGNN96ogwcP6pprqnfV33jjjSosLNSVV16pTz/9VN99953ee+89XXPNNfJ6vSfc5tSpU/Xtt99q+vTp2rx5s1544QUtXLjwpHXccssteuaZZ/TMM89oy5Ytuuuuu/T1118HrHP22Wdr0aJF2rRpk9asWaOrrrqKSz0ATURM3yw527SpMZ583701xhJe/Jdirvl1KMpq1AhYqNXw4cN15513asaMGerXr59KSkp09dVXB72dV199Vf369dOVV16p7t27a8aMGScMF+PGjdNjjz2mv/3tb+rR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Qf92jz1EePDgQV199dVq0aKF4uPjNXLkSG3dutW/fOHChWrevLmWLVumbt26KTExUSNGjFBeXl7Aay5YsEDdunVTbGyszjnnHM2ZM8e/zO1266abblJ6erpiY2PVsWNHzZo1y5L3GEBkImABOG2PPfaY+vfvr+uuu055eXnKy8tThw4dlJeXp0GDBikzM1Nr167Vu+++q3379umKK64IeP6zzz4rl8ulVatW6amnnpIkORwOPf744/rqq6/07LPP6sMPP9SMGTP8z8nJydHFF1+sHj166L///a8+/vhjjR49Wl6vt9YaJ0+erLVr1+qNN97Qf//7X5mmqVGjRqmqqsq/Tnl5uf7+979r0aJFWrFihXJzc3Xrrbf6lz/99NOaOXOm7rvvPm3atEl//etfdeedd+rZZ5+VJD3++ON644039NJLL2nz5s365z//qY4dO1r1NgOIRCYABGnSpEnm2LFjTdM0zUGDBpm33HJLwPI777zTHDZsWMDYzp07TUnm5s2b/c/LzMw85Wu99NJLZsuWLf3zV155pXnBBReccP1j69myZYspyVy1apV/eUFBgRkXF2e+9NJLpmma5oIFC0xJ5rZt2/zrPPHEE2ZaWpp/vkOHDuYLL7wQ8Dr33nuv2b9/f9M0TfN//ud/zKFDh5o+n++U3w+ApoFzsABYbt26dVq+fLkSExNrLPv222/VpUsXSVLfvn1rLF++fLn++te/auPGjSouLpbH41FlZaXKysqUkJCgnJwcXX755XWqY9OmTXK5XDr//PP9Yy1btlTXrl21adMm/1h8fLzOOuss/3x6erry8/MlSfv379fOnTs1ZcoUXXfddf51PB6PkpOTJVXvJbvkkkvUtWtXjRgxQpdeeqmGDRtWpxoBNE4ELACW8/l8Gj16tB544IEay9LT0/3TCQkJAcu+//57jRo1SlOnTtW9996rlJQUffzxx5oyZYr/kF5cXFyd6zBP8CFp0zRlGIZ/PioqKmC5YRj+5/p8PknVhwmPDWqS5HQ6JUl9+vTR9u3b9c477+j999/XFVdcoZ/85Cd65ZVX6lwrgMaFgAWgXqKjo2uc/9SnTx+9+uqr6tixo1yuuv+YWbt2rTwejx566CE5HNWniL700ksB6/Tq1UsffPCB/vznP59ye927d5fH49GaNWs0YMAASdKBAwe0ZcsWdevWrU41paWlqV27dvruu+901VVXnXC9Zs2aacKECZowYYLGjx+vESNGqLCwkE81Ak0UJ7kDqJeOHTtqzZo12rFjhwoKCuTz+XTjjTeqsLBQV155pT799FN99913eu+993TNNdec8GR0STrrrLPk8Xj0j3/8Q999950WLVqkJ598MmCdO+64Q5999pluuOEGffHFF/rmm280d+7cgE8oHtG5c2eNHTtW1113nT7++GNt2LBBv/rVr9SuXTuNHTu2zt/j3XffrVmzZumxxx7Tli1b9OWXX2rBggV6+OGHJUmPPPKIXnzxRX3zzTfasmWLXn75ZbVp00bNmzev82sAaFwIWADq5dZbb5XT6VT37t3VqlUr5ebmqm3btlq1apW8Xq+GDx+ujIwM3XLLLUpOTvbvmapNZmamHn74YT3wwAPKyMjQ888/X+NyB126dNF7772nDRs26LzzzlP//v31+uuvn3BP2YIFC5SVlaVLL71U/fv3l2maWrp0aY3Dgidz7bXXav78+Vq4cKF69uypQYMGaeHCherUqZMkKTExUQ888ID69u2rfv36aceOHVq6dOlJv1cAjRtXcgcAALAYf14BAABYjIAFAABgMQIWAACAxf4fg+b+kqfSpAcAAAAASUVORK5CYII=", "text/html": [ "\n", "
\n", "
\n", " Figure\n", "
\n", " \n", "
\n", " " ], "text/plain": [ "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "plt.loglog(losses)\n", "plt.xlabel(\"Iteraciones\")\n", "plt.legend(['Función de pérdida'])" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "25af5b8dafac4e49a1294faa21a6202d", "version_major": 2, "version_minor": 0 }, "image/png": "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7du3T912220qLCxMRUREqHvuuUclJycXPD9ixAjVuHHjgsfXXXedevzxx73W0aVLF9WrV6+Cx3l5eerpp59Wl156qbJYLKpGjRpq6tSpSimlfvnlFwWo1NTUgvbz5s1T9erVUxaLRVWtWlW9+eabXuuvUqWKenHUKPW///1PhYeHq8qVK6spU6acNQdZWVkqIiJCbd++XXXr1k2NGjXK6/kTsXz77beqUaNGymq1qquvvlpt2bKloM1HH32koqKi1MKFC1XdunWV0WhUu3fvVseOHVM9e/ZU0dHRKiQkRHXo0EHt3LlTKaVUSkqKio+PV6+88krBetauXavMZrP64Ycfis1rr169VJcuXdQrr7yiKlSooKKiotTIkSOV0+lUTz31lIqJiVGXXHKJeu/99732jWeeeUbVrFlThYSEqOrVq6sXXnhBORwOr+0cM2aMqlChggoPD1cPPvigevbZZ71ee926dapt27aqXLlyKjIyUrVp00Zt2LDhrPkV+cpEgZWZmak2bdqkNm3apAD11ltvqU2bNql9+/YppZR67rnnVM+ePQva7969W4WGhqonnnhCbd26VU2bNk2ZzWY1b968gja//vqrMhqN6rXXXlPbtm1Tr732mjKZTGrt2rWlt13ywVGgJHLhSk5Wx55+Vh2sWr2g4Eluc73KmDRZuU76oPAlj8ul8lb9qo4OGqwOVrus8HVbX6dyFn57zoWc7BuFylIuPB6Pcmdnl9iUceyYyjh2rNjnznXfcjqdKjw8XA0ePFjlnSavHo9HNWnSRF177bVq/fr1au3atapp06bquuuuK2hzIQVW165dVeXKldWXX36p/vnnH7V06VI1e/ZspVTRAmv9+vXKYDCo0aNHqx07dqiPPvpIhYSEqI8++qhgfVWqVFExsbHqvffeU7t27VJjxoxRBoNBbdu27Yw5mDZtmrryyiuVUkotXLhQVatWzSt/J2KpW7eu+vHHH9WWLVtU586dVbVq1QqKlI8++kiZzWbVqlUr9euvv6rt27errKwsddttt6m6deuqFStWqMTERNW+fXtVo0aNguW+++47ZTab1e+//64yMzNVjRo1vPJWXIEVERGhHnvsMbV9+3Y1bdo0Baj27durV155Re3cuVO99NJLymw2q227dhUs99JLL6lff/1V7dmzR33zzTcqPj5ejR07tuD5OXPmKIvFoj788EO1fft2NWzYMBUREeH12j/99JOaOXOm2rp1q9q6davq06ePio+PVxkZGWfMr8hXJgqsEzv7qdOJN26vXr283vhKKbVs2TLVpEkTZbFYVLVq1dTkyZOLrPeLL75QtWvXVmazWdWpU0fNnz+/FLamUFn64ChpvsyFOztbpY97S/17ec3CnqQ77lS5S3+6qJ6q8+U6dEilvzlO/Ve/YUEchzp0VHnnUMTLvlGoLOXCnZ3t1YNZmpM7O/uc45w3b56KiYlRNptNtWrVSg0dOlRt3ry54Pkff/xRGY1GtX///oJ5f/31lwLUunXrlFLnX2Dt2LFDAWrJkiXFxnRqgdWjRw918803e7V5+umnVb169QoeV6lSRXW/996Cxx6PR1WoUKHYv/cna9WqlZowYYJSKr/gjIuL84rrRCwnij+llDp69KgKCQlRc+bMUUrlF1iASkxMLGizc+dOBahff/21YN6RI0dUSEiImjt3bsG8/v37q1q1aqn77rtPNWjQQOXm5hY8V1yBVbVqVeV2uwvm1a5dW7Vu3brgscvlUmFhYeqjTz457Ta//vrrqlmzZgWPW7Zsqfr16+fVpnnz5l6vfSqXy6UiIiLUwoULT9tGFCoTwzRcf/31qPxi0GuaMWMGADNmzGDZsmVey1x33XVs3LgRu93Onj176NevX5H13n333Wzfvh2Hw8G2bdu48847S2FrREnKXbKUlDbXkznuLVRuLuamTYn7ch7lv5yP7aYbS/UiBmOFCkQOeZL4Nb8S8eQTaGFhOLf8wZE77yb1iSdxHz1aarEIcbK77rqL//77j2+++Yb27duzbNkymjZtWvA3ddu2bVSuXJnKlSsXLFOvXj2io6O9xhc8H4mJiRiNRq677rpzar9t2zauueYar3nXXHMNu3btwu12F8yr37Bhwe+appGQkEBKSspp17tjxw7WrVtH9+7dATCZTHTr1o3p06cXaduyZcuC32NjY6ldu7bX9lssFho1auQVs8lkonnz5gXzypUrV2S5N998E5fLxdy5c/nss8+w2WxnzEX9+vW9zu2Kj4+n4UnbbTQaiY2N5fDhwwXz5s2bx7XXXktCQgLh4eEMHz6c/fv3e8V68vadur2Qf15yv379qFWrFlFRUURFRZGVleW1HnF6AXmSuwg+7iNHSH9xBLlffwOAsUoVop4fiq3zLbpfGWqIiCByyJOE9e5Fxtg3yPnsM3LmfkHuj0uIfnk0oXfcoWt8wne0kBAq7tpRYuvPPj5EQVgxJyFrISHntS6bzcbNN9/MzTffzIsvvshDDz3EiBEj6N2792mvqD7dfACDwVBwtfYJzpOuzg05z/iKe61T1w9gNpu9HmuahsfjOe16p02bhsvl4pKTrkhUSmE2m0lNTSUmJuaMcZ0cU0hIiNfj4uIrblt2797Nf//9h8fjYd++fV5FWnGK28YzbffatWvp3r07o0aNon379kRFRTF79mzGjRt3xtc5Ve/evTl8+DATJkygatWqWK1WWrZsiSMAh8coCWWiB0uIM8n75RdSbmybX1wZDIT3e4QKPy8l5NbOuhdXJzOWK0fM669R/puvMderh0pLI3XAII49NgBPWpre4Qkf0DQNQ2hoiU3a8anY5y5yX69Xrx7Z2dkFv+/fv58DBw4UPL9161bS09OpW7duscuXL1+epKSkgsdut5s///yz4HHDhg3xeDwsX778nONZtWqV17zVq1dTq1YtjEbjOW/XyVwuF5988gnjxo0jMTGxYNq8eTNVq1bls88+82q/du3agt9TU1PZuXMnderUOWPMLpfL65ZrR48eZefOnQV5czgc3HfffXTr1o2XX36ZPn36cOjQoQvantP59ddfqVq1KsOGDePKK6+kZs2a7Nu3z6tN3bp1vbYPKPJ45cqVDBo0iE6dOlG/fn2sVitHjhzxaayBTAosUWYph4P00S9x9P4H8Bw9iqluHcp/+w1Rw1/AcJ7flkuTpVlTyn//HRFPDQGjkdyvvialbTvsv/+ud2giCBw9epQbb7yRTz/9lC1btrBnzx6++OILXn/9dbp06QJA27ZtadSoEffddx8bN25k3bp1PPDAA1x33XVceeWVxa73xhtv5LvvvuO7775j+/bt9O/fn7STvjhUq1aNXr168eCDD/LVV1+xZ88eli1bxty5c4td35AhQ/jpp5946aWX2LlzJx9//DHvvvsuTz311AVv+7fffktqaip9+vShQYMGXtPdd9/NtGnTvNqPHj2an376iT///JPevXsTFxd3xtu01axZky5dutC3b19WrVrF5s2buf/++7nkkksKcjts2DDS09OZOHEizzzzDHXr1qVPnz4XvE3FqVGjBvv372f27Nn8888/TJw4kQULFni1efzxx5k+fTrTp09n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", "text/html": [ "\n", "
\n", "
\n", " Figure\n", "
\n", " \n", "
\n", " " ], "text/plain": [ "Canvas(toolbar=Toolbar(toolitems=[('Home', 'Reset original view', 'home', 'home'), ('Back', 'Back to previous …" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "plt.plot(xlist, u_ap.detach().numpy())\n", "plt.plot(xlist, (u_ap - u_ex).detach().numpy())\n", "plt.plot(xlist, residual(u_ap, xlist_torch, f_rhs).detach().numpy())\n", "plt.xlabel(\"x\")\n", "plt.legend([\"Solución Aproximada\", \"Error\", \"Residual\"])" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "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.12.3" }, "varInspector": { "cols": { "lenName": 16, "lenType": 16, "lenVar": 40 }, "kernels_config": { "python": { "delete_cmd_postfix": "", "delete_cmd_prefix": "del ", "library": "var_list.py", "varRefreshCmd": "print(var_dic_list())" }, "r": { "delete_cmd_postfix": ") ", "delete_cmd_prefix": "rm(", "library": "var_list.r", "varRefreshCmd": "cat(var_dic_list()) " } }, "types_to_exclude": [ "module", "function", "builtin_function_or_method", "instance", "_Feature" ], "window_display": false } }, "nbformat": 4, "nbformat_minor": 4 }