diff --git a/examples/ppm-reconstruction.ipynb b/examples/ppm-reconstruction.ipynb index 016f7e4..bc7169f 100644 --- a/examples/ppm-reconstruction.ipynb +++ b/examples/ppm-reconstruction.ipynb @@ -74,9 +74,9 @@ "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7kAAAB0CAYAAABAOfU3AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAABJ0AAASdAHeZh94AAAEO0lEQVR4nO3cIVIjURSG0ccUoKIjaEMMmgWwGrYBKGAbrIYFsAMK0Qg0KhGNo4Ywo7iZl/7nHNdRt249HvUVHQ6maZoaAAAABPjVewAAAACoInIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIIXIBAACIcdh7AICfuLq6auM4fvt8GIZ2f3/fZSaAOXGPAmniIne9Xn+5qIdhaMfHx11nmjs7rWWftcZxbC8vL73HiOKM1rPTenZaxz26G85oLfusl7zTuMgdx7FdXl5+Pj88PLTVatV1prmz01r2yb5zRuvZaT07Zd85o7Xss17yTn0nFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBgiFwAAgBiHvQeottlsvjyP49htlhTbO7TTn7HPWts/879//vz8/M/nSeCM1rPTenZaxz26G85oLfust73Dv90Fc3QwTdPUe4hKj4+P7ebmpvcYAAAAs3F7e9suLi56j1HC68oAAADEELkAAADEiHtd+f39vT09PX0+L5fLdnR01HWmudtsNu3t7e3z2U5/xj5rXV9ft9fX12+fn5yctLu7uy4zzZ0zWs9O69lpHffobjijteyz3vZOz8/P22Kx6DpTlbh/PLVYLGLeJd8nZ2dnvUeIYp91Tk9P//hLbhiGtlqtusyUwBmtZ6f17LSGe3R3nNFa9lkvdadxf8kFAADg/+U7uQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMQQuQAAAMT4AOydJLLmTtkyAAAAAElFTkSuQmCC", + "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxoAAABhCAYAAABRTdfNAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAAA11JREFUeJzt3MFt4lAYhdEXy+wRHVBLlFpogDJoILVEtMHWDUQW+yA8q8yIxE5AcycPmHOWrH5dWZY+UPIwDMNQAAAAgpraBwAAAPdHaAAAAHFCAwAAiBMaAABAnNAAAADihAYAABAnNAAAgDihAQAAxAkNAAAgTmgAAABxbe0DgJ+32WxK13Unny2Xy7Jer6vdBNwP7xigCA34P3VdV3a7Xe0zgDvlHQOUWwyN1WpV+r4vi8WiPD8/1z7nqthmnF24lGdmmm3G2YVLeWbG2WXaLW5zc6HR9315fX2tfcZVss04u3Apz8w024yzC5fyzIyzy7Rb3MYfgwMAAHFCAwAAiBMaAABAnNAAAADihAYAABAnNAAAgDihAQAAxAkNAAAgTmgAAABxQgMAAIgTGgAAQJzQAAAA4oQGAAAQJzQAAIA4oQEAAMQJDQAAIE5oAAAAcUIDAACIExoAAECc0AAAAOKEBgAAECc0AACAOKEBAADECQ0AACBOaAAAAHFCAwAAiBMaAABAnNAAAADihAYAABAnNAAAgDihAQAAxAkNAAAgTmgAAABxQgMAAIgTGgAAQJzQAAAA4oQGAAAQJzQAAIA4oQEAAMQJDQAAIE5oAAAAcUIDAACIExoAAECc0AAAAOKEBgAAECc0AACAOKEBAADECQ0AACBOaAAAAHFCAwAAiBMaAABAnNAAAADihAYAABAnNAAAgDihAQAAxAkNAAAgTmgAAABxQgMAAIgTGgAAQJzQAAAA4oQGAAAQJzQAAIA4oQEAAMQJDQAAIE5oAAAAcUIDAACIExoAAECc0AAAAOIehmEYah9xiaenp3I4HErTNGWxWNQ+56r0fV+Ox6NtPrDLZ/v9vhwOh5PP2rYt8/m82k3XxDMzzTbj7HLKO+Z7nplxdpn2vk3btuXl5aX2OWe5udB4fHwsx+Ox9hkAAPDjmqYp2+229hlnaWsfcKnZbFbe3t5K0zS+Gflgv9///hbANn/Y5TPfNn7NMzPNNuPscso75nuemXF2mfa+zWw2q33K2W7uFw3g7202m9J13clny+WyrNfrajcB98M7BihCAwAA+Bf81ykAACBOaAAAAHFCAwAAiBMaAABAnNAAAADihAYAABAnNAAAgDihAQAAxAkNAAAg7hfeaCYOKf7hywAAAABJRU5ErkJggg==", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -163,9 +163,9 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, "execution_count": 8, @@ -175,6 +175,7 @@ ], "source": [ "ppm.draw_parabola(gp)\n", + "ppm.draw_average(gp)\n", "ppm.mark_cubic(gp)\n", "gp.show_fig()" ] @@ -206,9 +207,9 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -218,6 +219,7 @@ "source": [ "gp2 = g.draw()\n", "ppm.draw_parabola(gp2)\n", + "ppm.draw_average(gp2)\n", "ppm.mark_cubic(gp2)" ] }, @@ -237,9 +239,9 @@ "outputs": [ { "data": { - "image/png": "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", + "image/png": "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", "text/plain": [ - "
" + "
" ] }, "metadata": {}, @@ -249,6 +251,7 @@ "source": [ "gp3 = g.draw(hi_index=4)\n", "ppm.draw_parabola(gp3)\n", + "ppm.draw_average(gp3)\n", "ppm.mark_cubic(gp3)" ] } @@ -269,7 +272,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.12.4" + "version": "3.13.7" } }, "nbformat": 4, diff --git a/ppmpy/reconstruction.py b/ppmpy/reconstruction.py index 5bc00be..b6ee725 100644 --- a/ppmpy/reconstruction.py +++ b/ppmpy/reconstruction.py @@ -233,6 +233,30 @@ def draw_parabola(self, gp, *, scale=None): a = self.am[n] + xi*(self.ap[n] - self.am[n] + self.a6[n] * (1.0-xi)) gp.ax.plot(x, a/scale, color="C1", lw=2) + def draw_average(self, gp, *, scale=None): + """Draw the horizontal line that represents the cell-average + in each zone on the axes ax. + + Parameters + ---------- + + gp : GridPlot + the grid plot object + scale : float, optional + normalization factor (default is maximum data value) + """ + + ilo = max(gp.lo_index, self.grid.lo-1) + ihi = min(gp.hi_index, self.grid.hi+1) + + if scale is None: + scale = np.max(self.a[ilo:ihi+1]) + + for n in range(ilo, ihi+1): + gp.ax.hlines(y=self.a[n]/scale, + xmin=self.grid.xl[n], xmax=self.grid.xr[n], + linestyle='--', lw=1, color='k') + def mark_cubic(self, gp, *, scale=None): """Mark the location of the initial interface states from the cubic interpolant on the axes ax. @@ -244,7 +268,6 @@ def mark_cubic(self, gp, *, scale=None): the grid plot object scale : float, optional normalization factor (default is maximum data value) - """ ilo = max(gp.lo_index-1, self.grid.lo-2)