emodpy_hiv.countries.zambia.zambia module#

class emodpy_hiv.countries.zambia.zambia.Zambia[source]#

Bases: Country

Zambia country model class. This class is a subclass of the Country class and implements the build_campaign method to build campaign object to be used with EMODTask.

Example

>>> from emodpy_hiv.countries.zambia import Zambia
>>> from emodpy.emod_task import EMODTask
>>> import manifest
>>> from functools import partial
>>> # Define a campaign_builder function to pass in the required arguments for the Zambia.build_campaign() method.
>>> def campaign_builder():
>>>     return Zambia.build_campaign(schema_path=manifest.schema_file, base_year=Zambia.base_year)
>>> # Alternatively, you can use the partial function to pass in the required arguments for the
>>> # Zambia.build_campaign() method. For example:
>>> # campaign_builder = partial(Zambia.build_campaign, schema_path=manifest.schema_file, base_year=Zambia.base_year)
>>> # Create an EMODTask object using the campaign_builder function
>>> task = EMODTask.from_defaults(config_path="config.json",
>>>                               eradication_path=manifest.eradication_path,
>>>                               campaign_builder=campaign_builder, ...)
country_name = 'Zambia'#
classmethod initialize_config(schema_path: str | Path) ReadOnlyDict[source]#

Override this in the subclass to set the default values for the config object as needed.

classmethod initialize_campaign(schema_path: str | Path) <module 'emod_api.campaign' from '/home/docs/checkouts/readthedocs.org/user_builds/institute-for-disease-modeling-emodpy-hiv/envs/latest/lib/python3.9/site-packages/emod_api/campaign.py'>[source]#

Create the initial campaign object that will be modified by the ParameterizedCall objects from get_campaign_parameterized_calls()

classmethod add_male_circumcision_parameterized_calls() List[ParameterizedCall][source]#
classmethod add_pmtct_parameterized_calls() List[ParameterizedCall][source]#
classmethod add_seed_infections_parameterized_calls() List[ParameterizedCall][source]#
classmethod add_csw_parameterized_calls() List[ParameterizedCall][source]#
classmethod add_post_debut_coinfection_parameterized_calls() List[ParameterizedCall][source]#
classmethod add_health_care_testing_parameterized_calls() List[ParameterizedCall][source]#
classmethod add_ART_cascade_parameterized_calls() List[ParameterizedCall][source]#
classmethod get_campaign_parameterized_calls(campaign: <module 'emod_api.campaign' from '/home/docs/checkouts/readthedocs.org/user_builds/institute-for-disease-modeling-emodpy-hiv/envs/latest/lib/python3.9/site-packages/emod_api/campaign.py'>) List[ParameterizedCall][source]#

Return a list of ParameterizedCall objects that will complete the configuration of an EMOD campaign object.

Args

campaign: If not None, this will be the object that is updated

Returns:

List of ParameterizedCall objects

classmethod initialize_demographics() HIVDemographics[source]#

Create the initial demographics object that will be modified by the ParameterizedCall objects from get_demographics_parameterized_calls()

classmethod get_demographics_parameterized_calls(demographics: HIVDemographics) List[ParameterizedCall][source]#

Return a list of ParameterizedCall objects that will complete the configuration of an EMOD demographics object.

Args

demographics: If not None, this will be the object that is updated

Returns:

List of ParameterizedCall objects

classmethod build_reports(reporters: Reporters) Reporters[source]#

Function that creates reports to be used in the experiment. The function must have Reporters object as the parameter and return that object. It is assumed that all the reporters come from the reporters that are part of EMOD main code. EMOD also supports reporters as custom plug-in dlls, however, not through the current emodpy system.

Parameters:

reporters – The Reporters object to add reports to

Returns:

Reporters object

class emodpy_hiv.countries.zambia.zambia.ZambiaForTraining[source]#

Bases: Zambia

A version of Zambia that is used for training purposes. It has a smaller population and shorter simulation time.

classmethod initialize_config(schema_path: str | Path) ReadOnlyDict[source]#

Override this in the subclass to set the default values for the config object as needed.