org.eclipse.ohf.stem.diseasemodels.standard.impl
Class SIImpl

java.lang.Object
  extended by org.eclipse.emf.common.notify.impl.BasicNotifierImpl
      extended by org.eclipse.emf.ecore.impl.BasicEObjectImpl
          extended by org.eclipse.emf.ecore.impl.EObjectImpl
              extended by org.eclipse.ohf.stem.core.common.impl.IdentifiableImpl
                  extended by org.eclipse.ohf.stem.core.model.impl.DecoratorImpl
                      extended by org.eclipse.ohf.stem.core.model.impl.NodeDecoratorImpl
                          extended by org.eclipse.ohf.stem.diseasemodels.standard.impl.DiseaseModelImpl
                              extended by org.eclipse.ohf.stem.diseasemodels.standard.impl.StandardDiseaseModelImpl
                                  extended by org.eclipse.ohf.stem.diseasemodels.standard.impl.SIImpl
All Implemented Interfaces:
org.eclipse.emf.common.notify.Notifier, org.eclipse.emf.ecore.EObject, org.eclipse.emf.ecore.InternalEObject, Identifiable, SanityChecker, Decorator, NodeDecorator, DiseaseModel, SI, StandardDiseaseModel
Direct Known Subclasses:
AggregatingSIDiseaseModelImpl, DeterministicSIDiseaseModelImpl, SIRImpl, StochasticSIDiseaseModelImpl

public abstract class SIImpl
extends StandardDiseaseModelImpl
implements SI

An implementation of the model object 'SI'.

The following features are implemented:


Nested Class Summary
 
Nested classes/interfaces inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
org.eclipse.emf.common.notify.impl.BasicNotifierImpl.EAdapterList<E extends java.lang.Object & org.eclipse.emf.common.notify.Adapter>
 
Nested classes/interfaces inherited from interface org.eclipse.emf.ecore.InternalEObject
org.eclipse.emf.ecore.InternalEObject.EStore
 
Field Summary
 
Fields inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
ELAST_EOBJECT_FLAG
 
Fields inherited from interface org.eclipse.ohf.stem.diseasemodels.standard.SI
URI_TYPE_STANDARD_SI_DISEASE_MODEL_SEGMENT
 
Fields inherited from interface org.eclipse.ohf.stem.diseasemodels.standard.StandardDiseaseModel
URI_TYPE_STANDARD_DISEASEMODEL_SEGMENT
 
Fields inherited from interface org.eclipse.ohf.stem.diseasemodels.standard.DiseaseModel
URI_TYPE_DISEASEMODEL_SEGMENT
 
Fields inherited from interface org.eclipse.emf.ecore.InternalEObject
EOPPOSITE_FEATURE_BASE
 
Method Summary
 double computeAdditionalInfectious(Node node)
           
 StandardDiseaseModelLabelValue computeDeaths(StandardDiseaseModelLabel currentLabel, long timeDelta)
           
 StandardDiseaseModelLabelValue computeTransitions(StandardDiseaseModelLabelValue currentState, StandardDiseaseModelLabel diseaseLabel, long timeDelta)
           
 DiseaseModelLabel createDiseaseModelLabel()
           
 DiseaseModelLabelValue createDiseaseModelLabelValue()
           
 DiseaseModelState createDiseaseModelState()
           
 Infector createInfector()
           
 java.lang.Object eGet(int featureID, boolean resolve, boolean coreType)
           
 boolean eIsSet(int featureID)
           
 void eSet(int featureID, java.lang.Object newValue)
           
 void eUnset(int featureID)
           
 double getAdjustedInfectiousMortalityRate(long timeDelta)
           
 double getAdjustedRecoveryRate(long timeDelta)
           
 double getAdjustedTransmissionRate(long timeDelta)
           
 double getInfectiousMortality()
           
 double getInfectiousMortalityRate()
           
 double getNonLinearityCoefficient()
           
 double getPhysicallyAdjacentInfectious(Node node)
           
 double getPhysicallyAdjacentInfectiousProportion()
           
 double getRecoveryRate()
           
 double getTransmissionRate()
           
 double getTransmissionRateScaleFactor(StandardDiseaseModelLabel diseaseLabel)
           
 boolean sane()
           
 void setInfectiousMortality(double newInfectiousMortality)
           
 void setInfectiousMortalityRate(double newInfectiousMortalityRate)
           
 void setNonLinearityCoefficient(double newNonLinearityCoefficient)
           
 void setPhysicallyAdjacentInfectiousProportion(double newPhysicallyAdjacentInfectiousProportion)
           
 void setRecoveryRate(double newRecoveryRate)
           
 void setTransmissionRate(double newTransmissionRate)
           
 java.lang.String toString()
           
 
