SSJ
V. labo.

umontreal.iro.lecuyer.simevents
Class Accumulate

java.lang.Object
  extended by umontreal.iro.lecuyer.stat.StatProbe
      extended by umontreal.iro.lecuyer.simevents.Accumulate
All Implemented Interfaces:
Cloneable

public class Accumulate
extends StatProbe
implements Cloneable

A subclass of StatProbe, for collecting statistics on a variable that evolves in simulation time, with a piecewise-constant trajectory. Each time the variable changes its value, the method update must be called to inform the probe of the new value. The probe can be reinitialized by init.


Constructor Summary
Accumulate()
          Constructs a new Accumulate statistical probe using the default simulator and initializes it by invoking init().
Accumulate(Simulator inSim)
          Constructs a new Accumulate statistical probe linked to the given simulator, and initializes it by invoking init().
Accumulate(Simulator inSim, String name)
          Constructs-initializes a new Accumulate statistical probe with name name and initial time 0.
Accumulate(String name)
          Constructs and initializes a new Accumulate statistical probe with name name and initial time 0, using the default simulator.
 
Method Summary
 double average()
          Returns the time-average since the last initialization to the last call to update.
 Accumulate clone()
          Clone this object.
 double getInitTime()
          Returns the initialization time for this object.
 double getLastTime()
          Returns the last update time for this object.
 double getLastValue()
          Returns the value passed to this probe by the last call to its update method (or the initial value if update was never called after init).
 void init()
          Initializes the statistical collector and puts the current value of the corresponding variable to 0.
 void init(double x)
          Same as init followed by update(x).
 String report()
          .
 void setSimulator(Simulator sim)
          Sets the simulator associated with this probe to sim.
 String shortReport()
          .
 String shortReportHeader()
          .
 Simulator simulator()
          Returns the simulator associated with this statistical probe.
 double sum()
          .
 void update()
          Updates the accumulator using the last value passed to update.
 void update(double x)
          Gives a new observation x to the statistical collector.
 
Methods inherited from class umontreal.iro.lecuyer.stat.StatProbe
addObservationListener, clearObservationListeners, getName, isBroadcasting, isCollecting, max, min, notifyListeners, removeObservationListener, report, report, setBroadcasting, setCollecting, setName
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Accumulate

public Accumulate()
Constructs a new Accumulate statistical probe using the default simulator and initializes it by invoking init().


Accumulate

public Accumulate(Simulator inSim)
Constructs a new Accumulate statistical probe linked to the given simulator, and initializes it by invoking init().

Parameters:
inSim - the simulator of the current variable

Accumulate

public Accumulate(String name)
Constructs and initializes a new Accumulate statistical probe with name name and initial time 0, using the default simulator.


Accumulate

public Accumulate(Simulator inSim,
                  String name)
Constructs-initializes a new Accumulate statistical probe with name name and initial time 0.

Parameters:
name - descriptive name for the probe
inSim - the simulator of the current variable
Method Detail

init

public void init()
Initializes the statistical collector and puts the current value of the corresponding variable to 0. Note: the initialization time, the last update time and the simulation time are not reset to 0 by this method. For this, Sim.init() must be used.

Specified by:
init in class StatProbe

init

public void init(double x)
Same as init followed by update(x).

Parameters:
x - initial value of the probe

update

public void update()
Updates the accumulator using the last value passed to update.


update

public void update(double x)
Gives a new observation x to the statistical collector. If broadcasting to observers is activated for this object, this method will also transmit the new information to the registered observers by invoking the methods notifyListeners.

Parameters:
x - new observation given to the probe

sum

public double sum()
Description copied from class: StatProbe
. \begin{tabb}Returns the sum cumulated so far for this probe.
 The meaning of thi...
 ...turns 0
 if the probe was not updated since the last initialization.
 \end{tabb}
the sum for this probe

Overrides:
sum in class StatProbe

average

public double average()
Returns the time-average since the last initialization to the last call to update.

Specified by:
average in class StatProbe

shortReportHeader

public String shortReportHeader()
Description copied from class: StatProbe
. \begin{tabb}Returns a string containing
 the name of the values returned in the ...
 ...xttt{(String,StatProbe[])}
 to get a report with aligned probe names.
 \end{tabb}
the header string for the short reports.

Specified by:
shortReportHeader in class StatProbe

shortReport

public String shortReport()
Description copied from class: StatProbe
. \begin{tabb}Formats and returns a short, one-line report
 about this statistical...
 ...as on the
 parameters set by the user through probe-specific methods.
 \end{tabb}
the short report for the probe.

Specified by:
shortReport in class StatProbe

report

public String report()
Description copied from class: StatProbe
. \begin{tabb}Returns a string containing a report for this statistical
 collector...
 ...as on the parameters set by the user through probe-specific methods.
 \end{tabb}
a report for this probe, represented as a string

Specified by:
report in class StatProbe

getInitTime

public double getInitTime()
Returns the initialization time for this object. This is the simulation time when init was called for the last time.

Returns:
the initialization time for this object

getLastTime

public double getLastTime()
Returns the last update time for this object. This is the simulation time of the last call to update or the initialization time if update was never called after init.

Returns:
the last update time of this object

getLastValue

public double getLastValue()
Returns the value passed to this probe by the last call to its update method (or the initial value if update was never called after init).

Returns:
the last update value for this object

simulator

public Simulator simulator()
Returns the simulator associated with this statistical probe.

Returns:
the associated simulator.

setSimulator

public void setSimulator(Simulator sim)
Sets the simulator associated with this probe to sim. One should call init after this method to reset the statistical probe.

Parameters:
sim - the simulator of this probe

clone

public Accumulate clone()
Clone this object.

Overrides:
clone in class StatProbe

SSJ
V. labo.

To submit a bug or ask questions, send an e-mail to Pierre L'Ecuyer.