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.
public VisualSim.actor.TypedIOPort input
public VisualSim.actor.TypedIOPort output
public VisualSim.data.expr.Parameter numerator
public VisualSim.data.expr.Parameter denominator
Created with the Personal Edition of HelpNDoc: Free Kindle producer