Skip to content

Commit c484b89

Browse files
authored
928 Add a flow chart for the lct model (#943)
1 parent 105816d commit c484b89

File tree

2 files changed

+48
-12
lines changed

2 files changed

+48
-12
lines changed

cpp/models/lct_secir/README.md

Lines changed: 45 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,59 @@
11
# LCT SECIR model
22

33
This model is based on the Linear Chain Trick.
4+
5+
The Linear Chain Trick provides the option to use Erlang-distributed sojourn times in the compartments through the use of subcompartments.
6+
The normal ODE models have (possibly unrealistic) exponentially distributed sojourn times.
7+
The LCT model can still be described by an ordinary differential equation system.
8+
49
For the concept see
510
- Lena Plötzke, "Der Linear Chain Trick in der epidemiologischen Modellierung als Kompromiss zwischen gewöhnlichen und Integro-Differentialgleichungen", 2023. (https://elib.dlr.de/200381/, German only)
611
- P. J. Hurtado und A. S. Kirosingh, "Generalizations of the ‘Linear Chain Trick’: incorporating more flexible dwell time distributions into mean field ODE models“, 2019. (https://doi.org/10.1007/s00285-019-01412-w)
712

813
The eight compartments
9-
- Susceptible, may become exposed at any time
10-
- Exposed, becomes infected after some time
11-
- InfectedNoSymptoms, becomes InfectedSymptoms or Recovered after some time
12-
- InfectedSymptoms, becomes InfectedSevere or Recovered after some time
13-
- InfectedSevere, becomes InfectedCritical or Recovered after some time
14-
- InfectedCritical, becomes Recovered or Dead after some time
15-
- Recovered
16-
- Dead
14+
- `Susceptible` ($S$), may become exposed at any time
15+
- `Exposed` ($E$), becomes infected after some time
16+
- `InfectedNoSymptoms` ($I_{NS}$), becomes InfectedSymptoms or Recovered after some time
17+
- `InfectedSymptoms` ($I_{Sy}$), becomes InfectedSevere or Recovered after some time
18+
- `InfectedSevere` ($I_{Sev}$), becomes InfectedCritical or Recovered after some time
19+
- `InfectedCritical` ($I_{Cr}$), becomes Recovered or Dead after some time
20+
- `Recovered` ($R$)
21+
- `Dead` ($D$)
1722

1823
are used to simulate the spread of the disease.
1924
It is possible to include subcompartments for the five compartments Exposed, InfectedNoSymptoms, InfectedSymptoms, InfectedSevere and InfectedCritical.
2025

21-
A simple example can be found at: examples/lct_secir.cpp.
26+
Below is an overview of the model architecture and its compartments.
27+
28+
![tikzLCTSECIR](https://github.com/SciCompMod/memilio/assets/70579874/6a5d5a95-20f9-4176-8894-c091bd48bfb7)
29+
30+
| Mathematical variable | C++ variable name | Description |
31+
|---------------------------- | --------------- | -------------------------------------------------------------------------------------------------- |
32+
| $\phi$ | `ContactPatterns` | Average number of contacts of a person per day. |
33+
| $\rho$ | `TransmissionProbabilityOnContact` | Transmission risk for people located in the susceptible compartments. |
34+
| $\xi_{I_{NS}}$ | `RelativeTransmissionNoSymptoms` | Proportion of nonsymptomatically infected people who are not isolated. |
35+
| $\xi_{I_{Sy}}$ | `RiskOfInfectionFromSymptomatic` | Proportion of infected people with symptomps who are not isolated. |
36+
| $N$ | `m_N0` | Total population. |
37+
| $D$ | `D` | Number of death people. |
38+
| $n_E$ | Defined via `InfectionState` | Number of subcompartments of the Exposed compartment. |
39+
| $n_{NS}$ | Defined via `InfectionState` | Number of subcompartments of the InfectedNoSymptoms compartment. |
40+
| $n_{Sy}$ | Defined via `InfectionState` | Number of subcompartments of the InfectedSymptoms compartment. |
41+
| $n_{Sev}$ | Defined via `InfectionState` | Number of subcompartments of the InfectedSevere compartment.|
42+
| $n_{Cr}$ | Defined via `InfectionState` | Number of subcompartments of the InfectedCritical compartment. |
43+
| $T_E$ | `TimeExposed` | Average time in days an individual stays in the Exposed compartment. |
44+
| $T_{I_{NS}}$ | `TimeInfectedNoSymptoms` | Average time in days an individual stays in the InfectedNoSymptoms compartment. |
45+
| $T_{I_{Sy}}$ | `TimeInfectedSymptoms` | Average time in days an individual stays in the InfectedSymptoms compartment. |
46+
| $T_{I_{Sev}}$ | `TimeInfectedSevere` | Average time in days an individual stays in the InfectedSevere compartment. |
47+
| $T_{I_{Cr}}$ | `TimeInfectedCritical` | Average time in days an individual stays in the InfectedCritical compartment. |
48+
| $\mu_{I_{NS}}^{R}$ | `RecoveredPerInfectedNoSymptoms` | Probability of transition from compartment InfectedNoSymptoms to Recovered. |
49+
| $\mu_{I_{Sy}}^{I_{Sev}}$ | `SeverePerInfectedSymptoms` | Probability of transition from compartment InfectedSymptoms to InfectedSevere. |
50+
| $\mu_{I_{Sev}}^{I_{Cr}}$ | `CriticalPerSevere` | Probability of transition from compartment InfectedSevere to InfectedCritical. |
51+
| $\mu_{I_{Cr}}^{D}$ | `DeathsPerCritical` | Probability of dying when in compartment InfectedCritical. |
52+
53+
The notation of the compartments with indices here stands for subcompartments and not for age groups or similar, as in some ODE models. Accordingly, $I_{NS,n_{NS}}$, for example, stands for the number of people in the $n_{NS}$-th subcompartment of the InfectedNoSymptoms compartment.
54+
55+
56+
## Examples
2257

58+
A simple example can be found at [LCT minimal example](../../examples/lct_secir.cpp).
2359

cpp/models/ode_secir/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ The model consists of the following major classes:
1414

1515
Below is an overview of the model architecture and its compartments.
1616

17-
![secir_model](https://github.com/SciCompMod/memilio/assets/69154294/d99b257b-1cc2-447d-8e32-ba3aa8329c0c)
17+
![secir_model](https://github.com/SciCompMod/memilio/assets/70579874/46b09e8a-d083-4ef9-8328-21975890b60f)
1818
| Mathematical variable | C++ variable name | Description |
1919
|---------------------------- | --------------- | -------------------------------------------------------------------------------------------------- |
2020
| $\phi$ | `ContactPatterns` | Matrix of daily contact rates / number of daily contacts between different age groups. |
@@ -23,8 +23,8 @@ Below is an overview of the model architecture and its compartments.
2323
| $\xi_{I_{Sy}}$ | `riskFromInfectedSymptomatic` | Proportion of infected people with symptomps who are not isolated (time-dependent if `TestAndTraceCapacity` used). |
2424
| $N_j$ | `Nj` | Total population of age group $j$. |
2525
| $D_i$ | `Di` | Number of death people of age group $i$. |
26-
| $\frac{1}{T_{E}}$ | `rateE` | Time in days an individual stays in the Exposed compartment (Computed from `SerialInterval` and `IncubationPeriod`). |
27-
| $\frac{1}{T_{I_{NS}}}$ | `rateINS` | Time in days an individual stays in the InfectedNoSymptoms compartment (Computed from `SerialInterval` and `IncubationPeriod`). |
26+
| $\frac{1}{T_{E}}$ | `rateE` | Reciprocal of the time in days an individual stays in the Exposed compartment (Computed from `SerialInterval` and `IncubationPeriod`). |
27+
| $\frac{1}{T_{I_{NS}}}$ | `rateINS` | Reciprocal of the time in days an individual stays in the InfectedNoSymptoms compartment (Computed from `SerialInterval` and `IncubationPeriod`). |
2828
| $T_{I_{Sy}}$ | `TimeInfectedSymptoms` | Time in days an individual stays in the InfectedSymptoms compartment. |
2929
| $T_{I_{Sev}}$ | `TimeInfectedSevere` | Time in days an individual stays in the InfectedSevere compartment. |
3030
| $T_{I_{Cr}}$ | `TimeInfectedCritical` | Time in days an individual stays in the InfectedCritical compartment. |

0 commit comments

Comments
 (0)