@@ -11,6 +11,32 @@ import matplotlib.pyplot as plt
11
11
12
12
```
13
13
14
+ # Example calculation with 2 groups
15
+
16
+ ``` {python}
17
+ import numpy as np
18
+ n = np.array([200, 800])
19
+ beta = np.array([[10, 0.1],[.1, 1]])
20
+ n_vax = np.array([100, 0])
21
+ ve = 1.0
22
+
23
+ s_i = n / n.sum()
24
+ s_vax = (n - n_vax * ve) / n
25
+
26
+ R_vax = beta * s_i * s_vax
27
+ e = np.linalg.eig(R_vax)
28
+ i = np.argmax(np.abs(e.eigenvalues))
29
+
30
+ value = e.eigenvalues[i]
31
+ vector = e.eigenvectors[:, i]
32
+ vector /= sum(vector)
33
+
34
+ value
35
+ vector
36
+ ```
37
+
38
+ # 4 group model
39
+
14
40
``` {python}
15
41
# parameters (core, kids, travelers, general)
16
42
n = np.array([0.1, 0.45, 0.05, 0.4]) * 1000000
50
76
``` {python}
51
77
# test that equal pop sizes result in bigger Re
52
78
n_equal = np.array([0.25, 0.25, 0.25, 0.25]) * 1000000
53
- test3 = ngm.simulate(n_equal, n_vax_0, K , p_severe, ve)
79
+ test3 = ngm.simulate(n_equal, n_vax_0, beta , p_severe, ve)
54
80
test3
55
81
56
82
```
@@ -72,7 +98,7 @@ df_n_vax = pd.DataFrame(n_vax_values, columns=["Core", "Kids", "Travelers", "Gen
72
98
results = []
73
99
for index, row in df_n_vax.iterrows():
74
100
n_vax = row.values
75
- result = ngm.simulate(n, n_vax, K , p_severe, ve)
101
+ result = ngm.simulate(n, n_vax, beta , p_severe, ve)
76
102
results.append({
77
103
"Total Doses": total_doses_range[index],
78
104
"Re": result["Re"],
@@ -109,7 +135,7 @@ df_n_vax = pd.DataFrame(n_vax_values, columns=["Core", "Kids", "Travelers", "Gen
109
135
results = []
110
136
for index, row in df_n_vax.iterrows():
111
137
n_vax = row.values
112
- result = ngm.simulate(n, n_vax, K , p_severe, ve)
138
+ result = ngm.simulate(n, n_vax, beta , p_severe, ve)
113
139
results.append({
114
140
"Core Doses": n_vax[0],
115
141
"Re": result["Re"],
0 commit comments