hiv

hiv

HIV–HPV co-infection.

Two ways to drive HIV, both sharing the same CD4-stratified HIV->HPV effects and HIV-stratified results (all owned by the shared HIV base class): - HIV_transmit: network-transmitted, via beta_m2f/rel_beta_f2m onto hpv.SexualNetwork. - HIV_incidence: a per-(year, sex, age) incidence curve imposed directly, no network transmission.

Classes

Name Description
HIV_incidence HIV driven by an imposed incidence curve, with no network transmission.
HIV_transmit Network-transmitted HIV – see HIV for the CD4-effect/results machinery

HIV_incidence

hiv.HIV_incidence(
    incidence=None,
    pars=None,
    init_prev_data=None,
    name='hiv',
    **kwargs,
)

HIV driven by an imposed incidence curve, with no network transmission.

New infections are diagnosed and ART-scheduled immediately, so plain sti.ART(coverage=...) works without a testing cascade.

Parameters

Name Type Description Default
incidence DataFrame [age, sex, year, incidence]; sex ‘f’/‘m’, incidence the annual acquisition rate among susceptibles. age is a band lower bound, of any width (5-year UNAIDS/Spectrum bands or single years) and not necessarily even; the first and last bands extend past the data range, as do the first and last years. None

Methods

Name Description
infect Full override – no super().infect() call, no network transmission.
step Full override of BaseSTI.step(): infect() already calls
infect
hiv.HIV_incidence.infect()

Full override – no super().infect() call, no network transmission.

step
hiv.HIV_incidence.step()

Full override of BaseSTI.step(): infect() already calls set_prognoses() directly, so there’s no 3-tuple/set_outcomes() flow.

HIV_transmit

hiv.HIV_transmit(init_prev_data=None, pars=None, name='hiv', **kwargs)

Network-transmitted HIV – see HIV for the CD4-effect/results machinery this inherits. Adds beta_m2f/rel_beta_f2m + validate_beta() targeting hpv.SexualNetwork.

Use this when HIV prevalence should emerge from network transmission dynamics; use HIV_incidence instead to impose a known incidence curve directly.

Methods

Name Description
validate_beta Route beta_m2f/rel_beta_f2m onto every SexualNetwork’s betamap entry.
validate_beta
hiv.HIV_transmit.validate_beta()

Route beta_m2f/rel_beta_f2m onto every SexualNetwork’s betamap entry.

hpv.SexualNetwork puts females in p1, males in p2, so betamap[net][0] = f2m (smaller), betamap[net][1] = m2f = beta_m2f (larger).