metawards.Demographic
- class metawards.Demographic(name: Optional[str] = None, work_ratio: Optional[float] = None, play_ratio: Optional[float] = None, adjustment: Optional[metawards._variableset.VariableSet] = None, disease: Optional[Union[str, metawards._disease.Disease]] = None, network: Optional[Union[str, metawards._inputfiles.InputFiles]] = None)[source]
This class represents a single demographic
- __init__(name: Optional[str] = None, work_ratio: Optional[float] = None, play_ratio: Optional[float] = None, adjustment: Optional[metawards._variableset.VariableSet] = None, disease: Optional[Union[str, metawards._disease.Disease]] = None, network: Optional[Union[str, metawards._inputfiles.InputFiles]] = None)[source]
Construct the Demographics
Methods
__add__
(other)__delattr__
(name, /)Implement delattr(self, name).
__dir__
()Default dir() implementation.
__eq__
(other)Return self==value.
__format__
(format_spec, /)Default object formatter.
__ge__
(value, /)Return self>=value.
__getattribute__
(name, /)Return getattr(self, name).
__gt__
(value, /)Return self>value.
__init__
([name, work_ratio, play_ratio, ...])Construct the Demographics
__init_subclass__
This method is called when a class is subclassed.
__le__
(value, /)Return self<=value.
__lt__
(value, /)Return self<value.
__ne__
(value, /)Return self!=value.
__new__
(**kwargs)__reduce__
()Helper for pickle.
__reduce_ex__
(protocol, /)Helper for pickle.
__repr__
()Return repr(self).
__setattr__
(name, value, /)Implement setattr(self, name, value).
__sizeof__
()Size of object in memory, in bytes.
__str__
()Return str(self).
__subclasshook__
Abstract classes can override this to customize issubclass().
specialise
(network[, profiler, nthreads])Return a copy of the passed network that has been specialised for this demographic.
Attributes
__annotations__
__dataclass_fields__
__dataclass_params__
__dict__
__doc__
__module__
__weakref__
list of weak references to the object (if defined)
How the parameters for this demographic should be changed compared to the parameters used for the whole population.
The Disease that should be used for this demographic.
The name of this demographic.
The network that describes the workers and player that are part of this demographic.
The proportion of "play" (random movement) members in this demographic out of the entire population.
The proportion of "work" (fixed movement) members in this demographic out of the entire population.
- __eq__(other)
Return self==value.
- __hash__ = None
- __init__(name: Optional[str] = None, work_ratio: Optional[float] = None, play_ratio: Optional[float] = None, adjustment: Optional[metawards._variableset.VariableSet] = None, disease: Optional[Union[str, metawards._disease.Disease]] = None, network: Optional[Union[str, metawards._inputfiles.InputFiles]] = None)[source]
Construct the Demographics
- adjustment: metawards._variableset.VariableSet = None
How the parameters for this demographic should be changed compared to the parameters used for the whole population. This is currently changed to fixed values, but future developments in VariableSet will support rules for varying relative to the whole population. If this is None then this demographic will have the same parameters as the whole population
- disease: metawards._disease.Disease = None
The Disease that should be used for this demographic. Is this is None, then the global Disease is used. Otherwise this demographic will follow this Disease
- name: str = None
The name of this demographic. This will be used as a label, and should be unique within the Demographics
- network: metawards._inputfiles.InputFiles = None
The network that describes the workers and player that are part of this demographic. If this is None then the entire population network will be used (scaled by “work_ratio” and “play_ratio”)
- play_ratio: float = 0.0
The proportion of “play” (random movement) members in this demographic out of the entire population. This can also either be a single number, or a list with a value for every ward. Whichever way is used, the sum of “play_ratio” for each demographic must equal 1.0 in each ward (every member of the play population must be represented)
- specialise(network: metawards._network.Network, profiler=None, nthreads: int = 1)[source]
Return a copy of the passed network that has been specialised for this demographic. The returned network will contain only members of this demographic, with the parameters of the network adjusted according to the rules of this demographic
- work_ratio: float = 0.0
The proportion of “work” (fixed movement) members in this demographic out of the entire population. This can either be a single number, or a list with a value for every ward. Whichever way is used, the sum of “work_ratio” for each demographic must equal 1.0 in each ward (every member of the work population must be represented)