Methods inherited from class org.eclipse.ohf.stem.diseasemodels.standard.impl.StandardDiseaseModelImpl
addToTotalArea, addToTotalPopulationCount, computeBirths, computeTotalPopulationCountReciprocal, getTotalArea, getTotalPopulationCount, getTotalPopulationCountReciprocal, initializeDiseaseState, initializeDiseaseState, resetLabels, setTotalArea, setTotalPopulationCount, updateLabels
 
Methods inherited from class org.eclipse.ohf.stem.diseasemodels.standard.impl.DiseaseModelImpl
decorateGraph, getAdjustedBackgroundMortalityRate, getBackgroundMortalityRate, getDiseaseName, getPopulationIdentifier, getTimePeriod, setBackgroundMortalityRate, setDiseaseName, setPopulationIdentifier, setTimePeriod
 
Methods inherited from class org.eclipse.ohf.stem.core.model.impl.DecoratorImpl
basicSetGraph, eBasicRemoveFromContainerFeature, eInverseAdd, eInverseRemove, getGraph, getLabelsToUpdate, setGraph
 
Methods inherited from class org.eclipse.ohf.stem.core.common.impl.IdentifiableImpl
basicSetDublinCore, getDublinCore, getTypeURI, getURI, setDublinCore, setTypeURI, setURI
 
Methods inherited from class org.eclipse.emf.ecore.impl.EObjectImpl
eAdapters, eClass, eContainerFeatureID, eDeliver, eInternalContainer, eIsProxy, eSetClass, eSetDeliver, eSetProxyURI
 
Methods inherited from class org.eclipse.emf.ecore.impl.BasicEObjectImpl
eAllContents, eBaseStructuralFeatureID, eBasicRemoveFromContainer, eBasicSetContainer, eContainer, eContainingFeature, eContainmentFeature, eContains, eContents, eCrossReferences, eDerivedStructuralFeatureID, eDerivedStructuralFeatureID, eDirectResource, eDynamicBasicRemoveFromContainer, eDynamicGet, eDynamicGet, eDynamicInverseAdd, eDynamicInverseRemove, eDynamicIsSet, eDynamicIsSet, eDynamicSet, eDynamicSet, eDynamicUnset, eDynamicUnset, eGet, eGet, eGet, eInternalResource, eInverseAdd, eInverseRemove, eIsSet, eObjectForURIFragmentSegment, eOpenGet, eOpenIsSet, eOpenSet, eOpenUnset, eProxyURI, eResolveProxy, eResource, eSet, eSetResource, eSetStore, eSetting, eStore, eUnset, eURIFragmentSegment, eVirtualGet, eVirtualGet, eVirtualIsSet, eVirtualSet, eVirtualUnset
 
Methods inherited from class org.eclipse.emf.common.notify.impl.BasicNotifierImpl
eNotificationRequired, eNotify
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eclipse.ohf.stem.diseasemodels.standard.StandardDiseaseModel
addToTotalArea, addToTotalPopulationCount, computeTotalPopulationCountReciprocal, getTotalArea, getTotalPopulationCount, getTotalPopulationCountReciprocal, setTotalArea, setTotalPopulationCount
 
Methods inherited from interface org.eclipse.ohf.stem.diseasemodels.standard.DiseaseModel
getAdjustedBackgroundMortalityRate, getBackgroundMortalityRate, getDiseaseName, getPopulationIdentifier, getTimePeriod, initializeDiseaseState, initializeDiseaseState, setBackgroundMortalityRate, setDiseaseName, setPopulationIdentifier, setTimePeriod
 
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, 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
 
Methods inherited from interface org.eclipse.emf.ecore.InternalEObject
eNotificationRequired
 

