name.milesparker.epi.region
Class City

java.lang.Object
  extended by org.ascape.model.AscapeObject
      extended by org.ascape.model.Agent
          extended by org.ascape.model.LocatedAgent
              extended by org.ascape.model.Cell
                  extended by org.ascape.model.CellOccupant
                      extended by org.ascape.model.Scape
                          extended by name.milesparker.epi.region.City
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.lang.Iterable, java.util.Collection, java.util.EventListener, ControlListener, ScapeListener, Location, Node, SpaceContext, HasName, RandomFunctions, IGraphicsAdapted
Direct Known Subclasses:
City3D

public class City
extends Scape
implements IGraphicsAdapted

City Java Implementation. A simple model of epidemic dynamics. We define individual agents with different disease states. The progression of disease moves from succeptible to exposed to infectious (either symptomatic or asymptomatic) to some outcome state. Agents can transmit infection to their immediate neighbors. For some background on the general approach, see Joshua M. Epstein. "Generative Social Science". 2006. Princeton. Copyright 2009, Miles Parker. Released under Eclipse Public License. All uses should be attributed. Generated by AMF for model: EpidemicRegional.metaabm in project: org.eclipse.amp.amf.examples.escape

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.ascape.model.Scape
Scape.ConditionalIterator, Scape.DrawFeatureObservable
 
Field Summary
 
Fields inherited from class org.ascape.model.Scape
AGENT_ORDER, agentsPerIteration, ALL_AGENTS, CLEAR_STATS_RULE, COLLECT_STATS_RULE, COMPARE_ORDERED_QUALIFIERS, COMPLETE_TOUR, copyrightAndCredits, CREATE_GRAPHIC_VIEW_RULE, CREATE_RULE, CREATE_SCAPE_RULE, CREATE_VIEW_RULE, EXECUTE_RULES_RULE, INITIAL_RULES_RULE, initialRules, prototypeAgent, REPEATED_DRAW, RULE_ORDER, version
 
Fields inherited from class org.ascape.model.CellOccupant
PLAY_HOST_RULE, RANDOM_WALK_AVAILABLE_RULE
 
Fields inherited from class org.ascape.model.Cell
CALCULATE_NEIGHBORS_RULE, neighbors, PLAY_NEIGHBORS_RULE, PLAY_RANDOM_NEIGHBOR_RULE
 
Fields inherited from class org.ascape.model.LocatedAgent
agentSize, coordinate, MOVE_RANDOM_LOCATION_RULE, RANDOM_WALK_RULE, thisUpdate
 
Fields inherited from class org.ascape.model.Agent
DEATH_RULE, FISSIONING_RULE, FORCE_DIE_RULE, FORCE_FISSION_RULE, FORCE_MOVE_RULE, INITIALIZE_RULE, ITERATE_AND_UPDATE_RULE, ITERATE_RULE, METABOLISM_RULE, MOVEMENT_RULE, PLAY_OTHER, UPDATE_RULE
 
Fields inherited from class org.ascape.model.AscapeObject
ARBITRARY_SEED, name, PLATFORM_DEFAULT_COLOR, scape
 
Constructor Summary
City()
          Constructs a new City.
 
Method Summary
 void calculateTimeStep(int timeStep)
          A simple model of epidemic dynamics.
 java.lang.Object clone()
          Clones the agent, ensuring that a unique id is assigned.
protected  void create2DViews()
           
protected  void createChartViews()
           
 void createGraphicViews()
          Creates UI views for City.
protected  void createGraphViews()
           
protected  Individual createIndividualPrototype()
          Create an instance of Individual that will be used to populate the individualScape.
 void createScape()
          Creates the members of City.
 java.util.List<IAgentChild> getChildren()
           
 CommunityInfectionStatusEnum getCommunityInfectionStatus()
          Gets the Community Infection Status property for City.
 IGraphicsAdapter getGraphicsAdapter()
           
 int getIndividualCount()
          Gets the Individual Count property for City.
 Scape getIndividualScape()
          Returns the Scape containing Individuals.
 int getLocationCount()
          Gets the Location Count property for City.
 Scape getMap()
          Gets the Map property for City.
 int[] getMapDimensions()
          Gets the Dimensions property for Map.
 int getMapHeight()
          Gets the Height property for Map.
 int getMapWidth()
          Gets the Width property for Map.
 java.lang.String getName()
           
 int getPeriodsperDay()
          Gets the Periods per Day property for City.
 Region getRegion()
           
 long getUID()
           
