EoN.SIR_homogeneous_pairwise¶
-
EoN.
SIR_homogeneous_pairwise
(S0, I0, R0, SI0, SS0, n, tau, gamma, tmin=0, tmax=100, tcount=1001, return_full_data=False)[source]¶ Encodes System (4.11) of Kiss, Miller, & Simon. Please cite the book if using this algorithm.
In the text this is often referred to as the “mean-field model closed at the level of triples”
[dot{S}] = - tau [SI] [dot{I}] = au [SI] - gamma [I] [dot{R}] = gamma [I] ; [R] = N-[S]-[I] [dot{SI}] = -gamma [SI]+ au ((n-1)/n) [SI]([SS]-[SI])/[S]
- au [SI]
[dot{SS}] = - 2 au ((n-1)/n) [SI][SS]/[S]
- conserved quantities: [S]+[I]+[R] also
- [SS]+[II]+[RR] + 2([SI] + [SR] + [IR])
Arguments: - S0 float
- Initial number susceptible
- I0 float
- Initial number infected
- R0 float
- Initial number recovered
- SI0 float
- Initial number of SI edges
- SS0 float
- Initial number of SS edges
- n float
- Degree of nodes
- tau positive float
- transmission rate
- gamma number
- recovery rate
- tmin number (default 0)
- minimum report time
- tmax number (default 100)
- maximum report time
- tcount integer (default 1001)
- number of reports
- return_full_data boolean (default False)
- tells whether to just return times, S, I, R or all calculated data. if True, then returns times, S, I, R, SI, SS
Returns: - if return_full_data is True:
- times, S, I, R, SI, SS
- if return_full_data is False:
- **times, S, I, R **
SAMPLE USE: import networkx as nx import EoN S0 = 990 I0 = 10 R0 = 1 SI0 = 45 SS0 = 4900 n = 5 tau = 1 gamma = 2 t, S, I, R = EoN.SIR_homogeneous_pairwise(S0, I0, R0, SI0, SS0, n, tau, gamma, tmax = 20)