Source code for emod_api.demographics.age_distribution_old

from typing import List

from emod_api.demographics.Updateable import Updateable


[docs]class AgeDistributionOld(Updateable): def __init__(self, distribution_values: List[float] = None, result_scale_factor: float = None, result_values: List[float] = None): """ https://docs.idmod.org/projects/emod-generic/en/latest/parameter-demographics.html#complex-distributions Args: distribution_values: result_scale_factor: result_values: """ super().__init__() self.distribution_values = distribution_values self.result_scale_factor = result_scale_factor self.result_values = result_values @property def num_dist_axes(self): import warnings warnings.warn(f"{__class__}: num_dist_axes (NumDistributionAxes) is not interpreted by EMOD and may be removed", DeprecationWarning, stacklevel=2) return self._num_dist_axes @num_dist_axes.setter def num_dist_axes(self, value): import warnings warnings.warn(f"{__class__}: num_dist_axes (NumDistributionAxes) is not interpreted by EMOD and may be removed", DeprecationWarning, stacklevel=2) self._num_dist_axes = value
[docs] def to_dict(self) -> dict: age_distribution = {} if self.distribution_values is not None: age_distribution.update({"DistributionValues": self.distribution_values}) if self.result_scale_factor is not None: age_distribution.update({"ResultScaleFactor": self.result_scale_factor}) if self.result_values is not None: age_distribution.update({"ResultValues": self.result_values}) return age_distribution
[docs] def from_dict(self, age_distribution: dict): if age_distribution is not None: self.distribution_values = age_distribution.get("DistributionValues") self.result_scale_factor = age_distribution.get("ResultScaleFactor") self.result_values = age_distribution.get("ResultValues") self._num_dist_axes = age_distribution.get("NumDistributionAxes") self.results_units = age_distribution.get("ResultUnits") return self