static void main(java.lang.String[] args)
           
 void scapeSetup(ScapeEvent scapeEvent)
           
 void setCommunityInfectionStatus(CommunityInfectionStatusEnum _communityInfectionStatus)
          Sets the Community Infection Status property for City.
 void setIndividualCount(int _individualCount)
          Sets the Individual Count property for City.
 void setLocationCount(int _locationCount)
          Sets the Location Count property for City.
 void setMap(Scape _map)
          Sets the Map property for City.
 void setMapDimensions(int[] _mapDimensions)
          Sets the Dimensions property for Map.
 void setMapHeight(int _mapHeight)
          Sets the Height property for Map.
 void setMapWidth(int _mapWidth)
          Sets the Width property for Map.
 void setPeriodsperDay(int _periodsperDay)
          Sets the Periods per Day property for City.
 void setupLocation()
          Setup Location Initialization.
 void startSimulationAgentChild(int timeStep)
          A simple model of epidemic dynamics.
 
Methods inherited from class org.ascape.model.Scape
add, add, add, add, addAll, addDrawFeature, addInitialRule, addInitialRule, addRule, addRule, addScapeListener, addScapeListenerFirst, addStatCollector, addStatCollectorIfNew, addStatCollectors, addView, addView, addView, addViews, addViews, addViews, assignParameters, assignParameters, calculateDistance, calculateDistance, clear, construct, contains, containsAll, contentsToString, countWithin, createNonGraphicViews, createSelfView, createViews, createViews, environmentQuiting, execute, execute, executeOnMembers, executeOnMembers, executeOnMembers, executeOnMembers, executeOnRoot, executeOnRoot, find, findMaximum, findMaximum, findMaximumWithin, findMinimum, findMinimum, findMinimumWithin, findNearest, findRandom, findRandom, findRandom, findRandomCoordinate, findWithin, get, get, getAgentsPerIteration, getAllScapes, getCollectStats, getData, getDescription, getDrawFeatures, getDrawFeaturesObservable, getEnvironment, getExecutionOrder, getExecutionStyle, getExtent, getHome, getHTMLDescription, getInitialRules, getIteration, getIterationsPerRedraw, getModel, getPausePeriod, getPeriod, getPeriodDescription, getPeriodName, getPrototype, getPrototypeAgent, getRoot, getRules, getRunner, getScapeListeners, getSize, getSpace, getStartPeriod, getStatCollectors, getStopPeriod, getSuperScape, getThreadCount, getUIEnvironment, getUserEnvironment, hasWithin, initialize, isAllViewsUpdated, isAutoCreate, isCellsRequestUpdates, isEmpty, isGraphic, isHome, isLifeOfScape, isListenersAndMembersCurrent, isMembersActive, isMutable, isPaused, isPeriodic, isPopulateOnCreate, isRoot, isRunning, isScapeListener, isSerializable, isStartOnOpen, isUpdateNeeded, isValidPeriod, isViewSelf, iterator, listenerOrMemberUpdated, listenerUpdated, memberUpdated, moveAway, moveToward, newAgent, newAgent, notifyViews, notifyViews, populate, remove, remove, removeAll, removeDrawFeature, removeScapeListener, respondControl, respondDrawFeature, retainAll, retrieveAllAccessors, retrieveAllAccessorsOrdered, retrieveModelAccessorsOrdered, save, save, scapeAdded, scapeClosing, scapeDeserialized, scapeInitialized, scapeIterated, scapeIterator, scapeIterator, scapeIterators, scapeNotification, scapeRandomIterator, scapeRemoved, scapeStarted, scapeStopped, search, searchMax, searchMin, set, set, set, set, setAgentsPerIteration, setAutoCreate, setAutoRestart, setCellsRequestUpdates, setCollectStats, setCollectStats, setDescription, setEarliestPeriod, setExecutionOrder, setExecutionStyle, setExtent, setExtent, setExtent, setHome, setHTMLDescription, setInitialRules, setIterationsPerRedraw, setIterationsPerRedraw, setLatestPeriod, setMembersActive, setPaused, setPausePeriod, setPeriodic, setPeriodName, setPopulateOnCreate, setPrototypeAgent, setRunner, setRunning, setSerializable, setSize, setSpace, setStartOnOpen, setStartPeriod, setStopPeriod, setSuperScape, setThreadCount, setViewSelf, size, toArray, toArray, toString, withinIterator
 
