uchicago.src.repastdemos.rabbitPopulation
Class RabbitPopulation

java.lang.Object
  extended by uchicago.src.sim.network.DefaultNode
      extended by uchicago.src.sim.network.DefaultDrawableNode
          extended by uchicago.src.repastdemos.rabbitPopulation.RabbitPopulation
All Implemented Interfaces:
CustomProbeable, Drawable2DGridNode, DrawableNonGridNode, Moveable, Named, NonGridDrawable, Node

public class RabbitPopulation
extends DefaultDrawableNode
implements CustomProbeable, Named

Calculates the current population of rabbits based on the current number of births and eaths. This encapsulates the population equation in the Rabbit Population model. The equation is population + (births - deaths) * dt

Version:
$Revision: 1.1 $ $Date: 2005/08/12 20:04:58 $
Author:
Nick Collier

Nested Class Summary
 
Nested classes/interfaces inherited from class uchicago.src.sim.network.DefaultNode
DefaultNode.OrderedHashMap
 
Field Summary
 
Fields inherited from class uchicago.src.sim.network.DefaultDrawableNode
item
 
Fields inherited from class uchicago.src.sim.network.DefaultNode
inEdges, inMap, label, outEdges, outMap
 
Constructor Summary
RabbitPopulation(Schedule schedule)
          Creates a rabbit population using the specified schedule.
 
Method Summary
 double getBirths()
           
 double getDeaths()
           
 CEquation getEquation()
           
 java.lang.String getName()
           
 double getPopulation()
           
 java.lang.String[] getProbedProperties()
          Gets the names of the properties that are allowed to be probed.
 void init(Births births, Deaths deaths)
          Initializes this RabbitPopulation with the specified births and deaths.
 void setEquation(CEquation equation)
           
 void setPopulation(double population)
           
 void step()
           
 
Methods inherited from class uchicago.src.sim.network.DefaultDrawableNode
allowResizing, calcSize, contains, draw, getBorderColor, getBorderWidth, getColor, getFont, getHeight, getLabelColor, getNode, getWidth, getX, getY, setBorderColor, setBorderWidth, setColor, setDrawable, setDrawableNoCopy, setFont, setHeight, setLabelColor, setNodeLabel, setWidth, setX, setX, setY, setY
 
Methods inherited from class uchicago.src.sim.network.DefaultNode
addInEdge, addInEdges, addOutEdge, addOutEdges, clearInEdges, clearOutEdges, getEdgesFrom, getEdgesTo, getFromNodes, getId, getInDegree, getInEdges, getInNodes, getNodeLabel, getNumInEdges, getNumOutEdges, getOutDegree, getOutEdges, getOutNodes, getRandomFromNode, getRandomNodeIn, getRandomNodeOut, getRandomToNode, getToNodes, hasEdgeFrom, hasEdgeTo, hasEdgeToOrFrom, makeRandomInEdge, makeRandomOutEdge, removeEdgesFrom, removeEdgesTo, removeInEdge, removeOutEdge
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface uchicago.src.sim.gui.DrawableNonGridNode
getOutEdges
 
Methods inherited from interface uchicago.src.sim.gui.Drawable2DGridNode
getOutEdges
 

Constructor Detail

RabbitPopulation

public RabbitPopulation(Schedule schedule)
Creates a rabbit population using the specified schedule.

Parameters:
schedule -
Method Detail

init

public void init(Births births,
                 Deaths deaths)
Initializes this RabbitPopulation with the specified births and deaths. These are queried when the CEquation encapsulated by this RabbitPopulation is evaluated.

Parameters:
births -
deaths -

getEquation

public CEquation getEquation()

setEquation

public void setEquation(CEquation equation)

getPopulation

public double getPopulation()

setPopulation

public void setPopulation(double population)

getBirths

public double getBirths()

getDeaths

public double getDeaths()

step

public void step()

getName

public java.lang.String getName()
Specified by:
getName in interface Named
Returns:
the name of this object

getProbedProperties

public java.lang.String[] getProbedProperties()
Description copied from interface: CustomProbeable
Gets the names of the properties that are allowed to be probed. The property names returned by this method should be reflect the accessor and mutator method names. For example, given getAge and setAge, an appropriate property name would be Age.

Specified by:
getProbedProperties in interface CustomProbeable
Returns:
an array of the property names.