Method Detail

computeDeaths

public StandardDiseaseModelLabelValue computeDeaths(StandardDiseaseModelLabel currentLabel,
                                                    long timeDelta)
Specified by:
computeDeaths in class StandardDiseaseModelImpl
Parameters:
currentLabel - the current label of the disease model
timeDelta - the time period over which the population members die
Returns:
the disease state label value that represents the number of deaths in each state.
See Also:
org.eclipse.ohf.stem.diseasemodels.standard.impl.StandardDiseaseModelImpl#computeDeaths(org.eclipse.ohf.stem.diseasemodels.standard.StandardDiseaseModelLabelValue, long)

computeTransitions

public StandardDiseaseModelLabelValue computeTransitions(StandardDiseaseModelLabelValue currentState,
                                                         StandardDiseaseModelLabel diseaseLabel,
                                                         long timeDelta)
Specified by:
computeTransitions in class StandardDiseaseModelImpl
Parameters:
currentState - the current state of the population
diseaseLabel - the disease label for which the state transitions are being computed.
timeDelta - the time period (milliseconds) over which the population members transition to new states
Returns:
a disease state label value that contains the number of population members in each state that transition to the next state (e.g., S->E->I->R->S).
See Also:
org.eclipse.ohf.stem.diseasemodels.standard.impl.StandardDiseaseModelImpl#computeTransitions(org.eclipse.ohf.stem.diseasemodels.standard.StandardDiseaseModelLabelValue, long, double, long)

getTransmissionRateScaleFactor

public double getTransmissionRateScaleFactor(StandardDiseaseModelLabel diseaseLabel)
Parameters:
diseaseLabel - the label being processed
Returns:
the transmision rate scale factor for the label being processed

computeAdditionalInfectious

public double computeAdditionalInfectious(Node node)
Parameters:
node - the starting node
Returns:
the number of infectious population members who "add" to the infectious population at the current node for computation purposes.

createDiseaseModelLabel

public DiseaseModelLabel createDiseaseModelLabel()
Description copied from class: DiseaseModelImpl

Specified by:
createDiseaseModelLabel in interface DiseaseModel
Specified by:
createDiseaseModelLabel in class DiseaseModelImpl
Returns:
See Also:
DiseaseModelImpl.createDiseaseModelLabel()

createDiseaseModelLabelValue

public DiseaseModelLabelValue createDiseaseModelLabelValue()
Description copied from class: DiseaseModelImpl

Specified by:
createDiseaseModelLabelValue in interface DiseaseModel
Specified by:
createDiseaseModelLabelValue in class DiseaseModelImpl
Returns:
an instance of the disease model label value that this disease model updates.

createDiseaseModelState

public DiseaseModelState createDiseaseModelState()
Description copied from class: DiseaseModelImpl

Specified by:
createDiseaseModelState in interface DiseaseModel
Specified by:
createDiseaseModelState in class DiseaseModelImpl
Returns:
See Also:
DiseaseModelImpl.createDiseaseModelState()

createInfector

public Infector createInfector()
Description copied from class: DiseaseModelImpl

Specified by:
createInfector in interface DiseaseModel
Specified by:
createInfector in class DiseaseModelImpl
Returns:
See Also:
DiseaseModelImpl.createInfector()

getInfectiousMortality

public double getInfectiousMortality()

Specified by:
getInfectiousMortality in interface SI
Returns:

setInfectiousMortality

public void setInfectiousMortality(double newInfectiousMortality)

Specified by:
setInfectiousMortality in interface SI
Parameters:
newInfectiousMortality -
See Also:
SI.getInfectiousMortality()

getTransmissionRate

public double getTransmissionRate()

Specified by:
getTransmissionRate in interface SI
Returns:

setTransmissionRate

public void setTransmissionRate(double newTransmissionRate)

Specified by:
setTransmissionRate in interface SI
Parameters:
newTransmissionRate -
See Also:
SI.getTransmissionRate()

getRecoveryRate

public double getRecoveryRate()

Specified by:
getRecoveryRate in interface SI
Returns:

setRecoveryRate

public void setRecoveryRate(double newRecoveryRate)

