blob: d240acdde65b3a09457d5283b6ced43550962754 [file] [log] [blame]
package org.eclipse.stem.diseasemodels.vector.impl;
/*******************************************************************************
* Copyright (c) 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
import java.util.Collections;
import java.util.List;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.impl.BasicEObjectImpl;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.stem.core.graph.Edge;
import org.eclipse.stem.core.graph.EdgeLabel;
import org.eclipse.stem.core.graph.LabelValue;
import org.eclipse.stem.core.graph.Node;
import org.eclipse.stem.core.graph.NodeLabel;
import org.eclipse.stem.core.model.STEMTime;
import org.eclipse.stem.definitions.labels.AreaLabel;
import org.eclipse.stem.definitions.labels.CommonBorderRelationshipLabelValue;
import org.eclipse.stem.definitions.labels.RoadTransportRelationshipLabelValue;
import org.eclipse.stem.definitions.labels.impl.CommonBorderRelationshipLabelImpl;
import org.eclipse.stem.definitions.labels.impl.RoadTransportRelationshipLabelImpl;
import org.eclipse.stem.diseasemodels.standard.DiseaseModelLabel;
import org.eclipse.stem.diseasemodels.standard.DiseaseModelLabelValue;
import org.eclipse.stem.diseasemodels.standard.Infector;
import org.eclipse.stem.diseasemodels.standard.SIInfector;
import org.eclipse.stem.diseasemodels.standard.StandardDiseaseModel;
import org.eclipse.stem.diseasemodels.standard.StandardDiseaseModelLabel;
import org.eclipse.stem.diseasemodels.standard.StandardDiseaseModelLabelValue;
import org.eclipse.stem.diseasemodels.standard.StandardFactory;
import org.eclipse.stem.diseasemodels.vector.DengueModelHostLabel;
import org.eclipse.stem.diseasemodels.vector.DengueModelHostLabelValue;
import org.eclipse.stem.diseasemodels.vector.DengueModelVectorLabel;
import org.eclipse.stem.diseasemodels.vector.DengueModelVectorLabelValue;
import org.eclipse.stem.diseasemodels.vector.SimpleDengueModel;
import org.eclipse.stem.diseasemodels.vector.VectorFactory;
import org.eclipse.stem.diseasemodels.vector.VectorPackage;
/**
* <!-- begin-user-doc --> An implementation of the model object '
* <em><b>Simple Dengue Model</b></em>'. <!-- end-user-doc -->
* <p>
* The following features are implemented:
* <ul>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getBitingRate <em>Biting Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostInfectivity1 <em>Host Infectivity1</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostInfectivity2 <em>Host Infectivity2</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostInfectivity3 <em>Host Infectivity3</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostInfectivity4 <em>Host Infectivity4</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getCrossImmunity1 <em>Cross Immunity1</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getCrossImmunity2 <em>Cross Immunity2</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getCrossImmunity3 <em>Cross Immunity3</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getCrossImmunity4 <em>Cross Immunity4</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostPrimaryIncubationRate <em>Host Primary Incubation Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostPrimaryRecoveryRate <em>Host Primary Recovery Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostPrimaryImmunityLossRate <em>Host Primary Immunity Loss Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostPrimaryDeathRate <em>Host Primary Death Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostADE1 <em>Host ADE1</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostADE2 <em>Host ADE2</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostADE3 <em>Host ADE3</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostADE4 <em>Host ADE4</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostSecondaryIncubationRate <em>Host Secondary Incubation Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostSecondaryRecoveryRate <em>Host Secondary Recovery Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getHostSecondaryDeathRate <em>Host Secondary Death Rate</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorInfectivity1 <em>Vector Infectivity1</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorInfectivity2 <em>Vector Infectivity2</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorInfectivity3 <em>Vector Infectivity3</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorInfectivity4 <em>Vector Infectivity4</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorADE1 <em>Vector ADE1</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorADE2 <em>Vector ADE2</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorADE3 <em>Vector ADE3</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorADE4 <em>Vector ADE4</em>}</li>
* <li>{@link org.eclipse.stem.diseasemodels.vector.impl.SimpleDengueModelImpl#getVectorIncubationRate <em>Vector Incubation Rate</em>}</li>
* </ul>
* </p>
*
* @generated
*/
public class SimpleDengueModelImpl extends VectorDiseaseModelImpl implements
SimpleDengueModel {
/**
* The default value of the '{@link #getBitingRate() <em>Biting Rate</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getBitingRate()
* @generated
* @ordered
*/
protected static final double BITING_RATE_EDEFAULT = 1.0;
/**
* The cached value of the '{@link #getBitingRate() <em>Biting Rate</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getBitingRate()
* @generated
* @ordered
*/
protected double bitingRate = BITING_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostInfectivity1() <em>Host Infectivity1</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity1()
* @generated
* @ordered
*/
protected static final double HOST_INFECTIVITY1_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getHostInfectivity1() <em>Host Infectivity1</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity1()
* @generated
* @ordered
*/
protected double hostInfectivity1 = HOST_INFECTIVITY1_EDEFAULT;
/**
* The default value of the '{@link #getHostInfectivity2() <em>Host Infectivity2</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity2()
* @generated
* @ordered
*/
protected static final double HOST_INFECTIVITY2_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getHostInfectivity2() <em>Host Infectivity2</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity2()
* @generated
* @ordered
*/
protected double hostInfectivity2 = HOST_INFECTIVITY2_EDEFAULT;
/**
* The default value of the '{@link #getHostInfectivity3() <em>Host Infectivity3</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity3()
* @generated
* @ordered
*/
protected static final double HOST_INFECTIVITY3_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getHostInfectivity3() <em>Host Infectivity3</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity3()
* @generated
* @ordered
*/
protected double hostInfectivity3 = HOST_INFECTIVITY3_EDEFAULT;
/**
* The default value of the '{@link #getHostInfectivity4() <em>Host Infectivity4</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity4()
* @generated
* @ordered
*/
protected static final double HOST_INFECTIVITY4_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getHostInfectivity4() <em>Host Infectivity4</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getHostInfectivity4()
* @generated
* @ordered
*/
protected double hostInfectivity4 = HOST_INFECTIVITY4_EDEFAULT;
/**
* The default value of the '{@link #getCrossImmunity1() <em>Cross Immunity1</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity1()
* @generated
* @ordered
*/
protected static final double CROSS_IMMUNITY1_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getCrossImmunity1() <em>Cross Immunity1</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity1()
* @generated
* @ordered
*/
protected double crossImmunity1 = CROSS_IMMUNITY1_EDEFAULT;
/**
* The default value of the '{@link #getCrossImmunity2() <em>Cross Immunity2</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity2()
* @generated
* @ordered
*/
protected static final double CROSS_IMMUNITY2_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getCrossImmunity2() <em>Cross Immunity2</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity2()
* @generated
* @ordered
*/
protected double crossImmunity2 = CROSS_IMMUNITY2_EDEFAULT;
/**
* The default value of the '{@link #getCrossImmunity3() <em>Cross Immunity3</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity3()
* @generated
* @ordered
*/
protected static final double CROSS_IMMUNITY3_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getCrossImmunity3() <em>Cross Immunity3</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity3()
* @generated
* @ordered
*/
protected double crossImmunity3 = CROSS_IMMUNITY3_EDEFAULT;
/**
* The default value of the '{@link #getCrossImmunity4() <em>Cross Immunity4</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity4()
* @generated
* @ordered
*/
protected static final double CROSS_IMMUNITY4_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getCrossImmunity4() <em>Cross Immunity4</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getCrossImmunity4()
* @generated
* @ordered
*/
protected double crossImmunity4 = CROSS_IMMUNITY4_EDEFAULT;
/**
* The default value of the '{@link #getHostPrimaryIncubationRate() <em>Host Primary Incubation Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostPrimaryIncubationRate()
* @generated
* @ordered
*/
protected static final double HOST_PRIMARY_INCUBATION_RATE_EDEFAULT = 0.2;
/**
* The cached value of the '{@link #getHostPrimaryIncubationRate() <em>Host Primary Incubation Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostPrimaryIncubationRate()
* @generated
* @ordered
*/
protected double hostPrimaryIncubationRate = HOST_PRIMARY_INCUBATION_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostPrimaryRecoveryRate() <em>Host Primary Recovery Rate</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getHostPrimaryRecoveryRate()
* @generated
* @ordered
*/
protected static final double HOST_PRIMARY_RECOVERY_RATE_EDEFAULT = 0.14;
/**
* The cached value of the '{@link #getHostPrimaryRecoveryRate() <em>Host Primary Recovery Rate</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getHostPrimaryRecoveryRate()
* @generated
* @ordered
*/
protected double hostPrimaryRecoveryRate = HOST_PRIMARY_RECOVERY_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostPrimaryImmunityLossRate() <em>Host Primary Immunity Loss Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostPrimaryImmunityLossRate()
* @generated
* @ordered
*/
protected static final double HOST_PRIMARY_IMMUNITY_LOSS_RATE_EDEFAULT = 0.024;
/**
* The cached value of the '{@link #getHostPrimaryImmunityLossRate() <em>Host Primary Immunity Loss Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostPrimaryImmunityLossRate()
* @generated
* @ordered
*/
protected double hostPrimaryImmunityLossRate = HOST_PRIMARY_IMMUNITY_LOSS_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostPrimaryDeathRate() <em>Host Primary Death Rate</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getHostPrimaryDeathRate()
* @generated
* @ordered
*/
protected static final double HOST_PRIMARY_DEATH_RATE_EDEFAULT = 1.0E-7;
/**
* The cached value of the '{@link #getHostPrimaryDeathRate() <em>Host Primary Death Rate</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getHostPrimaryDeathRate()
* @generated
* @ordered
*/
protected double hostPrimaryDeathRate = HOST_PRIMARY_DEATH_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostADE1() <em>Host ADE1</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE1()
* @generated
* @ordered
*/
protected static final double HOST_ADE1_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getHostADE1() <em>Host ADE1</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE1()
* @generated
* @ordered
*/
protected double hostADE1 = HOST_ADE1_EDEFAULT;
/**
* The default value of the '{@link #getHostADE2() <em>Host ADE2</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE2()
* @generated
* @ordered
*/
protected static final double HOST_ADE2_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getHostADE2() <em>Host ADE2</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE2()
* @generated
* @ordered
*/
protected double hostADE2 = HOST_ADE2_EDEFAULT;
/**
* The default value of the '{@link #getHostADE3() <em>Host ADE3</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE3()
* @generated
* @ordered
*/
protected static final double HOST_ADE3_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getHostADE3() <em>Host ADE3</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE3()
* @generated
* @ordered
*/
protected double hostADE3 = HOST_ADE3_EDEFAULT;
/**
* The default value of the '{@link #getHostADE4() <em>Host ADE4</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE4()
* @generated
* @ordered
*/
protected static final double HOST_ADE4_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getHostADE4() <em>Host ADE4</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getHostADE4()
* @generated
* @ordered
*/
protected double hostADE4 = HOST_ADE4_EDEFAULT;
/**
* The default value of the '{@link #getHostSecondaryIncubationRate() <em>Host Secondary Incubation Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostSecondaryIncubationRate()
* @generated
* @ordered
*/
protected static final double HOST_SECONDARY_INCUBATION_RATE_EDEFAULT = 0.2;
/**
* The cached value of the '{@link #getHostSecondaryIncubationRate() <em>Host Secondary Incubation Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostSecondaryIncubationRate()
* @generated
* @ordered
*/
protected double hostSecondaryIncubationRate = HOST_SECONDARY_INCUBATION_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostSecondaryRecoveryRate() <em>Host Secondary Recovery Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostSecondaryRecoveryRate()
* @generated
* @ordered
*/
protected static final double HOST_SECONDARY_RECOVERY_RATE_EDEFAULT = 0.1;
/**
* The cached value of the '{@link #getHostSecondaryRecoveryRate() <em>Host Secondary Recovery Rate</em>}' attribute.
* <!-- begin-user-doc
* --> <!-- end-user-doc -->
* @see #getHostSecondaryRecoveryRate()
* @generated
* @ordered
*/
protected double hostSecondaryRecoveryRate = HOST_SECONDARY_RECOVERY_RATE_EDEFAULT;
/**
* The default value of the '{@link #getHostSecondaryDeathRate() <em>Host Secondary Death Rate</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getHostSecondaryDeathRate()
* @generated
* @ordered
*/
protected static final double HOST_SECONDARY_DEATH_RATE_EDEFAULT = 0.00123;
/**
* The cached value of the '{@link #getHostSecondaryDeathRate() <em>Host Secondary Death Rate</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getHostSecondaryDeathRate()
* @generated
* @ordered
*/
protected double hostSecondaryDeathRate = HOST_SECONDARY_DEATH_RATE_EDEFAULT;
/**
* The default value of the '{@link #getVectorInfectivity1() <em>Vector Infectivity1</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity1()
* @generated
* @ordered
*/
protected static final double VECTOR_INFECTIVITY1_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getVectorInfectivity1() <em>Vector Infectivity1</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity1()
* @generated
* @ordered
*/
protected double vectorInfectivity1 = VECTOR_INFECTIVITY1_EDEFAULT;
/**
* The default value of the '{@link #getVectorInfectivity2() <em>Vector Infectivity2</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity2()
* @generated
* @ordered
*/
protected static final double VECTOR_INFECTIVITY2_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getVectorInfectivity2() <em>Vector Infectivity2</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity2()
* @generated
* @ordered
*/
protected double vectorInfectivity2 = VECTOR_INFECTIVITY2_EDEFAULT;
/**
* The default value of the '{@link #getVectorInfectivity3() <em>Vector Infectivity3</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity3()
* @generated
* @ordered
*/
protected static final double VECTOR_INFECTIVITY3_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getVectorInfectivity3() <em>Vector Infectivity3</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity3()
* @generated
* @ordered
*/
protected double vectorInfectivity3 = VECTOR_INFECTIVITY3_EDEFAULT;
/**
* The default value of the '{@link #getVectorInfectivity4() <em>Vector Infectivity4</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity4()
* @generated
* @ordered
*/
protected static final double VECTOR_INFECTIVITY4_EDEFAULT = 0.5;
/**
* The cached value of the '{@link #getVectorInfectivity4() <em>Vector Infectivity4</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorInfectivity4()
* @generated
* @ordered
*/
protected double vectorInfectivity4 = VECTOR_INFECTIVITY4_EDEFAULT;
/**
* The default value of the '{@link #getVectorADE1() <em>Vector ADE1</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE1()
* @generated
* @ordered
*/
protected static final double VECTOR_ADE1_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getVectorADE1() <em>Vector ADE1</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE1()
* @generated
* @ordered
*/
protected double vectorADE1 = VECTOR_ADE1_EDEFAULT;
/**
* The default value of the '{@link #getVectorADE2() <em>Vector ADE2</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE2()
* @generated
* @ordered
*/
protected static final double VECTOR_ADE2_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getVectorADE2() <em>Vector ADE2</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE2()
* @generated
* @ordered
*/
protected double vectorADE2 = VECTOR_ADE2_EDEFAULT;
/**
* The default value of the '{@link #getVectorADE3() <em>Vector ADE3</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE3()
* @generated
* @ordered
*/
protected static final double VECTOR_ADE3_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getVectorADE3() <em>Vector ADE3</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE3()
* @generated
* @ordered
*/
protected double vectorADE3 = VECTOR_ADE3_EDEFAULT;
/**
* The default value of the '{@link #getVectorADE4() <em>Vector ADE4</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE4()
* @generated
* @ordered
*/
protected static final double VECTOR_ADE4_EDEFAULT = 1.8;
/**
* The cached value of the '{@link #getVectorADE4() <em>Vector ADE4</em>}' attribute.
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @see #getVectorADE4()
* @generated
* @ordered
*/
protected double vectorADE4 = VECTOR_ADE4_EDEFAULT;
/**
* The default value of the '{@link #getVectorIncubationRate() <em>Vector Incubation Rate</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorIncubationRate()
* @generated
* @ordered
*/
protected static final double VECTOR_INCUBATION_RATE_EDEFAULT = 0.1;
/**
* The cached value of the '{@link #getVectorIncubationRate() <em>Vector Incubation Rate</em>}' attribute.
* <!-- begin-user-doc --> <!--
* end-user-doc -->
* @see #getVectorIncubationRate()
* @generated
* @ordered
*/
protected double vectorIncubationRate = VECTOR_INCUBATION_RATE_EDEFAULT;
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
*
* @generated NOT
*/
public SimpleDengueModelImpl() {
super();
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
@Override
protected EClass eStaticClass() {
return VectorPackage.Literals.SIMPLE_DENGUE_MODEL;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getBitingRate() {
return bitingRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setBitingRate(double newBitingRate) {
double oldBitingRate = bitingRate;
bitingRate = newBitingRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__BITING_RATE, oldBitingRate, bitingRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostInfectivity1() {
return hostInfectivity1;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostInfectivity1(double newHostInfectivity1) {
double oldHostInfectivity1 = hostInfectivity1;
hostInfectivity1 = newHostInfectivity1;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY1, oldHostInfectivity1, hostInfectivity1));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostInfectivity2() {
return hostInfectivity2;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostInfectivity2(double newHostInfectivity2) {
double oldHostInfectivity2 = hostInfectivity2;
hostInfectivity2 = newHostInfectivity2;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY2, oldHostInfectivity2, hostInfectivity2));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostInfectivity3() {
return hostInfectivity3;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostInfectivity3(double newHostInfectivity3) {
double oldHostInfectivity3 = hostInfectivity3;
hostInfectivity3 = newHostInfectivity3;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY3, oldHostInfectivity3, hostInfectivity3));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostInfectivity4() {
return hostInfectivity4;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostInfectivity4(double newHostInfectivity4) {
double oldHostInfectivity4 = hostInfectivity4;
hostInfectivity4 = newHostInfectivity4;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY4, oldHostInfectivity4, hostInfectivity4));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getCrossImmunity1() {
return crossImmunity1;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setCrossImmunity1(double newCrossImmunity1) {
double oldCrossImmunity1 = crossImmunity1;
crossImmunity1 = newCrossImmunity1;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY1, oldCrossImmunity1, crossImmunity1));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getCrossImmunity2() {
return crossImmunity2;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setCrossImmunity2(double newCrossImmunity2) {
double oldCrossImmunity2 = crossImmunity2;
crossImmunity2 = newCrossImmunity2;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY2, oldCrossImmunity2, crossImmunity2));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getCrossImmunity3() {
return crossImmunity3;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setCrossImmunity3(double newCrossImmunity3) {
double oldCrossImmunity3 = crossImmunity3;
crossImmunity3 = newCrossImmunity3;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY3, oldCrossImmunity3, crossImmunity3));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getCrossImmunity4() {
return crossImmunity4;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setCrossImmunity4(double newCrossImmunity4) {
double oldCrossImmunity4 = crossImmunity4;
crossImmunity4 = newCrossImmunity4;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY4, oldCrossImmunity4, crossImmunity4));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostPrimaryIncubationRate() {
return hostPrimaryIncubationRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostPrimaryIncubationRate(double newHostPrimaryIncubationRate) {
double oldHostPrimaryIncubationRate = hostPrimaryIncubationRate;
hostPrimaryIncubationRate = newHostPrimaryIncubationRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_INCUBATION_RATE, oldHostPrimaryIncubationRate, hostPrimaryIncubationRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostPrimaryRecoveryRate() {
return hostPrimaryRecoveryRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostPrimaryRecoveryRate(double newHostPrimaryRecoveryRate) {
double oldHostPrimaryRecoveryRate = hostPrimaryRecoveryRate;
hostPrimaryRecoveryRate = newHostPrimaryRecoveryRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_RECOVERY_RATE, oldHostPrimaryRecoveryRate, hostPrimaryRecoveryRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostPrimaryImmunityLossRate() {
return hostPrimaryImmunityLossRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostPrimaryImmunityLossRate(
double newHostPrimaryImmunityLossRate) {
double oldHostPrimaryImmunityLossRate = hostPrimaryImmunityLossRate;
hostPrimaryImmunityLossRate = newHostPrimaryImmunityLossRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_IMMUNITY_LOSS_RATE, oldHostPrimaryImmunityLossRate, hostPrimaryImmunityLossRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostPrimaryDeathRate() {
return hostPrimaryDeathRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostPrimaryDeathRate(double newHostPrimaryDeathRate) {
double oldHostPrimaryDeathRate = hostPrimaryDeathRate;
hostPrimaryDeathRate = newHostPrimaryDeathRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_DEATH_RATE, oldHostPrimaryDeathRate, hostPrimaryDeathRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostADE1() {
return hostADE1;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostADE1(double newHostADE1) {
double oldHostADE1 = hostADE1;
hostADE1 = newHostADE1;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE1, oldHostADE1, hostADE1));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostADE2() {
return hostADE2;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostADE2(double newHostADE2) {
double oldHostADE2 = hostADE2;
hostADE2 = newHostADE2;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE2, oldHostADE2, hostADE2));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostADE3() {
return hostADE3;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostADE3(double newHostADE3) {
double oldHostADE3 = hostADE3;
hostADE3 = newHostADE3;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE3, oldHostADE3, hostADE3));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostADE4() {
return hostADE4;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostADE4(double newHostADE4) {
double oldHostADE4 = hostADE4;
hostADE4 = newHostADE4;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE4, oldHostADE4, hostADE4));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostSecondaryIncubationRate() {
return hostSecondaryIncubationRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostSecondaryIncubationRate(
double newHostSecondaryIncubationRate) {
double oldHostSecondaryIncubationRate = hostSecondaryIncubationRate;
hostSecondaryIncubationRate = newHostSecondaryIncubationRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_INCUBATION_RATE, oldHostSecondaryIncubationRate, hostSecondaryIncubationRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostSecondaryRecoveryRate() {
return hostSecondaryRecoveryRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostSecondaryRecoveryRate(double newHostSecondaryRecoveryRate) {
double oldHostSecondaryRecoveryRate = hostSecondaryRecoveryRate;
hostSecondaryRecoveryRate = newHostSecondaryRecoveryRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_RECOVERY_RATE, oldHostSecondaryRecoveryRate, hostSecondaryRecoveryRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getHostSecondaryDeathRate() {
return hostSecondaryDeathRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setHostSecondaryDeathRate(double newHostSecondaryDeathRate) {
double oldHostSecondaryDeathRate = hostSecondaryDeathRate;
hostSecondaryDeathRate = newHostSecondaryDeathRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_DEATH_RATE, oldHostSecondaryDeathRate, hostSecondaryDeathRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorInfectivity1() {
return vectorInfectivity1;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorInfectivity1(double newVectorInfectivity1) {
double oldVectorInfectivity1 = vectorInfectivity1;
vectorInfectivity1 = newVectorInfectivity1;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY1, oldVectorInfectivity1, vectorInfectivity1));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorInfectivity2() {
return vectorInfectivity2;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorInfectivity2(double newVectorInfectivity2) {
double oldVectorInfectivity2 = vectorInfectivity2;
vectorInfectivity2 = newVectorInfectivity2;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY2, oldVectorInfectivity2, vectorInfectivity2));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorInfectivity3() {
return vectorInfectivity3;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorInfectivity3(double newVectorInfectivity3) {
double oldVectorInfectivity3 = vectorInfectivity3;
vectorInfectivity3 = newVectorInfectivity3;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY3, oldVectorInfectivity3, vectorInfectivity3));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorInfectivity4() {
return vectorInfectivity4;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorInfectivity4(double newVectorInfectivity4) {
double oldVectorInfectivity4 = vectorInfectivity4;
vectorInfectivity4 = newVectorInfectivity4;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY4, oldVectorInfectivity4, vectorInfectivity4));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorADE1() {
return vectorADE1;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorADE1(double newVectorADE1) {
double oldVectorADE1 = vectorADE1;
vectorADE1 = newVectorADE1;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE1, oldVectorADE1, vectorADE1));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorADE2() {
return vectorADE2;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorADE2(double newVectorADE2) {
double oldVectorADE2 = vectorADE2;
vectorADE2 = newVectorADE2;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE2, oldVectorADE2, vectorADE2));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorADE3() {
return vectorADE3;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorADE3(double newVectorADE3) {
double oldVectorADE3 = vectorADE3;
vectorADE3 = newVectorADE3;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE3, oldVectorADE3, vectorADE3));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorADE4() {
return vectorADE4;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorADE4(double newVectorADE4) {
double oldVectorADE4 = vectorADE4;
vectorADE4 = newVectorADE4;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE4, oldVectorADE4, vectorADE4));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public double getVectorIncubationRate() {
return vectorIncubationRate;
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
public void setVectorIncubationRate(double newVectorIncubationRate) {
double oldVectorIncubationRate = vectorIncubationRate;
vectorIncubationRate = newVectorIncubationRate;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INCUBATION_RATE, oldVectorIncubationRate, vectorIncubationRate));
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case VectorPackage.SIMPLE_DENGUE_MODEL__BITING_RATE:
return getBitingRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY1:
return getHostInfectivity1();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY2:
return getHostInfectivity2();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY3:
return getHostInfectivity3();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY4:
return getHostInfectivity4();
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY1:
return getCrossImmunity1();
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY2:
return getCrossImmunity2();
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY3:
return getCrossImmunity3();
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY4:
return getCrossImmunity4();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_INCUBATION_RATE:
return getHostPrimaryIncubationRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_RECOVERY_RATE:
return getHostPrimaryRecoveryRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_IMMUNITY_LOSS_RATE:
return getHostPrimaryImmunityLossRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_DEATH_RATE:
return getHostPrimaryDeathRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE1:
return getHostADE1();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE2:
return getHostADE2();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE3:
return getHostADE3();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE4:
return getHostADE4();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_INCUBATION_RATE:
return getHostSecondaryIncubationRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_RECOVERY_RATE:
return getHostSecondaryRecoveryRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_DEATH_RATE:
return getHostSecondaryDeathRate();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY1:
return getVectorInfectivity1();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY2:
return getVectorInfectivity2();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY3:
return getVectorInfectivity3();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY4:
return getVectorInfectivity4();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE1:
return getVectorADE1();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE2:
return getVectorADE2();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE3:
return getVectorADE3();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE4:
return getVectorADE4();
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INCUBATION_RATE:
return getVectorIncubationRate();
}
return super.eGet(featureID, resolve, coreType);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
@Override
public void eSet(int featureID, Object newValue) {
switch (featureID) {
case VectorPackage.SIMPLE_DENGUE_MODEL__BITING_RATE:
setBitingRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY1:
setHostInfectivity1((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY2:
setHostInfectivity2((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY3:
setHostInfectivity3((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY4:
setHostInfectivity4((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY1:
setCrossImmunity1((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY2:
setCrossImmunity2((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY3:
setCrossImmunity3((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY4:
setCrossImmunity4((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_INCUBATION_RATE:
setHostPrimaryIncubationRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_RECOVERY_RATE:
setHostPrimaryRecoveryRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_IMMUNITY_LOSS_RATE:
setHostPrimaryImmunityLossRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_DEATH_RATE:
setHostPrimaryDeathRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE1:
setHostADE1((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE2:
setHostADE2((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE3:
setHostADE3((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE4:
setHostADE4((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_INCUBATION_RATE:
setHostSecondaryIncubationRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_RECOVERY_RATE:
setHostSecondaryRecoveryRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_DEATH_RATE:
setHostSecondaryDeathRate((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY1:
setVectorInfectivity1((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY2:
setVectorInfectivity2((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY3:
setVectorInfectivity3((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY4:
setVectorInfectivity4((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE1:
setVectorADE1((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE2:
setVectorADE2((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE3:
setVectorADE3((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE4:
setVectorADE4((Double)newValue);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INCUBATION_RATE:
setVectorIncubationRate((Double)newValue);
return;
}
super.eSet(featureID, newValue);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
@Override
public void eUnset(int featureID) {
switch (featureID) {
case VectorPackage.SIMPLE_DENGUE_MODEL__BITING_RATE:
setBitingRate(BITING_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY1:
setHostInfectivity1(HOST_INFECTIVITY1_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY2:
setHostInfectivity2(HOST_INFECTIVITY2_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY3:
setHostInfectivity3(HOST_INFECTIVITY3_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY4:
setHostInfectivity4(HOST_INFECTIVITY4_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY1:
setCrossImmunity1(CROSS_IMMUNITY1_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY2:
setCrossImmunity2(CROSS_IMMUNITY2_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY3:
setCrossImmunity3(CROSS_IMMUNITY3_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY4:
setCrossImmunity4(CROSS_IMMUNITY4_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_INCUBATION_RATE:
setHostPrimaryIncubationRate(HOST_PRIMARY_INCUBATION_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_RECOVERY_RATE:
setHostPrimaryRecoveryRate(HOST_PRIMARY_RECOVERY_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_IMMUNITY_LOSS_RATE:
setHostPrimaryImmunityLossRate(HOST_PRIMARY_IMMUNITY_LOSS_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_DEATH_RATE:
setHostPrimaryDeathRate(HOST_PRIMARY_DEATH_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE1:
setHostADE1(HOST_ADE1_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE2:
setHostADE2(HOST_ADE2_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE3:
setHostADE3(HOST_ADE3_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE4:
setHostADE4(HOST_ADE4_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_INCUBATION_RATE:
setHostSecondaryIncubationRate(HOST_SECONDARY_INCUBATION_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_RECOVERY_RATE:
setHostSecondaryRecoveryRate(HOST_SECONDARY_RECOVERY_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_DEATH_RATE:
setHostSecondaryDeathRate(HOST_SECONDARY_DEATH_RATE_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY1:
setVectorInfectivity1(VECTOR_INFECTIVITY1_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY2:
setVectorInfectivity2(VECTOR_INFECTIVITY2_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY3:
setVectorInfectivity3(VECTOR_INFECTIVITY3_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY4:
setVectorInfectivity4(VECTOR_INFECTIVITY4_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE1:
setVectorADE1(VECTOR_ADE1_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE2:
setVectorADE2(VECTOR_ADE2_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE3:
setVectorADE3(VECTOR_ADE3_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE4:
setVectorADE4(VECTOR_ADE4_EDEFAULT);
return;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INCUBATION_RATE:
setVectorIncubationRate(VECTOR_INCUBATION_RATE_EDEFAULT);
return;
}
super.eUnset(featureID);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
@Override
public boolean eIsSet(int featureID) {
switch (featureID) {
case VectorPackage.SIMPLE_DENGUE_MODEL__BITING_RATE:
return bitingRate != BITING_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY1:
return hostInfectivity1 != HOST_INFECTIVITY1_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY2:
return hostInfectivity2 != HOST_INFECTIVITY2_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY3:
return hostInfectivity3 != HOST_INFECTIVITY3_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_INFECTIVITY4:
return hostInfectivity4 != HOST_INFECTIVITY4_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY1:
return crossImmunity1 != CROSS_IMMUNITY1_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY2:
return crossImmunity2 != CROSS_IMMUNITY2_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY3:
return crossImmunity3 != CROSS_IMMUNITY3_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__CROSS_IMMUNITY4:
return crossImmunity4 != CROSS_IMMUNITY4_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_INCUBATION_RATE:
return hostPrimaryIncubationRate != HOST_PRIMARY_INCUBATION_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_RECOVERY_RATE:
return hostPrimaryRecoveryRate != HOST_PRIMARY_RECOVERY_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_IMMUNITY_LOSS_RATE:
return hostPrimaryImmunityLossRate != HOST_PRIMARY_IMMUNITY_LOSS_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_PRIMARY_DEATH_RATE:
return hostPrimaryDeathRate != HOST_PRIMARY_DEATH_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE1:
return hostADE1 != HOST_ADE1_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE2:
return hostADE2 != HOST_ADE2_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE3:
return hostADE3 != HOST_ADE3_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_ADE4:
return hostADE4 != HOST_ADE4_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_INCUBATION_RATE:
return hostSecondaryIncubationRate != HOST_SECONDARY_INCUBATION_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_RECOVERY_RATE:
return hostSecondaryRecoveryRate != HOST_SECONDARY_RECOVERY_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__HOST_SECONDARY_DEATH_RATE:
return hostSecondaryDeathRate != HOST_SECONDARY_DEATH_RATE_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY1:
return vectorInfectivity1 != VECTOR_INFECTIVITY1_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY2:
return vectorInfectivity2 != VECTOR_INFECTIVITY2_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY3:
return vectorInfectivity3 != VECTOR_INFECTIVITY3_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INFECTIVITY4:
return vectorInfectivity4 != VECTOR_INFECTIVITY4_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE1:
return vectorADE1 != VECTOR_ADE1_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE2:
return vectorADE2 != VECTOR_ADE2_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE3:
return vectorADE3 != VECTOR_ADE3_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_ADE4:
return vectorADE4 != VECTOR_ADE4_EDEFAULT;
case VectorPackage.SIMPLE_DENGUE_MODEL__VECTOR_INCUBATION_RATE:
return vectorIncubationRate != VECTOR_INCUBATION_RATE_EDEFAULT;
}
return super.eIsSet(featureID);
}
/**
* <!-- begin-user-doc --> <!-- end-user-doc -->
* @generated
*/
@Override
public String toString() {
if (eIsProxy()) return super.toString();
StringBuffer result = new StringBuffer(super.toString());
result.append(" (bitingRate: ");
result.append(bitingRate);
result.append(", hostInfectivity1: ");
result.append(hostInfectivity1);
result.append(", hostInfectivity2: ");
result.append(hostInfectivity2);
result.append(", hostInfectivity3: ");
result.append(hostInfectivity3);
result.append(", hostInfectivity4: ");
result.append(hostInfectivity4);
result.append(", crossImmunity1: ");
result.append(crossImmunity1);
result.append(", crossImmunity2: ");
result.append(crossImmunity2);
result.append(", crossImmunity3: ");
result.append(crossImmunity3);
result.append(", crossImmunity4: ");
result.append(crossImmunity4);
result.append(", hostPrimaryIncubationRate: ");
result.append(hostPrimaryIncubationRate);
result.append(", hostPrimaryRecoveryRate: ");
result.append(hostPrimaryRecoveryRate);
result.append(", hostPrimaryImmunityLossRate: ");
result.append(hostPrimaryImmunityLossRate);
result.append(", hostPrimaryDeathRate: ");
result.append(hostPrimaryDeathRate);
result.append(", hostADE1: ");
result.append(hostADE1);
result.append(", hostADE2: ");
result.append(hostADE2);
result.append(", hostADE3: ");
result.append(hostADE3);
result.append(", hostADE4: ");
result.append(hostADE4);
result.append(", hostSecondaryIncubationRate: ");
result.append(hostSecondaryIncubationRate);
result.append(", hostSecondaryRecoveryRate: ");
result.append(hostSecondaryRecoveryRate);
result.append(", hostSecondaryDeathRate: ");
result.append(hostSecondaryDeathRate);
result.append(", vectorInfectivity1: ");
result.append(vectorInfectivity1);
result.append(", vectorInfectivity2: ");
result.append(vectorInfectivity2);
result.append(", vectorInfectivity3: ");
result.append(vectorInfectivity3);
result.append(", vectorInfectivity4: ");
result.append(vectorInfectivity4);
result.append(", vectorADE1: ");
result.append(vectorADE1);
result.append(", vectorADE2: ");
result.append(vectorADE2);
result.append(", vectorADE3: ");
result.append(vectorADE3);
result.append(", vectorADE4: ");
result.append(vectorADE4);
result.append(", vectorIncubationRate: ");
result.append(vectorIncubationRate);
result.append(')');
return result.toString();
}
@Override
public StandardDiseaseModelLabelValue computeDiseaseDeltas(STEMTime time, double t,
StandardDiseaseModelLabelValue currentState,
StandardDiseaseModelLabel diseaseLabel, long timeDelta,
DiseaseModelLabelValue returnValue) {
if (diseaseLabel instanceof DengueModelHostLabel) {
DengueModelHostLabelValue hostDelta = (DengueModelHostLabelValue) returnValue;
DengueModelHostLabelValue host = (DengueModelHostLabelValue) currentState;
double hostPopulationCount = host.getPopulationCount();
if (hostPopulationCount == 0.0) {
hostDelta.reset();
return hostDelta;
}
DengueModelVectorLabelValue vector = null;
EList<NodeLabel> allLabels = diseaseLabel.getNode().getLabels();
for (NodeLabel label : allLabels) {
if (label instanceof DengueModelVectorLabel) {
DengueModelVectorLabel vectorLabel = (DengueModelVectorLabel) label;
if (vectorLabel.getDecorator() == this) {
vector = (DengueModelVectorLabelValue) vectorLabel
.getTempValue();
}
}
}
double adjustedBitingRate = getBitingRate() * (double) timeDelta
/ (double) getTimePeriod();
double adjustedHostPrimaryIncubationRate = getHostPrimaryIncubationRate()
* (double) timeDelta / (double) getTimePeriod();
double adjustedHostPrimaryRecoveryRate = getHostPrimaryRecoveryRate()
* (double) timeDelta / (double) getTimePeriod();
double adjustedHostPrimaryImmunityLossRate = getHostPrimaryImmunityLossRate()
* (double) timeDelta / (double) getTimePeriod();
double adjustedHostPrimaryDeathRate = getHostPrimaryDeathRate()
* (double) timeDelta / (double) getTimePeriod();
double adjustedHostSecondaryIncubationRate = getHostSecondaryIncubationRate()
* (double) timeDelta / (double) getTimePeriod();
double adjustedHostSecondaryRecoveryRate = getHostSecondaryRecoveryRate()
* (double) timeDelta / (double) getTimePeriod();
double adjustedHostSecondaryDeathRate = getHostSecondaryDeathRate()
* (double) timeDelta / (double) getTimePeriod();
double fromStoE1 = getHostInfectivity1() * adjustedBitingRate
* vector.getI1() * host.getS() / hostPopulationCount;
double fromStoE2 = getHostInfectivity2() * adjustedBitingRate
* vector.getI2() * host.getS() / hostPopulationCount;
double fromStoE3 = getHostInfectivity3() * adjustedBitingRate
* vector.getI3() * host.getS() / hostPopulationCount;
double fromStoE4 = getHostInfectivity4() * adjustedBitingRate
* vector.getI4() * host.getS() / hostPopulationCount;
double fromE1toI1 = adjustedHostPrimaryIncubationRate
* host.getE1();
double fromE2toI2 = adjustedHostPrimaryIncubationRate
* host.getE2();
double fromE3toI3 = adjustedHostPrimaryIncubationRate
* host.getE3();
double fromE4toI4 = adjustedHostPrimaryIncubationRate
* host.getE4();
double fromI1toT1 = adjustedHostPrimaryRecoveryRate * host.getI1();
double fromI2toT2 = adjustedHostPrimaryRecoveryRate * host.getI2();
double fromI3toT3 = adjustedHostPrimaryRecoveryRate * host.getI3();
double fromI4toT4 = adjustedHostPrimaryRecoveryRate * host.getI4();
double fromT1toR1 = adjustedHostPrimaryImmunityLossRate
* host.getT1();
double fromT2toR2 = adjustedHostPrimaryImmunityLossRate
* host.getT2();
double fromT3toR3 = adjustedHostPrimaryImmunityLossRate
* host.getT3();
double fromT4toR4 = adjustedHostPrimaryImmunityLossRate
* host.getT4();
double beta1 = getHostADE1() * getHostInfectivity1()
* adjustedBitingRate;
double beta2 = getHostADE2() * getHostInfectivity2()
* adjustedBitingRate;
double beta3 = getHostADE3() * getHostInfectivity3()
* adjustedBitingRate;
double beta4 = getHostADE4() * getHostInfectivity4()
* adjustedBitingRate;
double fromT1ToE12 = (1 - getCrossImmunity1()) * beta2
* vector.getI2() * host.getT1() / hostPopulationCount;
double fromT1ToE13 = (1 - getCrossImmunity1()) * beta3
* vector.getI3() * host.getT1() / hostPopulationCount;
double fromT1ToE14 = (1 - getCrossImmunity1()) * beta4
* vector.getI4() * host.getT1() / hostPopulationCount;
double fromT2toE21 = (1 - getCrossImmunity2()) * beta1
* vector.getI1() * host.getT2() / hostPopulationCount;
double fromT2toE23 = (1 - getCrossImmunity2()) * beta3
* vector.getI3() * host.getT2() / hostPopulationCount;
double fromT2toE24 = (1 - getCrossImmunity2()) * beta4
* vector.getI4() * host.getT2() / hostPopulationCount;
double fromT3toE31 = (1 - getCrossImmunity3()) * beta1
* vector.getI1() * host.getT3() / hostPopulationCount;
double fromT3toE32 = (1 - getCrossImmunity3()) * beta2
* vector.getI2() * host.getT3() / hostPopulationCount;
double fromT3toE34 = (1 - getCrossImmunity3()) * beta4
* vector.getI4() * host.getT3() / hostPopulationCount;
double fromT4toE41 = (1 - getCrossImmunity4()) * beta1
* vector.getI1() * host.getT4() / hostPopulationCount;
double fromT4toE42 = (1 - getCrossImmunity4()) * beta2
* vector.getI2() * host.getT4() / hostPopulationCount;
double fromT4toE43 = (1 - getCrossImmunity4()) * beta3
* vector.getI3() * host.getT4() / hostPopulationCount;
double fromR1toE12 = beta2 * vector.getI2() * host.getR1()
/ hostPopulationCount;
double fromR1toE13 = beta3 * vector.getI3() * host.getR1()
/ hostPopulationCount;
double fromR1toE14 = beta4 * vector.getI4() * host.getR1()
/ hostPopulationCount;
double fromR2toE21 = beta1 * vector.getI1() * host.getR2()
/ hostPopulationCount;
double fromR2toE23 = beta3 * vector.getI3() * host.getR2()
/ hostPopulationCount;
double fromR2toE24 = beta4 * vector.getI4() * host.getR2()
/ hostPopulationCount;
double fromR3toE31 = beta1 * vector.getI1() * host.getR3()
/ hostPopulationCount;
double fromR3toE32 = beta2 * vector.getI2() * host.getR3()
/ hostPopulationCount;
double fromR3toE34 = beta4 * vector.getI4() * host.getR3()
/ hostPopulationCount;
double fromR4toE41 = beta1 * vector.getI1() * host.getR4()
/ hostPopulationCount;
double fromR4toE42 = beta2 * vector.getI2() * host.getR4()
/ hostPopulationCount;
double fromR4toE43 = beta3 * vector.getI3() * host.getR4()
/ hostPopulationCount;
double fromE12toI12 = adjustedHostSecondaryIncubationRate
* host.getE12();
double fromE13toI13 = adjustedHostSecondaryIncubationRate
* host.getE13();
double fromE14toI14 = adjustedHostSecondaryIncubationRate
* host.getE14();
double fromE21toI21 = adjustedHostSecondaryIncubationRate
* host.getE21();
double fromE23toI23 = adjustedHostSecondaryIncubationRate
* host.getE23();
double fromE24toI24 = adjustedHostSecondaryIncubationRate
* host.getE24();
double fromE31toI31 = adjustedHostSecondaryIncubationRate
* host.getE31();
double fromE32toI32 = adjustedHostSecondaryIncubationRate
* host.getE32();
double fromE34toI34 = adjustedHostSecondaryIncubationRate
* host.getE34();
double fromE41toI41 = adjustedHostSecondaryIncubationRate
* host.getE41();
double fromE42toI42 = adjustedHostSecondaryIncubationRate
* host.getE42();
double fromE43toI43 = adjustedHostSecondaryIncubationRate
* host.getE43();
double fromI12toR12 = adjustedHostSecondaryRecoveryRate
* host.getI12();
double fromI13toR13 = adjustedHostSecondaryRecoveryRate
* host.getI13();
double fromI14toR14 = adjustedHostSecondaryRecoveryRate
* host.getI14();
double fromI21toR21 = adjustedHostSecondaryRecoveryRate
* host.getI21();
double fromI23toR23 = adjustedHostSecondaryRecoveryRate
* host.getI23();
double fromI24toR24 = adjustedHostSecondaryRecoveryRate
* host.getI24();
double fromI31toR31 = adjustedHostSecondaryRecoveryRate
* host.getI31();
double fromI32toR32 = adjustedHostSecondaryRecoveryRate
* host.getI32();
double fromI34toR34 = adjustedHostSecondaryRecoveryRate
* host.getI34();
double fromI41toR41 = adjustedHostSecondaryRecoveryRate
* host.getI41();
double fromI42toR42 = adjustedHostSecondaryRecoveryRate
* host.getI42();
double fromI43toR43 = adjustedHostSecondaryRecoveryRate
* host.getI43();
double deathsI1 = adjustedHostPrimaryDeathRate * host.getI1();
double deathsI2 = adjustedHostPrimaryDeathRate * host.getI2();
double deathsI3 = adjustedHostPrimaryDeathRate * host.getI3();
double deathsI4 = adjustedHostPrimaryDeathRate * host.getI4();
double deathsI12 = adjustedHostSecondaryDeathRate * host.getI12();
double deathsI13 = adjustedHostSecondaryDeathRate * host.getI13();
double deathsI14 = adjustedHostSecondaryDeathRate * host.getI14();
double deathsI21 = adjustedHostSecondaryDeathRate * host.getI21();
double deathsI23 = adjustedHostSecondaryDeathRate * host.getI23();
double deathsI24 = adjustedHostSecondaryDeathRate * host.getI24();
double deathsI31 = adjustedHostSecondaryDeathRate * host.getI31();
double deathsI32 = adjustedHostSecondaryDeathRate * host.getI32();
double deathsI34 = adjustedHostSecondaryDeathRate * host.getI34();
double deathsI41 = adjustedHostSecondaryDeathRate * host.getI41();
double deathsI42 = adjustedHostSecondaryDeathRate * host.getI42();
double deathsI43 = adjustedHostSecondaryDeathRate * host.getI43();
hostDelta.setS(-fromStoE1 - fromStoE2 - fromStoE3 - fromStoE4);
hostDelta.setE1(fromStoE1 - fromE1toI1);
hostDelta.setE2(fromStoE2 - fromE2toI2);
hostDelta.setE3(fromStoE3 - fromE3toI3);
hostDelta.setE4(fromStoE4 - fromE4toI4);
hostDelta.setI1(fromE1toI1 - fromI1toT1 - deathsI1);
hostDelta.setI2(fromE2toI2 - fromI2toT2 - deathsI2);
hostDelta.setI3(fromE3toI3 - fromI3toT3 - deathsI3);
hostDelta.setI4(fromE4toI4 - fromI4toT4 - deathsI4);
hostDelta.setT1(fromI1toT1 - fromT1toR1 - fromT1ToE12 - fromT1ToE13
- fromT1ToE14);
hostDelta.setT2(fromI2toT2 - fromT2toR2 - fromT2toE21 - fromT2toE23
- fromT2toE24);
hostDelta.setT3(fromI3toT3 - fromT3toR3 - fromT3toE31 - fromT3toE32
- fromT3toE34);
hostDelta.setT4(fromI4toT4 - fromT4toR4 - fromT4toE41 - fromT4toE42
- fromT4toE43);
hostDelta.setR1(fromT1toR1 - fromR1toE12 - fromR1toE13
- fromR1toE14);
hostDelta.setR2(fromT2toR2 - fromR2toE21 - fromR2toE23
- fromR2toE24);
hostDelta.setR3(fromT3toR3 - fromR3toE31 - fromR3toE32
- fromR3toE34);
hostDelta.setR4(fromT4toR4 - fromR4toE41 - fromR4toE42
- fromR4toE43);
hostDelta.setE12(fromT1ToE12 + fromR1toE12 - fromE12toI12);
hostDelta.setE13(fromT1ToE13 + fromR1toE13 - fromE13toI13);
hostDelta.setE14(fromT1ToE14 + fromR1toE14 - fromE14toI14);
hostDelta.setE21(fromT2toE21 + fromR2toE21 - fromE21toI21);
hostDelta.setE23(fromT2toE23 + fromR2toE23 - fromE23toI23);
hostDelta.setE24(fromT2toE24 + fromR2toE24 - fromE24toI24);
hostDelta.setE31(fromT3toE31 + fromR3toE31 - fromE31toI31);
hostDelta.setE32(fromT3toE32 + fromR3toE32 - fromE32toI32);
hostDelta.setE34(fromT3toE34 + fromR3toE34 - fromE34toI34);
hostDelta.setE41(fromT4toE41 + fromR4toE41 - fromE41toI41);
hostDelta.setE42(fromT4toE42 + fromR4toE42 - fromE42toI42);
hostDelta.setE43(fromT4toE43 + fromR4toE43 - fromE43toI43);
hostDelta.setI12(fromE12toI12 - fromI12toR12);
hostDelta.setI13(fromE13toI13 - fromI13toR13);
hostDelta.setI14(fromE14toI14 - fromI14toR14);
hostDelta.setI21(fromE21toI21 - fromI21toR21);
hostDelta.setI23(fromE23toI23 - fromI23toR23);
hostDelta.setI24(fromE24toI24 - fromI24toR24);
hostDelta.setI31(fromE31toI31 - fromI31toR31);
hostDelta.setI32(fromE32toI32 - fromI32toR32);
hostDelta.setI34(fromE34toI34 - fromI34toR34);
hostDelta.setI41(fromE41toI41 - fromI41toR41);
hostDelta.setI42(fromE42toI42 - fromI42toR42);
hostDelta.setI43(fromE43toI43 - fromI43toR43);
hostDelta.setR(fromI12toR12 + fromI13toR13 + fromI14toR14
+ fromI21toR21 + fromI23toR23 + fromI24toR24 + fromI31toR31
+ fromI32toR32 + fromI34toR34 + fromI41toR41 + fromI42toR42
+ fromI43toR43);
hostDelta.setIncidence1(fromStoE1);
hostDelta.setIncidence2(fromStoE2);
hostDelta.setIncidence3(fromStoE3);
hostDelta.setIncidence4(fromStoE4);
hostDelta.setIncidence12(fromR1toE12);
hostDelta.setIncidence13(fromR1toE13);
hostDelta.setIncidence14(fromR1toE14);
hostDelta.setIncidence21(fromR2toE21);
hostDelta.setIncidence23(fromR2toE23);
hostDelta.setIncidence24(fromR2toE24);
hostDelta.setIncidence31(fromR3toE31);
hostDelta.setIncidence32(fromR3toE32);
hostDelta.setIncidence34(fromR3toE34);
hostDelta.setIncidence41(fromR4toE41);
hostDelta.setIncidence42(fromR4toE42);
hostDelta.setIncidence43(fromR4toE43);
hostDelta.setIncidence(fromStoE1 + fromStoE2 + fromStoE3
+ fromStoE4 + fromR1toE12 + fromR1toE13 + fromR1toE14
+ fromR2toE21 + fromR2toE23 + fromR2toE24 + fromR3toE31
+ fromR3toE32 + fromR3toE34 + fromR4toE41 + fromR4toE42
+ fromR4toE43);
hostDelta.setDiseaseDeaths1(deathsI1);
hostDelta.setDiseaseDeaths2(deathsI2);
hostDelta.setDiseaseDeaths3(deathsI3);
hostDelta.setDiseaseDeaths4(deathsI4);
hostDelta.setDiseaseDeaths12(deathsI12);
hostDelta.setDiseaseDeaths13(deathsI13);
hostDelta.setDiseaseDeaths14(deathsI14);
hostDelta.setDiseaseDeaths21(deathsI21);
hostDelta.setDiseaseDeaths23(deathsI23);
hostDelta.setDiseaseDeaths24(deathsI24);
hostDelta.setDiseaseDeaths31(deathsI31);
hostDelta.setDiseaseDeaths32(deathsI32);
hostDelta.setDiseaseDeaths34(deathsI34);
hostDelta.setDiseaseDeaths41(deathsI41);
hostDelta.setDiseaseDeaths42(deathsI42);
hostDelta.setDiseaseDeaths43(deathsI43);
hostDelta.setDiseaseDeaths(deathsI1 + deathsI2 + deathsI3
+ deathsI4 + deathsI12 + deathsI13 + deathsI14 + deathsI21
+ deathsI23 + deathsI24 + deathsI31 + deathsI32 + deathsI34
+ deathsI41 + deathsI42 + deathsI43);
return hostDelta;
} else if (diseaseLabel instanceof DengueModelVectorLabel) {
DengueModelVectorLabelValue vectorDelta = (DengueModelVectorLabelValue) returnValue;
DengueModelVectorLabelValue vector = (DengueModelVectorLabelValue) currentState;
if (vector.getPopulationCount() == 0.0) {
vectorDelta.reset();
return vectorDelta;
}
DengueModelHostLabelValue host = null;
DengueModelHostLabel hostLabel = null;
EList<NodeLabel> allLabels = diseaseLabel.getNode().getLabels();
for (NodeLabel label : allLabels) {
if (label instanceof DengueModelHostLabel
&& ((DengueModelHostLabel) label).getDecorator() == this) {
hostLabel = (DengueModelHostLabel) label;
host = (DengueModelHostLabelValue) hostLabel.getTempValue();
break;
}
}
double adjustedBitingRate = getBitingRate() * (double) timeDelta
/ (double) getTimePeriod();
double adjustedVectorIncubationRate = getVectorIncubationRate()
* (double) timeDelta / (double) getTimePeriod();
double fromStoE1 = 0.0;
double fromStoE2 = 0.0;
double fromStoE3 = 0.0;
double fromStoE4 = 0.0;
EList<Double> effectives = getNormalizedEffectiveInfectious(hostLabel);
double effectiveI1 = effectives.get(0);
double effectiveI12 = effectives.get(1);
double effectiveI13 = effectives.get(2);
double effectiveI14 = effectives.get(3);
double effectiveI2 = effectives.get(4);
double effectiveI21 = effectives.get(5);
double effectiveI23 = effectives.get(6);
double effectiveI24 = effectives.get(7);
double effectiveI3 = effectives.get(8);
double effectiveI31 = effectives.get(9);
double effectiveI32 = effectives.get(10);
double effectiveI34 = effectives.get(11);
double effectiveI4 = effectives.get(12);
double effectiveI41 = effectives.get(13);
double effectiveI42 = effectives.get(14);
double effectiveI43 = effectives.get(15);
// include all primary and secondary infectious compartments of host
if (host.getPopulationCount() != 0.0) {
double beta1 = getVectorInfectivity1() * adjustedBitingRate;
double beta2 = getVectorInfectivity2() * adjustedBitingRate;
double beta3 = getVectorInfectivity3() * adjustedBitingRate;
double beta4 = getVectorInfectivity4() * adjustedBitingRate;
double effectiveIX1 = effectiveI21 + effectiveI31
+ effectiveI41;
double effectiveIX2 = effectiveI12 + effectiveI32
+ effectiveI42;
double effectiveIX3 = effectiveI13 + effectiveI23
+ effectiveI43;
double effectiveIX4 = effectiveI14 + effectiveI24
+ effectiveI34;
fromStoE1 = beta1 * effectiveI1 * vector.getS()
+ getVectorADE1() * beta1 * effectiveIX1
* vector.getS();
fromStoE2 = beta2 * effectiveI2 * vector.getS()
+ getVectorADE2() * beta2 * effectiveIX2
* vector.getS();
fromStoE3 = beta3 * effectiveI3 * vector.getS()
+ getVectorADE3() * beta3 * effectiveIX3
* vector.getS();
fromStoE4 = beta4 * effectiveI4 * vector.getS()
+ getVectorADE4() * beta4 * effectiveIX4
* vector.getS();
}
double fromE1toI1 = adjustedVectorIncubationRate * vector.getE1();
double fromE2toI2 = adjustedVectorIncubationRate * vector.getE2();
double fromE3toI3 = adjustedVectorIncubationRate * vector.getE3();
double fromE4toI4 = adjustedVectorIncubationRate * vector.getE4();
vectorDelta.setS(-fromStoE1 - fromStoE2 - fromStoE3 - fromStoE4);
vectorDelta.setE1(fromStoE1 - fromE1toI1);
vectorDelta.setE2(fromStoE2 - fromE2toI2);
vectorDelta.setE3(fromStoE3 - fromE3toI3);
vectorDelta.setE4(fromStoE4 - fromE4toI4);
vectorDelta.setI1(fromE1toI1);
vectorDelta.setI2(fromE2toI2);
vectorDelta.setI3(fromE3toI3);
vectorDelta.setI4(fromE4toI4);
vectorDelta.setIncidence1(fromStoE1);
vectorDelta.setIncidence2(fromStoE2);
vectorDelta.setIncidence3(fromStoE3);
vectorDelta.setIncidence4(fromStoE4);
vectorDelta.setIncidence(fromStoE1 + fromStoE2 + fromStoE3
+ fromStoE4);
vectorDelta.setDiseaseDeaths(0.0);
return vectorDelta;
}
return null;
}
@Override
public DiseaseModelLabel createDiseaseModelLabel(String populationIdentifier) {
if (populationIdentifier.equals(vectorPopulationIdentifier)) {
return VectorFactory.eINSTANCE.createDengueModelVectorLabel();
} else {
return VectorFactory.eINSTANCE.createDengueModelHostLabel();
}
}
@Override
public DiseaseModelLabelValue createDiseaseModelLabelValue(
String populationIdentifier) {
if (populationIdentifier.equals(vectorPopulationIdentifier)) {
return VectorFactory.eINSTANCE.createDengueModelVectorLabelValue();
} else {
return VectorFactory.eINSTANCE.createDengueModelHostLabelValue();
}
}
@Override
public Infector createInfector() {
SIInfector retValue = StandardFactory.eINSTANCE.createSIInfector();
retValue.setDiseaseName(getDiseaseName());
retValue.setPopulationIdentifier(getPopulationIdentifier());
return retValue;
}
@Override
public void doModelSpecificAdjustments(LabelValue currentState) {
// Do nothing
}
/**
* Returns the effective infectious fraction for all infectious compartments
* in the following order: I1, I12, I13, I14, I2, I21, I23, I24, I3, I31,
* I32, I34, I4, I41, I42, I43.
* {@link StandardDiseaseModel#getNormalizedEffectiveInfectious(StandardDiseaseModelLabel, EList)}
* can also be used to do, but uses more memory, since {@link Double}
* objects are created for
* {@link BasicEObjectImpl#eGet(org.eclipse.emf.ecore.EStructuralFeature)}
* and
* {@link BasicEObjectImpl#eSet(org.eclipse.emf.ecore.EStructuralFeature, Object)}
* .
*
* @param diseaseLabel
* label to compute the fractions for
* @return effective infectious fraction for all infectious compartments
*/
private EList<Double> getNormalizedEffectiveInfectious(
DengueModelHostLabel diseaseLabel) {
Node node = diseaseLabel.getNode();
DengueModelHostLabelValue value = (DengueModelHostLabelValue) diseaseLabel
.getTempValue();
int count = 16;
double[] totalInfectious = new double[count];
double totalPopulation = value.getPopulationCount();
totalInfectious[0] = value.getI1();
totalInfectious[1] = value.getI12();
totalInfectious[2] = value.getI13();
totalInfectious[3] = value.getI14();
totalInfectious[4] = value.getI2();
totalInfectious[5] = value.getI21();
totalInfectious[6] = value.getI23();
totalInfectious[7] = value.getI24();
totalInfectious[8] = value.getI3();
totalInfectious[9] = value.getI31();
totalInfectious[10] = value.getI32();
totalInfectious[11] = value.getI34();
totalInfectious[12] = value.getI4();
totalInfectious[13] = value.getI41();
totalInfectious[14] = value.getI42();
totalInfectious[15] = value.getI43();
List<Edge>cEdges = (List<Edge>)edgeListObjectPool.get();
cEdges.clear();
CommonBorderRelationshipLabelImpl.getCommonBorderEdgesFromNode(node, cEdges);
for(int i=0;i<cEdges.size();++i) {
Edge borderEdge = cEdges.get(i);
// If it exists, we're looking for the label this disease model
// updates on the node at the other end of the border edge.
// sum up the changes from each connected node.
// NOTE: some of these changes could be negative
final Node otherNode = borderEdge.getOtherNode(node);
double borderLength = ((CommonBorderRelationshipLabelValue) borderEdge
.getLabel().getCurrentValue()).getBorderLength();
double otherArea = 0.0;
for (NodeLabel otherLabel : otherNode.getLabels()) {
if (otherLabel instanceof AreaLabel) {
otherArea = ((AreaLabel) otherLabel).getCurrentAreaValue()
.getArea();
break;
}
}
double mixingFactor = Math.min(characteristicMixingDistance
* borderLength / otherArea, 1.0);
for (NodeLabel otherLabel : otherNode.getLabels()) {
if (otherLabel instanceof DengueModelHostLabel) {
DengueModelHostLabel otherDiseaseLabel = (DengueModelHostLabel) otherLabel;
if (otherDiseaseLabel.getDecorator() == this
&& otherDiseaseLabel.getIdentifier().equals(
diseaseLabel.getIdentifier())) {
DengueModelHostLabelValue otherValue = (DengueModelHostLabelValue) otherDiseaseLabel
.getTempValue();
if (frequencyDependent) {
totalInfectious[0] += mixingFactor
* otherValue.getI1();
totalInfectious[1] += mixingFactor
* otherValue.getI12();
totalInfectious[2] += mixingFactor
* otherValue.getI13();
totalInfectious[3] += mixingFactor
* otherValue.getI14();
totalInfectious[4] += mixingFactor
* otherValue.getI2();
totalInfectious[5] += mixingFactor
* otherValue.getI21();
totalInfectious[6] += mixingFactor
* otherValue.getI23();
totalInfectious[7] += mixingFactor
* otherValue.getI24();
totalInfectious[8] += mixingFactor
* otherValue.getI3();
totalInfectious[9] += mixingFactor
* otherValue.getI31();
totalInfectious[10] += mixingFactor
* otherValue.getI32();
totalInfectious[11] += mixingFactor
* otherValue.getI34();
totalInfectious[12] += mixingFactor
* otherValue.getI4();
totalInfectious[13] += mixingFactor
* otherValue.getI41();
totalInfectious[14] += mixingFactor
* otherValue.getI42();
totalInfectious[15] += mixingFactor
* otherValue.getI43();
} else {
// TODO
}
totalPopulation += mixingFactor
* otherValue.getPopulationCount();
break;
}
}
}
} // for each border edge
edgeListObjectPool.release(cEdges);
List<Edge>rEdges = (List<Edge>)edgeListObjectPool.get();
rEdges.clear();
RoadTransportRelationshipLabelImpl.getRoadEdgesFromNode(node, rEdges);
for(int i=0;i<rEdges.size();++i) {
Edge roadEdge = rEdges.get(i);
// find the number of edges from the road edge - could be more than
// one
// also, roads have differenct capacities
EdgeLabel edgeLabel = roadEdge.getLabel();
double numCrossings = ((RoadTransportRelationshipLabelValue) edgeLabel
.getCurrentValue()).getNumberCrossings();
double infectiousProportion = Math.min(
roadNetworkInfectiousProportion * numCrossings, 1.0);
// If it exists, we're looking for the label this disease model
// updates on the node at the other end of the border edge.
Node otherNode = roadEdge.getOtherNode(node);
for (NodeLabel otherLabel : otherNode.getLabels()) {
if (otherLabel instanceof DengueModelHostLabel) {
DengueModelHostLabel otherDiseaseLabel = (DengueModelHostLabel) otherLabel;
if (otherDiseaseLabel.getDecorator() == this
&& otherDiseaseLabel.getIdentifier().equals(
diseaseLabel.getIdentifier())) {
DengueModelHostLabelValue otherValue = (DengueModelHostLabelValue) otherDiseaseLabel
.getTempValue();
if (frequencyDependent) {
totalInfectious[0] += infectiousProportion
* otherValue.getI1();
totalInfectious[1] += infectiousProportion
* otherValue.getI12();
totalInfectious[2] += infectiousProportion
* otherValue.getI13();
totalInfectious[3] += infectiousProportion
* otherValue.getI14();
totalInfectious[4] += infectiousProportion
* otherValue.getI2();
totalInfectious[5] += infectiousProportion
* otherValue.getI21();
totalInfectious[6] += infectiousProportion
* otherValue.getI23();
totalInfectious[7] += infectiousProportion
* otherValue.getI24();
totalInfectious[8] += infectiousProportion
* otherValue.getI3();
totalInfectious[9] += infectiousProportion
* otherValue.getI31();
totalInfectious[10] += infectiousProportion
* otherValue.getI32();
totalInfectious[11] += infectiousProportion
* otherValue.getI34();
totalInfectious[12] += infectiousProportion
* otherValue.getI4();
totalInfectious[13] += infectiousProportion
* otherValue.getI41();
totalInfectious[14] += infectiousProportion
* otherValue.getI42();
totalInfectious[15] += infectiousProportion
* otherValue.getI43();
} else {
// TODO
}
totalPopulation += infectiousProportion
* otherValue.getPopulationCount();
break;
}
}
}
} // for each road edge
edgeListObjectPool.release(rEdges);
// return the sum normalized to the total population
EList<Double> retVal = new BasicEList<Double>(count);
if (totalPopulation > 0.0) {
for (double infectious : totalInfectious) {
retVal.add(infectious / totalPopulation);
}
} else {
retVal.addAll(Collections.nCopies(count, 0.0));
}
return retVal;
}
@Override
public boolean isDeterministic() {
return true;
}
} // SimpleDengueModelImpl