Methods inherited from class org.ascape.model.CellOccupant
die, findAvailableNeighbors, findNearest, findNearest, findNearest, findNearest, findNearest, findNeighbors, findNeighborsOnHost, findRandomAvailableNeighbor, findRandomNeighbor, findRandomNeighborOnHost, findWithin, findWithin, findWithin, getCoordinate, getHostCell, getHostScape, leave, moveAway, moveTo, moveToRandomLocation, moveToward, playNeighbors, playRandomNeighbor, randomWalk, randomWalkAvailable, setHostCell, setHostScape
 
Methods inherited from class org.ascape.model.Cell
calculateNeighbors, countNeighbors, findOccupants, findRelative, getDistance, getNeighbors, getNeighbors, getNetwork, getOccupant, hostedCondition, isAvailable, removeOccupant, setNeighbors, setNeighborsList, setNetwork, setOccupant
 
Methods inherited from class org.ascape.model.LocatedAgent
calculateDistance, calculateDistance, countWithin, countWithin, countWithin, findMaximumWithin, findWithin, getAgentSize, hasWithin, hasWithin, hasWithin, isUpdateNeeded, moveAway, moveAway, moveTo, moveToward, moveToward, requestUpdate, requestUpdateNext, setAgentSize, setCoordinate
 
Methods inherited from class org.ascape.model.Agent
clearDeleteMarker, death, deathCondition, execute, execute, fission, fissionCondition, fissioning, getColor, getColor, getImage, getImage, getPlatformColor, isDelete, isInitialized, iterate, markForDeletion, metabolism, move, movement, movementCondition, play, scapeCreated, setInitialized, setScape, update
 
Methods inherited from class org.ascape.model.AscapeObject
diffDeep, diffDeep, diffDeepBFS, diffDeepDFS, diffDeepValidate, diffDeepVisit, equalsDeep, equalsDeep, equalsDeep, getComparisonStream, getRandom, getRandomSeed, getScape, randomInRange, randomInRange, randomIs, randomToLimit, reseed, setComparisonStream, setName, setRandom, setRandomSeed
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.Collection
equals, hashCode
 
Methods inherited from interface org.ascape.model.event.ScapeListener
getScape
 
Methods inherited from interface org.ascape.model.space.Location
clearDeleteMarker, isDelete, markForDeletion, setCoordinate
 

Constructor Detail

City

public City()
Constructs a new City.

Method Detail

getChildren

public java.util.List<IAgentChild> getChildren()

getUID

public long getUID()


clone

public java.lang.Object clone()
Clones the agent, ensuring that a unique id is assigned.

Specified by:
clone in interface ScapeListener
Specified by:
clone in interface Location
Overrides:
clone in class Scape
Returns:
the object

createIndividualPrototype

protected Individual createIndividualPrototype()
Create an instance of Individual that will be used to populate the individualScape. Overide to customize the prototype, for example to change the views created for a member scape.


createScape

public void createScape()
Creates the members of City.

Overrides:
createScape in class Scape
See Also:
Scape.setPopulateOnCreate(boolean)

createGraphicViews

public void createGraphicViews()
Creates UI views for City.

Overrides:
createGraphicViews in class Scape

scapeSetup

public void scapeSetup(ScapeEvent scapeEvent)

Specified by:
scapeSetup in interface ScapeListener
Overrides:
scapeSetup in class Scape
Parameters:
scapeEvent - the associated scape event

