diff --git a/notebooks/figures/fig_jacobi.svg b/notebooks/figures/fig_jacobi.svg
index c6f5f31..56a338f 100644
--- a/notebooks/figures/fig_jacobi.svg
+++ b/notebooks/figures/fig_jacobi.svg
@@ -20,6 +20,21 @@
inkscape:export-ydpi="200">
+
+
+
+
+
+
Data used
+ id="flowPara23855-8">Data used
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ u
+ u_new
+
+ CPU 2 local
+ remote
+
+ remote
+
+
+
diff --git a/notebooks/jacobi_method.ipynb b/notebooks/jacobi_method.ipynb
index 2ea4792..25417d5 100644
--- a/notebooks/jacobi_method.ipynb
+++ b/notebooks/jacobi_method.ipynb
@@ -35,7 +35,7 @@
},
{
"cell_type": "markdown",
- "id": "4b9d1d46",
+ "id": "48fd29d9",
"metadata": {},
"source": [
"
\n",
@@ -319,7 +319,7 @@
}
},
"cell_type": "markdown",
- "id": "6dfedc09",
+ "id": "8e156e29",
"metadata": {},
"source": [
"
\n",
@@ -329,7 +329,7 @@
},
{
"cell_type": "markdown",
- "id": "cc412ea0",
+ "id": "513f1f7e",
"metadata": {},
"source": [
"### Efficiency\n",
@@ -495,7 +495,9 @@
"id": "f6ea16f5",
"metadata": {},
"source": [
- "### 1D block partition\n"
+ "### 1D block partition\n",
+ "\n",
+ "The following figure shows the portion of vector `u_new` is updated at each iteration by a particular process (CPU 3) left picture, and which entries of `u` are needed to update this data, right picture. We use analogous figures for the other partitions below.\n"
]
},
{
@@ -609,7 +611,7 @@
},
{
"cell_type": "markdown",
- "id": "6838b947",
+ "id": "f6b54b7b",
"metadata": {},
"source": [
"## Implementation\n",
@@ -983,26 +985,6 @@
"end"
]
},
- {
- "cell_type": "markdown",
- "id": "ebb650d0",
- "metadata": {},
- "source": [
- "### Exercise 2\n",
- "\n",
- "Compute the complexity of the communication and computation of the three data partition strategies (1d block partition, 2d block partition, and 2d cyclic partition) when computing a single iteration of the Jacobi method in 2D. Assume that the grid is of size $N \\times N$ and the number of processes $P$ is a perfect square number, i.e. $\\sqrt{P}$ is an integer. Hint: For the complexity analysis, you can ignore the effect of the boundary conditions.\n"
- ]
- },
- {
- "cell_type": "code",
- "execution_count": null,
- "id": "7b3d7cb3",
- "metadata": {},
- "outputs": [],
- "source": [
- "# TODO"
- ]
- },
{
"cell_type": "markdown",
"id": "6d3430ad",