Package io.github.ai4ci.abm
Interface OutbreakState
- All Superinterfaces:
Abstraction.TemporalState<Outbreak>
,Cloneable
,OutbreakTemporalState
,Serializable
- All Known Implementing Classes:
ImmutableOutbreakState
The current state of the outbreak. It contains simulation parameters that
change over simulation time and time varying derived summary data (marked
with 'Lazy' or 'Derived'). Only one state will exist at any one point in a
model and is replaced at each time step.
-
Method Summary
Modifier and TypeMethodDescriptiondefault long
Count of people newly requiring hospitalisation at any given time point.default double
default double
Average absolute loss of mobility compared to baseline.default double
default double
Average absolute loss of mobility compared to baseline.default double
double
A probability that if two people are in contact and both using apps How likely is it that the app will detect the contact?default long
default double
default long
default long
default double
default long
Count of people requiring hospitalisation at any given time point.default long
default long
default long
default long
default double
default String
int
The estimate of the incubation period is important as it puts a time on how long to isolate and when to test after exposure.int
The estimate of the infectious period is important because it informs the policy and behavioural guidance on a whole range of things, from self isolation duration to maximum time that an infectious contact is deemed relevant.double
An estimate of how sensitive symptoms are is part of determining their significance if they are being recorded by an smart agent.double
An estimate of how specific symptoms are is part of determining their significance if they are being recorded by an smart agent.default double
Sum of all the people who tested positive over the last infectious period.default double
default double
An estimate of the R_t value based on the renewal equation.default long
default long
Count of people with test negatives in their results that become available todaydefault long
Count of people with test positives in the results that become available today.default long
double
An odds ratio describing day to day changes in the transmission due to exogenous factors such as weather, or potentially viral evolution.Methods inherited from interface io.github.ai4ci.abm.mechanics.Abstraction.TemporalState
getEntity, getExperimentName, getExperimentReplica, getModelName, getModelReplica, getTime, getUrn
-
Method Details
-
getTransmissibilityModifier
double getTransmissibilityModifier()An odds ratio describing day to day changes in the transmission due to exogenous factors such as weather, or potentially viral evolution. None of these are yet defined butModelUpdate
will be where they are implemented and configured as a function of time similar to the wayDemographicAdjustment
are handled (although that has an additional override that I don't think we will need here). -
getContactDetectedProbability
double getContactDetectedProbability()A probability that if two people are in contact and both using apps How likely is it that the app will detect the contact? The contact detected probability is a system wide parameter and describes how technically effective the app is. Then there is individual probability of app use, which covers phone actually switched on, app installed, and working:PersonState.getAdjustedAppUseProbability()
-
getPresumedInfectiousPeriod
int getPresumedInfectiousPeriod()The estimate of the infectious period is important because it informs the policy and behavioural guidance on a whole range of things, from self isolation duration to maximum time that an infectious contact is deemed relevant. A grossly mis-specified value could lead to a decrease in effectiveness of behavioural interventions. -
getPresumedIncubationPeriod
int getPresumedIncubationPeriod()The estimate of the incubation period is important as it puts a time on how long to isolate and when to test after exposure. -
getPresumedSymptomSpecificity
double getPresumedSymptomSpecificity()An estimate of how specific symptoms are is part of determining their significance if they are being recorded by an smart agent. -
getPresumedSymptomSensitivity
double getPresumedSymptomSensitivity()An estimate of how sensitive symptoms are is part of determining their significance if they are being recorded by an smart agent. -
getAverageMobility
@Lazy default double getAverageMobility() -
getAverageViralLoad
@Lazy default double getAverageViralLoad() -
getAverageCompliance
@Lazy default double getAverageCompliance() -
getCumulativeInfections
@Lazy default long getCumulativeInfections()- Specified by:
getCumulativeInfections
in interfaceOutbreakTemporalState
-
getMaximumIncidence
@Lazy default long getMaximumIncidence()- Specified by:
getMaximumIncidence
in interfaceOutbreakTemporalState
-
getTimeToMaximumIncidence
@Lazy default long getTimeToMaximumIncidence()- Specified by:
getTimeToMaximumIncidence
in interfaceOutbreakTemporalState
-
getTestPositivesByResultDate
@Lazy default long getTestPositivesByResultDate()Count of people with test positives in the results that become available today.- Specified by:
getTestPositivesByResultDate
in interfaceOutbreakTemporalState
-
getTestNegativesByResultDate
@Lazy default long getTestNegativesByResultDate()Count of people with test negatives in their results that become available today- Specified by:
getTestNegativesByResultDate
in interfaceOutbreakTemporalState
-
getInfectedCount
@Lazy default long getInfectedCount()- Specified by:
getInfectedCount
in interfaceOutbreakTemporalState
-
getMaximumPrevalence
@Lazy default double getMaximumPrevalence()- Specified by:
getMaximumPrevalence
in interfaceOutbreakTemporalState
-
getIncidence
@Lazy default long getIncidence()- Specified by:
getIncidence
in interfaceOutbreakTemporalState
-
getSymptomaticCount
@Lazy default long getSymptomaticCount() -
getAdmissionIncidence
@Lazy default long getAdmissionIncidence()Count of people newly requiring hospitalisation at any given time point. This would be equivalent to hospital admission incidence. -
getCumulativeAdmissions
@Lazy default long getCumulativeAdmissions()- Specified by:
getCumulativeAdmissions
in interfaceOutbreakTemporalState
-
getMaximumHospitalBurden
@Lazy default long getMaximumHospitalBurden()- Specified by:
getMaximumHospitalBurden
in interfaceOutbreakTemporalState
-
getAverageMobilityDecrease
@Lazy default double getAverageMobilityDecrease()Average absolute loss of mobility compared to baseline. -
getCumulativeMobilityDecrease
@Lazy default double getCumulativeMobilityDecrease()- Specified by:
getCumulativeMobilityDecrease
in interfaceOutbreakTemporalState
-
getAverageComplianceDecrease
@Lazy default double getAverageComplianceDecrease()Average absolute loss of mobility compared to baseline. -
getCumulativeComplianceDecrease
@Lazy default double getCumulativeComplianceDecrease()- Specified by:
getCumulativeComplianceDecrease
in interfaceOutbreakTemporalState
-
getHospitalisedCount
@Lazy default long getHospitalisedCount()Count of people requiring hospitalisation at any given time point. This would be equivalent to hospital occupancy. -
getCumulativeDeaths
@Lazy default long getCumulativeDeaths() -
getPolicy
-
getPresumedTestPositivePrevalence
@Lazy default double getPresumedTestPositivePrevalence()Sum of all the people who tested positive over the last infectious period. This could potentially count people multiple times if they have multiple tests. Testing protocols may prevent this from happening. This is one of the key determinants of thePolicyModel
lockdown decision making. -
getRtEffective
default double getRtEffective()An estimate of the R_t value based on the renewal equation. This is not using a realised infection network as in the present model there are exposures but it is not explicit which exposure is actually responsible for infection. -
getPrevalence
@Lazy default double getPrevalence()
-