getIndividualScape

public Scape getIndividualScape()
Returns the Scape containing Individuals.


createChartViews

protected void createChartViews()


create2DViews

protected void create2DViews()


createGraphViews

protected void createGraphViews()


getGraphicsAdapter

public IGraphicsAdapter getGraphicsAdapter()

Specified by:
getGraphicsAdapter in interface IGraphicsAdapted

main

public static void main(java.lang.String[] args)


getRegion

public Region getRegion()


startSimulationAgentChild

public void startSimulationAgentChild(int timeStep)
A simple model of epidemic dynamics. We define individual agents with different disease states. The progression of disease moves from succeptible to exposed to infectious (either symptomatic or asymptomatic) to some outcome state. Agents can transmit infection to their immediate neighbors. For some background on the general approach, see Joshua M. Epstein. "Generative Social Science". 2006. Princeton. Copyright 2009, Miles Parker. Released under Eclipse Public License. All uses should be attributed.


calculateTimeStep

public void calculateTimeStep(int timeStep)
A simple model of epidemic dynamics. We define individual agents with different disease states. The progression of disease moves from succeptible to exposed to infectious (either symptomatic or asymptomatic) to some outcome state. Agents can transmit infection to their immediate neighbors. For some background on the general approach, see Joshua M. Epstein. "Generative Social Science". 2006. Princeton. Copyright 2009, Miles Parker. Released under Eclipse Public License. All uses should be attributed.


setupLocation

public void setupLocation()
Setup Location Initialization. Executed once at the beginning of each model run.


getIndividualCount

public int getIndividualCount()
Gets the Individual Count property for City.

Returns:
The number of individuals to create.

setIndividualCount

public void setIndividualCount(int _individualCount)
Sets the Individual Count property for City. The number of individuals to create.

Parameters:
_individualCount - the new Individual Count value

getPeriodsperDay

public int getPeriodsperDay()
Gets the Periods per Day property for City.

Returns:

setPeriodsperDay

public void setPeriodsperDay(int _periodsperDay)
Sets the Periods per Day property for City.

Parameters:
_periodsperDay - the new Periods per Day value

getLocationCount

public int getLocationCount()
Gets the Location Count property for City.

Returns:
The number of locations to create.

setLocationCount

public void setLocationCount(int _locationCount)
Sets the Location Count property for City. The number of locations to create.

Parameters:
_locationCount - the new Location Count value

getCommunityInfectionStatus

public CommunityInfectionStatusEnum getCommunityInfectionStatus()
Gets the Community Infection Status property for City.

Returns:

setCommunityInfectionStatus

public void setCommunityInfectionStatus(CommunityInfectionStatusEnum _communityInfectionStatus)
Sets the Community Infection Status property for City.

Parameters:
_communityInfectionStatus - the new Community Infection Status value

getMapDimensions

public int[] getMapDimensions()
Gets the Dimensions property for Map.

Returns:
The size of each dimension.

setMapDimensions

public void setMapDimensions(int[] _mapDimensions)
Sets the Dimensions property for Map. The size of each dimension.

Parameters:
_mapDimensions - the new Dimensions value

getMapWidth

public int getMapWidth()
Gets the Width property for Map.

Returns:
The horizontal extent of the space.

setMapWidth

public void setMapWidth(int _mapWidth)
Sets the Width property for Map. The horizontal extent of the space.

Parameters:
_mapWidth - the new Width value

getMapHeight

public int getMapHeight()
Gets the Height property for Map.

Returns:
The vertical extent of the space.

setMapHeight

public void setMapHeight(int _mapHeight)
Sets the Height property for Map. The vertical extent of the space.

Parameters:
_mapHeight - the new Height value

getMap

public Scape getMap()
Gets the Map property for City.

Returns:

setMap

public void setMap(Scape _map)
Sets the Map property for City.

Parameters:
_map - the new Map value

getName

public java.lang.String getName()

Specified by:
getName in interface SpaceContext
Specified by:
getName in interface HasName
Overrides:
getName in class Scape
Returns:
the name