
ContinuousTransferFunction |
ptolemy.domains.ct.lib.ContinuousTransferFunction |
A transfer function in the continuous time domain.
This actor implements a transfer function where the single input (u) and
single output (y) can be expressed in (Laplace) transfer function
form as the following equation:
y(s) b(1)*s^(m-1) + b(2)*s^(m-2) + ... + b(m)
----- = -------------------------------------------
u(s) a(1)*s^(n-1) + a(2)*s^(n-2) + ... + a(n)
where m and n are the number of numerator and denominator coefficients,
respectively. This actors has two parameters -- numerator and denominator --
containing the coefficients of the numerator and denominator in
descending powers of s. These coefficients are double numbers.
The order of the denominator (n) must be greater
than or equal to the order of the numerator (m).
This actor extends TypedCompositeActor and works as a higher-order function.
Whenever the parameters are changed, the actor will build a transparent
subsystem inside it using integrators, adders, and scales. This is called
a realization of the transfer function. Notice that there are infinite
number of realizations of a transfer function, and they are equivalent if and
only if the initial conditions are all zero. Here we choose the controllable
canonical form and preset all initial states of the integrators to zero.
If you need to set arbitrary initial
conditions you have to use the state-space representation, for example,
use the LinearStateSpace actor.
Author(s): Jie Liu
Version:$Id: ContinuousTransferFunction.java,v 1.40 2005/07/08 19:58:04 cxh Exp $
Pt.Proposed Rating:Red (liuj)
Pt.Accepted Rating:Red (cxh)
input
Single input port.
output
Single output port.
numerator
The coefficients of the numerator, containing an array of
DoubleTokens.
The default value is {1.0}.
denominator
The coefficients of the denominator, containing an array
of DoubleTokens.
The array must have a length greater
than or equal to the length of the numerator.
The default value is {1.0}.