org.eclipse.ohf.stem.diseasemodels.standard
Interface DiseaseModel

All Superinterfaces:
Decorator, org.eclipse.emf.ecore.EObject, Identifiable, NodeDecorator, org.eclipse.emf.common.notify.Notifier, SanityChecker
All Known Subinterfaces:
AggregatingSEIRDiseaseModel, AggregatingSIDiseaseModel, AggregatingSIRDiseaseModel, DeterministicSEIRDiseaseModel, DeterministicSIDiseaseModel, DeterministicSIRDiseaseModel, SEIR, SI, SIR, StandardDiseaseModel, StandardStochasticDiseaseModel, StochasticDiseaseModel, StochasticSEIRDiseaseModel, StochasticSIDiseaseModel, StochasticSIRDiseaseModel
All Known Implementing Classes:
AggregatingSEIRDiseaseModelImpl, AggregatingSIDiseaseModelImpl, AggregatingSIRDiseaseModelImpl, DeterministicSEIRDiseaseModelImpl, DeterministicSIDiseaseModelImpl, DeterministicSIRDiseaseModelImpl, DiseaseModelImpl, SEIRImpl, SIImpl, SIRImpl, StandardDiseaseModelImpl, StandardStochasticDiseaseModelImpl, StochasticDiseaseModelImpl, StochasticSEIRDiseaseModelImpl, StochasticSIDiseaseModelImpl, StochasticSIRDiseaseModelImpl

public interface DiseaseModel
extends NodeDecorator, SanityChecker

This interface defines a class in an EMF model for an STEM Disease model. It is the top-level disease model, all other disease models derive from this class.


Field Summary
static java.lang.String URI_TYPE_DISEASEMODEL_SEGMENT
          This is the segment of the type URI that prefixes all other segments in a disease model type URI.
 
Method Summary
 DiseaseModelLabel createDiseaseModelLabel()
           
 DiseaseModelLabelValue createDiseaseModelLabelValue()
           
 DiseaseModelState createDiseaseModelState()
           
 Infector createInfector()
           
 double getAdjustedBackgroundMortalityRate(long timeDelta)
          Compute the background mortality rate adjusted for a time delta potentially different from the time period specified for the rate.
 double getBackgroundMortalityRate()
          This is the "background" rate (i.e., in the abscence of disease) at which population members (on average) transition from all of the other states (except Pre-Born and including Infectious) to the state Dead, per time period.
 java.lang.String getDiseaseName()
          This is the name of the disease
 java.lang.String getPopulationIdentifier()
          This is the identifier of the population being infected by a Disease.
 long getTimePeriod()
          The time period for the specified rates.
 void initializeDiseaseState(DiseaseModelLabel diseaseModelLabel)
           
 DiseaseModelState initializeDiseaseState(DiseaseModelState diseaseModelState, DiseaseModelLabel diseaseModelLabel)
           
 void setBackgroundMortalityRate(double value)
          Sets the value of the 'Background Mortality Rate' attribute.
 void setDiseaseName(java.lang.String value)
          Sets the value of the 'Disease Name' attribute.
 void setPopulationIdentifier(java.lang.String value)
          Sets the value of the 'Population Identifier' attribute.
 void setTimePeriod(long value)
          Sets the value of the 'Time Period' attribute.
 
Methods inherited from interface org.eclipse.ohf.stem.core.model.Decorator
decorateGraph, getGraph, getLabelsToUpdate, resetLabels, setGraph, updateLabels
 
Methods inherited from interface org.eclipse.ohf.stem.core.common.Identifiable
getDublinCore, getTypeURI, getURI, sane, setDublinCore, setTypeURI, setURI
 
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eIsProxy, eIsSet, eResource, eSet, eUnset
 
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
 

Field Detail

URI_TYPE_DISEASEMODEL_SEGMENT

static final java.lang.String URI_TYPE_DISEASEMODEL_SEGMENT
This is the segment of the type URI that prefixes all other segments in a disease model type URI.

See Also:
Constant Field Values
Method Detail

getBackgroundMortalityRate

double getBackgroundMortalityRate()
This is the "background" rate (i.e., in the abscence of disease) at which population members (on average) transition from all of the other states (except Pre-Born and including Infectious) to the state Dead, per time period. For the population in the Infectious state the mortality rate may also be increased. This is specified by #getInfectiousMortality(). 1/mortalityRate is the average life span in time periods, on average, that is takes for a population member to die from any state. In typical models, the background mortality rate is specified to be the same as the "birth rate" to keep the population fixed.

Returns:
the number of population members that die per time period

setBackgroundMortalityRate

void setBackgroundMortalityRate(double value)
Sets the value of the 'Background Mortality Rate' attribute.

Parameters:
value - the new value of the 'Background Mortality Rate' attribute.
See Also:
getBackgroundMortalityRate()

getAdjustedBackgroundMortalityRate

double getAdjustedBackgroundMortalityRate(long timeDelta)
Compute the background mortality rate adjusted for a time delta potentially different from the time period specified for the rate.

Parameters:
timeDelta - the time period (milliseconds) to which the rate is to be adjusted.
Returns:
the adjusted rate

getDiseaseName

java.lang.String getDiseaseName()
This is the name of the disease

Returns:
the name of the disease

setDiseaseName

void setDiseaseName(java.lang.String value)
Sets the value of the 'Disease Name' attribute.

Parameters:
value - the new value of the 'Disease Name' attribute.
See Also:
getDiseaseName()

getPopulationIdentifier

java.lang.String getPopulationIdentifier()
This is the identifier of the population being infected by a Disease.

Returns:
the identifier of the Population affected by the disease.

setPopulationIdentifier

void setPopulationIdentifier(java.lang.String value)
Sets the value of the 'Population Identifier' attribute.

Parameters:
value - the new value of the 'Population Identifier' attribute.
See Also:
getPopulationIdentifier()

getTimePeriod

long getTimePeriod()
The time period for the specified rates. Default: 1 Day

Returns:
the time period (milliseconds) of the rates specified for this disease model

setTimePeriod

void setTimePeriod(long value)
Sets the value of the 'Time Period' attribute.

Parameters:
value - the new value of the 'Time Period' attribute.
See Also:
getTimePeriod()

createDiseaseModelLabel

DiseaseModelLabel createDiseaseModelLabel()
Returns:
an instance of the disease model label that this disease model updates.

createDiseaseModelLabelValue

DiseaseModelLabelValue createDiseaseModelLabelValue()
Returns:
an instance of the disease model label value that this disease model updates.

createDiseaseModelState

DiseaseModelState createDiseaseModelState()
Returns:
an instance of the disease model state that this disease model would use to hold computation state information attached to a disease model label.

initializeDiseaseState

DiseaseModelState initializeDiseaseState(DiseaseModelState diseaseModelState,
                                         DiseaseModelLabel diseaseModelLabel)
Parameters:
diseaseModelState - the state information to be initialized
diseaseModelLabel - the label to use to initialize the state information
Returns:
the initialized disease model state instance

initializeDiseaseState

void initializeDiseaseState(DiseaseModelLabel diseaseModelLabel)
Parameters:
diseaseModelLabel - the label to use to initialize the state information

createInfector

Infector createInfector()
Returns:
a new instance of an infector for this disease model.