Disease Transitions

This module contains tools to model transitions between disease states.

class vivarium_public_health.disease.transition.TransitionString(value)[source]

A string subclass representing a transition between two disease states.

Parses the transition name into from_state and to_state attributes from the format {from_state}_TO_{to_state}.

Parameters:

value (str)

Return type:

TransitionString

class vivarium_public_health.disease.transition.RateTransition(input_state, output_state, transition_rate, triggered=Trigger.NOT_TRIGGERED, rate_type='transition_rate')[source]

A transition between disease states governed by a rate.

Converts the rate to a probability using either a linear or exponential conversion at each time step.

Parameters:
property configuration_defaults: dict[str, Any]

Provides default configuration values for this transition.

Configuration structure:

{transition_name}:
    data_sources:
        transition_rate:
            Source for transition rate data. The default value is
            determined by the ``transition_rate`` constructor argument.
    rate_conversion_type: str
        Method for converting rates to probabilities. Options
        are ``"linear"`` (default) or ``"exponential"``. Linear
        uses ``rate * dt``, exponential uses ``1 - exp(-rate * dt)``.
property transition_rate_pipeline: str
setup(builder)[source]

Perform this component’s setup.

Parameters:

builder (Builder) – Access point for utilizing framework interfaces during setup.

Return type:

None

compute_transition_rate(index)[source]

Compute the transition rate for the given simulants.

Parameters:

index – An iterable of integer labels for the simulants.

Returns:

The transition rates indexed by the provided index.

Return type:

pd.Series[float]

class vivarium_public_health.disease.transition.ProportionTransition(input_state, output_state, proportion, triggered=Trigger.NOT_TRIGGERED)[source]

A transition between disease states governed by a fixed proportion.

At each time step, a fixed proportion of eligible simulants transition to the output state.

Parameters:
property configuration_defaults: dict[str, Any]

Provides default configuration values for this transition.

Configuration structure:

{transition_name}:
    data_sources:
        proportion:
            Source for the proportion of simulants transitioning
            at each time step. The default uses the
            ``load_proportion`` method which resolves data from
            the ``proportion`` constructor argument.
setup(builder)[source]

Perform this component’s setup.

Parameters:

builder (Builder) – Access point for utilizing framework interfaces during setup.

Return type:

None