Algorithms
Obtain bath fitting from pole fitting
In bath fitting, given
This is achieved by the following strategy:
Find pole fitting with semidefinite constraints:
Here
are positive semidefinite matrices.Compute eigenvalue decomposition of
:Combining
and , we obtain the desired bath fitting:
Rational approximation via (modified) AAA algorithm
To find the poles
The AAA algorithm is an iterative procedure. It selects the next support point in a greedy fashion.
Suppose we have obtained an approximant
Select the next support point
at which the previous approximant has the largest error.Find
in by solving the following linear square problem:This is a linear problem and amounts to solving a SVD problem. (See details in paper).
If the new approximant has reached desired accuracy, stop the iteration. Otherwise, repeat the above steps.
The poles of
For our application, we modify the AAA algorithm to deal with matrix-valued functions by replacing
Semidefinite programming
After obtaining
This is a linear problem with respect to
Bi-level optimization
With
Note that
The value of
For performances, robustness and other details of this bi-level optimization framework, see again our original paper.