You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: modules/networks/index.qmd
+4-4Lines changed: 4 additions & 4 deletions
Original file line number
Diff line number
Diff line change
@@ -83,7 +83,7 @@ By the end of this session, you should be able to:
83
83
84
84
## Flow of this Session
85
85
86
-
### 1) Fundamentals: graphs in `networkx`
86
+
### Fundamentals: graphs in `networkx`
87
87
88
88
NetworkX is a Python package for the creation, manipulation, and study of the structure, dynamics, and functions of complex networks [@hagberg2008networkx].
89
89
@@ -104,7 +104,7 @@ You will practice:
104
104
105
105
These concepts follow the formal definitions of nodes, links, directed and weighted graphs introduced in the lecture notes.
106
106
107
-
### 2) Connectivity + centrality
107
+
### Connectivity + centrality
108
108
109
109
Next we measure structure:
110
110
@@ -113,7 +113,7 @@ Next we measure structure:
113
113
* clustering coefficient,
114
114
* centrality measures (degree/closeness/betweenness/PageRank) and what they mean.
115
115
116
-
### 3) Graph models (synthetic networks)
116
+
### Graph models (synthetic networks)
117
117
118
118
We generate synthetic networks to compare structure:
Why do we add noise? A perfectly uniform initial condition can hide an instability. Small perturbations reveal whether the system amplifies spatial differences.
151
151
152
-
## Step 4: Build the PDE Right-Hand Side
152
+
## Build the PDE Right-Hand Side
153
153
154
154
Use your Laplacian helper for both $u$ and $v$, then add the reaction terms.
Copy file name to clipboardExpand all lines: modules/pde/gierer-meinhardt-2d.qmd
+6-6Lines changed: 6 additions & 6 deletions
Original file line number
Diff line number
Diff line change
@@ -60,7 +60,7 @@ plt.show()
60
60
plt.close()
61
61
```
62
62
63
-
## Step 1: Discretize the 2D Laplacian
63
+
## Discretize the 2D Laplacian
64
64
65
65
This is the real jump from the previous page. In 1D, every point had two nearest neighbors. In 2D, every point in the interior has four cardinal neighbors, so the Laplacian becomes a stencil on a grid.
66
66
@@ -105,7 +105,7 @@ def laplacian_2d(field, dx):
105
105
This stencil assumes periodic wrapping through `np.roll()`. If you want Neumann boundaries, you still need to overwrite the edges after every Euler step.
Before you animate anything, validate the numerical update with a long loop and one static snapshot. That is the same workflow we used in earlier sessions: get the update rule right first, then wrap it in animation logic.
Copy file name to clipboardExpand all lines: modules/pde/gray-scott-art.qmd
+5-5Lines changed: 5 additions & 5 deletions
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ Start from the animation on the previous page. Now we will turn it into a small
8
8
9
9
This is the same pattern you already saw in the interactive pages from earlier sessions: keep the model update fixed, then wrap it with event handlers and controls.
10
10
11
-
## Step 1: Draw on the Field
11
+
## Draw on the Field
12
12
13
13
Left click should add a local perturbation and right click should reset a small patch to the base state.
A common set of conditions for Turing instability is
73
73
@@ -113,7 +113,7 @@ If your implementation is vectorized, it should work with scalars and with array
113
113
114
114
Validate these functions carefully. You will reuse them when you move from 1D to 2D, so this is the theory page that supports the rest of the session.
115
115
116
-
## Step 3: Plot the Turing Space
116
+
## Plot the Turing Space
117
117
118
118
Complete the code below to recreate the diagram.
119
119
@@ -136,7 +136,7 @@ plt.show()
136
136
137
137
Mark the point $(a, d) = (0.40, 20)$ on your plot. Is it inside the instability region?
138
138
139
-
## Step 4: Scan Spatial Modes in 1D
139
+
## Scan Spatial Modes in 1D
140
140
141
141
The Turing conditions say that some spatial mode should grow, but they do not tell you which one. For Neumann boundary conditions on $[0, L]$, the admissible wavenumbers are
0 commit comments