rational
Perform rational fitting on complex frequency-dependent data
Description
Use the rational
object to perform rational fitting on
complex frequency-dependent data. This object uses the AAA algorithm [1] to construct a
rational fit with complex frequencies s. The AAA algorithm uses a
barycentric form to address the scaling challenges encountered by other rational fitting
methods, notably the widely-used vector fitting algorithm. This enables AAA algorithm to
converge rapidly to a near-optimum rational function fit. The fit of the each element of
the rational
object is given by this equation:
Creation
Syntax
Description
creates a
non-reflective one-port fit
= rationalrational
object with default
properties.
specifies options to control aspects of the fit or sets properties of the fit
= rational(___,Name=Value)rational
object. You can also set the NumPoles, Poles, Residues, and DirectTerm properties (since R2023a) using name-value
arguments. For example, fit = rational(s,MaxPoles=1002)
sets the maximum number of poles for the fit. Specify name-value arguments
after any of the input arguments from the previous syntaxes.
Input Arguments
Name-Value Arguments
Output Arguments
Properties
Object Functions
timeresp | Time response for rational objects |
stepresp | Step-signal response for rational object and rationalfit function
object |
freqresp | Frequency response of rational object and rationalfit function
object |
pwlresp | Calculate time response of piecewise linear input signal |
impulse | Impulse response for rational function object |
ispassive | Return true if rational fit output is passive at all frequencies |
makepassive | Enforce passivity of rational fit |
passivity | Plot passivity of N-by-N rational fit output |
generateSPICE | Generate SPICE file from rationalfit of
S-parameters |
abcd | Construct state-space matrices from rational
object |
zpk | Compute zeros, poles, and gain of rational object |
Examples
References
[1] Nakatsukasa, Yuji, Olivier Sète, and Lloyd N. Trefethen. “The AAA Algorithm for Rational Approximation.” SIAM Journal on Scientific Computing 40, no. 3 (January 2018): A1494–1522. https://doi.org/10.1137/16M1106122.