Package microsim.statistics.functions
Class MovingAverageArrayFunction
java.lang.Object
microsim.statistics.functions.AbstractFunction
microsim.statistics.functions.AbstractArrayFunction
microsim.statistics.functions.MovingAverageArrayFunction
- All Implemented Interfaces:
EventListener,IDoubleSource,IUpdatableSource
This class computes the average of the last given number of values in an array taken from a data source.
The mean function return always a double value, so it implements the
IDoubleSource interface and the standard IDoubleSource one.
Title: JAS
Description: Java Agent-based Simulation library
Copyright (C) 2002 Michele Sonnessa
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA.- Author:
- Michele Sonnessa and Ross Richardson
-
Nested Class Summary
Nested classes/interfaces inherited from interface microsim.statistics.IDoubleSource
IDoubleSource.Variables -
Field Summary
FieldsFields inherited from class microsim.statistics.functions.AbstractArrayFunction
dblSource, fltSource, intSource, lngSource, type, TYPE_DBL, TYPE_FLT, TYPE_INT, TYPE_LNGFields inherited from class microsim.statistics.functions.AbstractFunction
timeChecker -
Constructor Summary
ConstructorsConstructorDescriptionMovingAverageArrayFunction(IDoubleArraySource source, int window) Create a count function on a double array source.MovingAverageArrayFunction(IFloatArraySource source, int window) Create a count function on a float array source.MovingAverageArrayFunction(IIntArraySource source, int window) Create a count function on an integer array source.MovingAverageArrayFunction(ILongArraySource source, int window) Create a count function on a long array source. -
Method Summary
Modifier and TypeMethodDescriptionvoidapply(double[] data) Apply the function on a the given array of double values.voidapply(float[] data) Apply the function on a the given array of float values.voidapply(int[] data) Apply the function on a the given array of integer values.voidapply(long[] data) Apply the function on a the given array of long values.doublegetDoubleValue(Enum<?> variableID) Return the double value corresponding to the given variableIDMethods inherited from class microsim.statistics.functions.AbstractArrayFunction
applyFunctionMethods inherited from class microsim.statistics.functions.AbstractFunction
isCheckingTime, onEvent, setCheckingTime, updateSource
-
Field Details
-
mean
protected double mean -
window
protected int window
-
-
Constructor Details
-
MovingAverageArrayFunction
Create a count function on a float array source.- Parameters:
source- The data source.
-
MovingAverageArrayFunction
Create a count function on an integer array source.- Parameters:
source- The data source.
-
MovingAverageArrayFunction
Create a count function on a long array source.- Parameters:
source- The data source.
-
MovingAverageArrayFunction
Create a count function on a double array source.- Parameters:
source- The data source.
-
-
Method Details
-
apply
public void apply(double[] data) Description copied from class:AbstractArrayFunctionApply the function on a the given array of double values.- Overrides:
applyin classAbstractArrayFunction- Parameters:
data- A source array of values.
-
apply
public void apply(float[] data) Description copied from class:AbstractArrayFunctionApply the function on a the given array of float values.- Overrides:
applyin classAbstractArrayFunction- Parameters:
data- A source array of values.
-
apply
public void apply(int[] data) Description copied from class:AbstractArrayFunctionApply the function on a the given array of integer values.- Overrides:
applyin classAbstractArrayFunction- Parameters:
data- A source array of values.
-
apply
public void apply(long[] data) Description copied from class:AbstractArrayFunctionApply the function on a the given array of long values.- Overrides:
applyin classAbstractArrayFunction- Parameters:
data- A source array of values.
-
getDoubleValue
Description copied from interface:IDoubleSourceReturn the double value corresponding to the given variableID- Specified by:
getDoubleValuein interfaceIDoubleSource- Parameters:
variableID- A unique identifier for a variable.- Returns:
- The current double value of the required variable.
-