{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Well near impermeable wall" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "import matplotlib.pyplot as plt\n", "import numpy as np\n", "\n", "import timflow.transient as tft\n", "\n", "plt.rcParams[\"font.size\"] = 8.0\n", "plt.rcParams[\"figure.figsize\"] = (8, 3)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "ml = tft.ModelMaq(kaq=10, z=[10, 0], Saq=1e-4, tmin=0.01, tmax=10)\n", "w = tft.Well(ml, 0, 20, rw=0.3, tsandQ=[(0, 100)], layers=0)\n", "ml.solve()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "t = np.logspace(-2, 1, 100)\n", "h = w.headinside(t)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "plt.plot(t, h[0])\n", "plt.grid()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "ml.plots.contour(win=[-30, 50, -10, 30], ngr=40, t=1, decimals=2);" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "ml2 = tft.ModelMaq(kaq=10, z=[10, 0], Saq=1e-4, tmin=0.01, tmax=10)\n", "w2 = tft.Well(ml2, 0, 20, rw=0.3, tsandQ=[(0, 100)])\n", "wall = tft.LeakyWallString(\n", " ml2, xy=[(-20, 0), (20, 0), (40, 20)], res=\"imp\", order=5, layers=0\n", ")\n", "ml2.solve()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "h2 = w2.headinside(t)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "plt.plot(t, h[0], label=\"no wall\")\n", "plt.plot(t, h2[0], label=\"wall\")\n", "plt.legend()\n", "plt.grid()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [ "ml2.contour(win=[-30, 50, -10, 30], ngr=40, t=1, decimals=2);" ] } ], "metadata": { "language_info": { "name": "python" } }, "nbformat": 4, "nbformat_minor": 4 }