ca.nengo.math.impl
Class PiecewiseConstantFunction

java.lang.Object
  extended by ca.nengo.math.impl.AbstractFunction
      extended by ca.nengo.math.impl.PiecewiseConstantFunction
All Implemented Interfaces:
Function, java.io.Serializable, java.lang.Cloneable

public class PiecewiseConstantFunction
extends AbstractFunction

A one-dimensional function for which the output is constant between a finite number of discontinuities. TODO: unit test

Author:
Bryan Tripp
See Also:
Serialized Form

Field Summary
 
Fields inherited from class ca.nengo.math.impl.AbstractFunction
DIMENSION_PROPERTY
 
Constructor Summary
PiecewiseConstantFunction(float[] discontinuities, float[] values)
           
 
Method Summary
 Function clone()
           
 Configuration getConfiguration()
           
 float[] getDiscontinuities()
           
 int getNumDiscontinuities()
           
 float[] getValues()
           
static void main(java.lang.String[] args)
           
 float map(float[] from)
           
 void setDiscontinuities(float[] discontinuities)
           
 void setNumDiscontinuities(int num)
           
 void setValues(float[] values)
           
 
Methods inherited from class ca.nengo.math.impl.AbstractFunction
getDimension, multiMap
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PiecewiseConstantFunction

public PiecewiseConstantFunction(float[] discontinuities,
                                 float[] values)
Parameters:
discontinuities - Ordered points x at which the function is y = f(x) is discontinuous
values - Values y below x1 and above x1..xn
Method Detail

getConfiguration

public Configuration getConfiguration()
Returns:
Custom configuration

getNumDiscontinuities

public int getNumDiscontinuities()
Returns:
Number of discontinuities

setNumDiscontinuities

public void setNumDiscontinuities(int num)
Parameters:
num - New number of discontinuities

getDiscontinuities

public float[] getDiscontinuities()
Returns:
Ordered points x at which the function is y = f(x) is discontinuous

setDiscontinuities

public void setDiscontinuities(float[] discontinuities)
Parameters:
discontinuities - Ordered points x at which the function is y = f(x) is discontinuous

getValues

public float[] getValues()
Returns:
Values y below x1 and above x1..xn

setValues

public void setValues(float[] values)
Parameters:
values - Values y below x1 and above x1..xn

map

public float map(float[] from)
Specified by:
map in interface Function
Specified by:
map in class AbstractFunction
Parameters:
from - Must have same length as getDimension()
Returns:
result of function operation on arg
See Also:
Function.map(float[])

clone

public Function clone()
               throws java.lang.CloneNotSupportedException
Specified by:
clone in interface Function
Overrides:
clone in class AbstractFunction
Throws:
java.lang.CloneNotSupportedException
See Also:
Object.clone()

main

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