Specified by:
setRecoveryRate in interface SI
Parameters:
newRecoveryRate -
See Also:
SI.getRecoveryRate()

getInfectiousMortalityRate

public double getInfectiousMortalityRate()

Specified by:
getInfectiousMortalityRate in interface SI
Returns:
the number of fatally infected population members that die per time period.
See Also:
SI.getInfectiousMortality(), DiseaseModel.getBackgroundMortalityRate()

setInfectiousMortalityRate

public void setInfectiousMortalityRate(double newInfectiousMortalityRate)

Specified by:
setInfectiousMortalityRate in interface SI
Parameters:
newInfectiousMortalityRate - the new value of the 'Infectious Mortality Rate' attribute.
See Also:
SI.getInfectiousMortalityRate()

getPhysicallyAdjacentInfectiousProportion

public double getPhysicallyAdjacentInfectiousProportion()

Specified by:
getPhysicallyAdjacentInfectiousProportion in interface SI
Returns:
the proportion of the infectious population in physically adjacent Nodes that contribute to the effective infectious population at the current Node.

setPhysicallyAdjacentInfectiousProportion

public void setPhysicallyAdjacentInfectiousProportion(double newPhysicallyAdjacentInfectiousProportion)

Specified by:
setPhysicallyAdjacentInfectiousProportion in interface SI
Parameters:
newPhysicallyAdjacentInfectiousProportion - the new value of the 'Physically Adjacent Infectious Proportion' attribute.
See Also:
SI.getPhysicallyAdjacentInfectiousProportion()

getAdjustedInfectiousMortalityRate

public double getAdjustedInfectiousMortalityRate(long timeDelta)

Specified by:
getAdjustedInfectiousMortalityRate in interface SI
Parameters:
timeDelta - the time period (milliseconds) to which the rate is to be adjusted.
Returns:
the adjusted rate

getNonLinearityCoefficient

public double getNonLinearityCoefficient()

Specified by:
getNonLinearityCoefficient in interface SI
Returns:

setNonLinearityCoefficient

public void setNonLinearityCoefficient(double newNonLinearityCoefficient)

Specified by:
setNonLinearityCoefficient in interface SI
Parameters:
newNonLinearityCoefficient -
See Also:
SI.getNonLinearityCoefficient()

getAdjustedTransmissionRate

public double getAdjustedTransmissionRate(long timeDelta)

Specified by:
getAdjustedTransmissionRate in interface SI
Parameters:
timeDelta -
Returns:

getAdjustedRecoveryRate

public double getAdjustedRecoveryRate(long timeDelta)

Specified by:
getAdjustedRecoveryRate in interface SI
Parameters:
timeDelta -
Returns:

getPhysicallyAdjacentInfectious

public double getPhysicallyAdjacentInfectious(Node node)

Specified by:
getPhysicallyAdjacentInfectious in interface SI
Returns:
the number of infectious population members in Nodes that share a CommonBorderRelationshipLabel with this Node.

eGet

public java.lang.Object eGet(int featureID,
                             boolean resolve,
                             boolean coreType)

Specified by:
eGet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eGet in class StandardDiseaseModelImpl
Parameters:
featureID -
resolve -
coreType -
Returns:

eSet

public void eSet(int featureID,
                 java.lang.Object newValue)

Specified by:
eSet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eSet in class StandardDiseaseModelImpl
Parameters:
featureID -
newValue -

eUnset

public void eUnset(int featureID)

Specified by:
eUnset in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eUnset in class StandardDiseaseModelImpl
Parameters:
featureID -

eIsSet

public boolean eIsSet(int featureID)

Specified by:
eIsSet in interface org.eclipse.emf.ecore.InternalEObject
Overrides:
eIsSet in class StandardDiseaseModelImpl
Parameters:
featureID -
Returns:

toString

public java.lang.String toString()

Overrides:
toString in class StandardDiseaseModelImpl
Returns:

sane

public boolean sane()
Description copied from class: IdentifiableImpl

Specified by:
sane in interface Identifiable
Specified by:
sane in interface SanityChecker
Overrides:
sane in class StandardDiseaseModelImpl
Returns:
true if the instance is "sane", false otherwise.
See Also:
StandardDiseaseModelImpl.sane()