This record defines the transfer function between the input signal u and the output signal y by the coefficients of the numerator and denominator polynomials n(s) and d(s) respectively:
n(s)
y = ------ * u
d(s)
The order of the numerator polynomial can be larger as the order of the denominator polynomial (in such a case, the transfer function can not be transformed to a StateSpace system, but other operations are possible).
Example: The transfer function
2*s+3
y = ----------------- * u
4*s^2 + 5*s + 6
is transformed in the following way in a TransferFunction record:
import Modelica_LinearSystems2.TransferFunction;
import Modelica.Utilities.Streams;
TransferFunction tf(n={2,3}, d={4,5,6});
print("y = " + TransferFunction.'String'(tf) + " * u");
// prints the following string to the output window:
// y = (2*s + 3) / (4*s^2 + 5*s + 6) * u
| Name | Description |
|---|---|
| Collection of operators to construct a TransferFunction data record | |
| Collection of operators for subtraction of transfer functions | |
| Parallel connection of two transfer functions (= inputs are the same, outputs of the two systems are added) | |
| Multiply two TransferFunctions (tf1 * tf2) | |
| Divide two transfer functions (tf1 / tf2) | |
| Integer power of TransferFunction (tf1^k) | |
| Check whether two transfer functions are identical | |
| Transform TransferFunction into a String representation | |
| Generate the transfer function s | |
| Package of functions to analyse transfer function represented by a TransferFunction record | |
| Package of functions to design transfer function controllers and observers | |
| Package of functions to plot transfer function responses | |
| Package of functions for conversion of TransferFunction data record | |
| Package of functions to generate a TransferFunction data record from imported data | |
| Package of internal material of record TransferFunction (for advanced users only) |