Nengo.ca

ca.nengo.dynamics.impl
Class SimpleLTISystem

java.lang.Object
  extended by ca.nengo.dynamics.impl.LTISystem
      extended by ca.nengo.dynamics.impl.SimpleLTISystem
All Implemented Interfaces:
DynamicalSystem, LinearSystem, java.io.Serializable, java.lang.Cloneable

public class SimpleLTISystem
extends LTISystem

A linear time-invariant system with the following properties:

This implementation will run faster than an instance of the superclass that has these properties.

See Also:
Serialized Form

Constructor Summary
SimpleLTISystem(float[] A, float[][] B, float[][] C, float[] x0, Units[] outputUnits)
          See also LTISystem.
SimpleLTISystem(int stateDim, int inputDim, int outputDim)
          Creates an appropriately-dimensioned system with all-zero matrices, so that elements can be changed later.
 
Method Summary
 float[] f(float t, float[] u)
          The dynamic equation.
 float[] g(float t, float[] u)
          The output equation.
 void setA(float[][] newA)
           
 void setB(float[][] newB)
           
 void setC(float[][] newC)
           
 
Methods inherited from class ca.nengo.dynamics.impl.LTISystem
clone, getA, getA, getB, getB, getC, getC, getD, getD, getInputDimension, getOutputDimension, getOutputUnits, getState, getStateDimension, setD, setInputDimension, setOutputDimension, setOutputUnits, setState, setStateDimension
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleLTISystem

public SimpleLTISystem(float[] A,
                       float[][] B,
                       float[][] C,
                       float[] x0,
                       Units[] outputUnits)
See also LTISystem.

Parameters:
A - Diagonal entries of dynamics matrix
B - Input matrix
C - Output matrix
x0 - Initial state
outputUnits - Units in which each dimension of the output are expressed

SimpleLTISystem

public SimpleLTISystem(int stateDim,
                       int inputDim,
                       int outputDim)
Creates an appropriately-dimensioned system with all-zero matrices, so that elements can be changed later.

Parameters:
stateDim - Number of state variables
inputDim - Number of inputs
outputDim - Number of outputs
Method Detail

f

public float[] f(float t,
                 float[] u)
Description copied from interface: DynamicalSystem
The dynamic equation.

Specified by:
f in interface DynamicalSystem
Overrides:
f in class LTISystem
Parameters:
t - Time
u - Input vector
Returns:
Ax + Bu
See Also:
DynamicalSystem.f(float, float[])

g

public float[] g(float t,
                 float[] u)
Description copied from interface: DynamicalSystem
The output equation.

Specified by:
g in interface DynamicalSystem
Overrides:
g in class LTISystem
Parameters:
t - Time
u - Input vector
Returns:
Cx + Du
See Also:
DynamicalSystem.g(float, float[])

setA

public void setA(float[][] newA)
Overrides:
setA in class LTISystem
Parameters:
newA - New dynamics matrix

setB

public void setB(float[][] newB)
Overrides:
setB in class LTISystem
Parameters:
newB - New input matrix

setC

public void setC(float[][] newC)
Overrides:
setC in class LTISystem
Parameters:
newC - New output matrix

Nengo.ca