Skip to content

Commit 0b90624

Browse files
committed
Clarify same-number-of-simulants initialization strategy
1 parent c93af2e commit 0b90624

1 file changed

Lines changed: 12 additions & 5 deletions

File tree

docs/source/models/causes/neonatal/preterm_birth.rst

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -238,7 +238,7 @@ age less than 37 weeks:
238238

239239
.. math::
240240
241-
p_{\text{preterm},\text{ENN}} = \sum_{\{\text{cat}: \text{GA}<37\}} \text{lbwsg_birth_prevalence}_\text{cat}
241+
p_{\text{preterm},\text{ENN}} = \sum_{\{\text{cat}: \text{GA}<37\}} \text{lbwsg_birth_prevalence}_\text{cat},
242242
243243
where :math:`\text{lbwsg_birth_prevalence}` can be pulled from GBD with minor transformations,
244244
as detailed in the table below.
@@ -255,18 +255,25 @@ Similarly to the LNN PAF, *after* the early neonatal calculations are complete,
255255
preterm at the end of the ENN age group should be calculated.
256256
This value should be used as :math:`p_{\text{preterm},\text{LNN}}` for the purposes
257257
of the CSMRisk equation.
258-
Concretely, in the PAF calculation pipeline, in which LBWSG categories have not been assigned using the birth prevalence (currently exactly equally between categories),
259-
the prevalence is calculated as follows:
258+
259+
Determining the prevalence of preterm is a bit more complex than it sounds, because in the PAF calculation pipeline,
260+
the same number of simulants are assigned to each LBWSG category, rather than assigning each simulant
261+
to a random category with probability equal to that category's prevalence at birth.
262+
Due to this initialization strategy, all quantities calculated in the pipeline must use *weights*
263+
to account for the fact that the simulants in the categories with higher birth prevalence represent more people.
264+
Therefore, :math:`p_{\text{preterm},\text{LNN}}` is calculated as follows:
260265

261266
.. math::
262267
263268
p_{\text{preterm},\text{LNN}} = \frac{
264269
\sum_{\{\text{cat}: \text{GA}<37\}} \text{lbwsg_birth_prevalence}_\text{cat} \times \frac{n_\text{cat} - n^\text{deaths}_\text{cat}}{n_\text{cat}}
265270
}{
266271
\sum_{\text{cat}} \text{lbwsg_birth_prevalence}_\text{cat} \times \frac{n_\text{cat} - n^\text{deaths}_\text{cat}}{n_\text{cat}}
267-
}
272+
},
268273
269-
where :math:`n_\text{cat}` is the number of simulants initialized into each category before mortality was applied (the number of grid points in each category) and :math:`n^\text{deaths}_\text{cat}` is the number of deaths in each category when ENN mortality was applied in the PAF calculation pipeline. Note that :math:`n_\text{cat}` will not vary by LBWSG exposure category under the current approach of assigning LBWSG exactly equally between categories.
274+
where :math:`n_\text{cat}` is the number of simulants initialized into each LBWSG category at birth
275+
and :math:`n^\text{deaths}_\text{cat}` is the number of deaths in each category when ENN mortality was applied.
276+
Note that :math:`n_\text{cat}` will not vary by LBWSG exposure category under the current approach of assigning the same number of simulants to each LBWSG category.
270277

271278
Each individual simulant :math:`i` has their own :math:`\text{CSMR}_i^k` that might be different from :math:`\text{CSMRisk}^k_{\text{BW}_i,\text{GA}_i}` (meaning the average birth-weight- and gestational-age-specific CSMRisk for simulants with the birth weight and gestational age matching simulant :math:`i`). We recommend implementing this as a Vivarium pipeline eventually because it will be modified by interventions (or access to interventions) relevant to this subcause. (Until we implement those, we will have :math:`\text{CSMRisk}_{i}^k = \text{CSMRisk}^k_{\text{BW}_i,\text{GA}_i}`, though.)
272279

0 commit comments

Comments
 (0)