Rational Approximation of The Absolute Value Function From Measurements: A Numerical Study of Recent Methods
Rational Approximation of The Absolute Value Function From Measurements: A Numerical Study of Recent Methods
Abstract
In this work, we propose an extensive numerical study on approximating the absolute
value function. The methods presented in this paper compute approximants in the form of
rational functions and have been proposed relatively recently, e.g., the Loewner framework
and the AAA algorithm. Moreover, these methods are based on data, i.e., measurements
of the original function (hence data-driven nature). We compare numerical results for
these two methods with those of a recently-proposed best rational approximation method
(the minimax algorithm) and with various classical bounds from the previous century.
Finally, we propose an iterative extension of the Loewner framework that can be used to
increase the approximation quality of the rational approximant.
1 Introduction
Approximation theory is a well-established field of mathematics that splits in a wide variety
of subfields and has a multitude of applications in many areas of applied sciences. Some
examples of the latter include computational fluid dynamics, solution and control of partial
differential equations, data compression, electronic structure calculation, systems and control
theory (model order reduction reduction of dynamical systems).
In this work we are concerned with rational approximation, i.e, approximation of given
functions by means of rational functions. More precisely, the original to be approximated
function is the absolute value function (known also as the modulus function). Moreover, the
methods under consideration do not necessarily require access to the exact closed-form of the
original function, but only to evaluations of it on a particular domain. Hence, these methods
are data-driven.
Since rational functions can be written as a ratio of two polynomials (in the numerator and
in the denominator), they prove to be more versatile than simple polynomials. Consequently,
rational functions can approximate functions with singularities and with oscillatory behavior
better than polynomials can. Furthermore, rational functions are extensively used in systems
and control theory since the input-output behavior of linear dynamical systems is described in
∗
I. V. Gosea the is with Max Planck Institute for Dynamics of Complex Technical Systems, Magdeburg,
Germany, (e-mail: [email protected])
†
A.C. Antoulas is with the Department of Electrical and Computer Engineering, Rice University, Houston,
Baylor College of Medicine, Houston, and Max Planck Institute, Magdeburg, Germany, (e-mail: [email protected])
1
the frequency domain by the so-called transfer function (which is a rational function). Finally,
the location of the poles of transfer functions determines important system properties such as
asymptotic stability, transient behavior or damping.
For more details of the many aspects of approximation theory, we refer the reader to the
classical books in [14, 30], and to the more recent books [36, 21] that put also emphasis on
practical issues such as software implementation of the methods and applications, i.e., on data
analysis for the latter.
In this work we study two recent data-driven rational approximations methods: the Loewner
framework introdued in [24], and the AAA algorithm introduced in [26]. The main contribu-
tion of this paper is to present an extensive numerical study of the performance of these two
methods for approximating the absolute value function. We put an emphasis on the Loewner
framework and show that this method yields, in some cases, very promising results (e.g., maxi-
mum approximation errors lower than 10−10 ). Moreover, we compare the numerical results with
those of best rational approximants (computed by means of a recent numerical tool proposed
in [16]). A multitude of bounds that were proposed in the last century are also included in the
study. Finally, another main contribution of this work is to propose a novel Loewner iterative
procedure that is able to further improve the approximation quality, and in some cases, to come
near to the error provided by best rational approximants.
This paper is organized as follows; after a brief introduction is given in Section 1, we continue
with a historical account of approximating the absolute value function provided in Section 2.
Afterwards, in Section 3, we introduce the main rational approximation methods (the Loewner
framework, the AAA and minimax algorithms) and we explain how the maximum approxima-
tion error is computed. Then, in Section 4, we provide a thorough and extensive numerical
study of the methods. In Section 5 the new Loewner iterative procedure is introduced (and
also some numerical tests are provided), while in Section 6 the conclusion follows.
and with En (|x|; [−1, 1]) the error of the best polynomial approximation from Pn of the function
|x| on the interval [−1, 1]. More precisely, write
En (|x|; [−1, 1]) := inf{kx − p(x)kL∞ [−1,1] | p ∈ Pn }. (2)
2
For brevity purposes, we sometimes use notation En to refer to the quantity introduced in (2).
One of the first significant results regarding the error for approximating the absolute value
function by means of polynomials was presented in [11]. There, it was shown that there exists a
real positive constant β (the so-called Bernstein constant) in the interval [0.278, 0.286] so that
the following holds
β = lim 2nE2n (|x|; [−1, 1]). (3)
n→∞
Moreover, it was conjectured in [38] that 2nE2n , which is a function of n, admits the following
series expansion as n → ∞
K1 K2 K3
2nE2n (|x|; [−1, 1]) ≈ β − + 4 − 6 + ··· , Ki > 0. (4)
n2 n n
Other contributions were made throughout the years, such as the ones in [12, 23]. The bottom
line is that the error of the best polynomial approximation of the absolute value function is
indeed O(n−1 ) (as n increases, the error decreases linearly with n).
Consequently, the result presented by D. J. Newman in [27] was indeed surprising. More
precisely, he proved that the error of the best uniform √
approximation using rational functions
−c n
of the function |x| in the interval [−1, 1] is in O(e ). This meant that the speed of rational
approximation is much faster than that of polynomial approximation.
Next, we introduce the following set of all real rational functions r(x) = p(x)
q(x)
:
n p(x) o
Rm,n = p(x) ∈ Rm [x], q(x) ∈ Rn [x] . (5)
q(x)
Introduce the minimum approximation error in the following way:
The result proven in [27] can be formulated as follows: for all n > 4, the following holds
1 −9√n √
e 6 En,n (|x|; [−1, 1]) 6 3e− n . (7)
2
For more details on this result, and on some extensions of it to approximating other important
functions, we refer the reader to [37, 18] and to chapter 4 from the book [29].
Moreover, it was shown in [13] that the following inequality holds for all n > 0
√
En,n (|x|; [−1, 1]) > e−π n+1
, (8)
and in [40] that there exist positive constants M1 and M2 so that the following holds for all
values of n > 1 √
M1 6 eπ n En,n (|x|; [−1, 1]) 6 M2 . (9)
Finally, years later in the contributions [34, 35], the following result was proven:
√
lim eπ n
En,n (|x|; [−1, 1]) = 8. (10)
n→∞
The existence of the limit in (10) (with exact value 8) has been conjectured in [39] on the basis
of extensive numerical calculations. The limit can be considered as the analogue of Bernstein’s
constant in (3) for the case of the best polynomial approximation of |x| on [−1, 1]. To the best
of our knowledge, the formula in (10) represents the tightest possible attainable result.
3
2.1 Newman’s rational approximant
In his groundbreaking paper from 1964 [27], Newman not only provided bounds for the best
rational approximation of |x| but also showed how to√compute a rational approximant explicitly.
n √
Let n > 0 be a positive integer and let α = e− n ∈ (0, 1) and = αn = e− n . Introduce
the polynomial p(x) and the rational function f (x) as
p(−x)
p(x) = (x + α)(x + α2 ) · · · (x + αn−1 ), and f (x) = . (11)
p(x)
In [27] the following result was proven for all x ∈ [, 1] and n > 5
p(−x) 2(α−αn )
|f (x)| = ≤ e ln(α) . (12)
p(x)
1−αk k
To prove this, one uses the fact that |f (x)| ≤ |f (1)| for x ∈ [, 1] and that ≤ e−2α .
1+αk √
n
√
Now, choosing n ≥ 5 it follows 2(α − αn ) > 1. Also note that ln(α) = ln(e− n ) = − nn .
n) √ √
Hence, we have 2(α−α
ln(α)
< e− n
and thus from (12), it follows |f (x)| < e − n
∀ x ∈ [, 1] and
n > 5. Finally, the order (n − 1, n − 1) Newton approximant is written as
Qn−1 k
Qn−1 k
New p(x) − p(−x) x k=1 (x + α ) − k=1 (−x + α )
R (x) = x = Qn−1 Qn−1 . (13)
p(x) + p(−x) k=1 (x + α k) +
k=1 (−x + α k)
The resulting error on the positive interval written γ(x) = x−RNew (x) and satisfies the following
inequality on [, 1]:
p(−x)
New p(x) f (x) f (x) 2f (x)
γ(x) = x − R (x) = 2x = 2x 6 2x 6 , (14)
1 + p(−x)
p(x)
1 + f (x) 1 − f (x) 1 − f (x)
√
and using that |f (x)| < e− n
it follows that ∀x ∈ [, 1], and n > 5
√
γ(x) < 3e− n
. (15)
Involving some additional reasoning, one can extend the above upper bound as shown in [27],
to the whole interval [0, 1], and because of symmetry reasons, to [−1, 1] as well.
Remark 2.1. The Newman approximant Rnew (x) in (13) is indeed interpolatory. It can thus
be obtained using the Loewner framework in [24], with the following n associated interpolation
pairs containing 2n − 1 interpolation points:
4
where E, A ∈ Rn×n , B, CT ∈ Rn . The dimension of system Σ is denoted with n and it represents
the length of the internal variable x(t) ∈ Rn . The control input is denoted with u(t) ∈ R, while
the observed output is y(t) ∈ R. The matrix E is typically considered to be invertible and
hence assimilated into matrices A and B as follows: Ā = E−1 A, B̄ = E−1 B. By applying the
Laplace transform directly to the differential equation in (17), one can write that
sEX(s) = AX(s) + BU(s) ⇒ X(s) = (sE − A)−1 BU(s) ⇒ Y(s) = C(sE − A)−1 BU(s) (18)
Hence, the transfer function is the ratio of the output Y(s) to the input U(s):
Y(s)
H(s) = = C(sE − A)−1 B. (19)
U(s)
Model reduction generically refers to a class of methodologies that aim at, in the case of
linear systems, constructing reduced-order linear systems of the form:
˙
Σ̂ : Êx̂(t) = Âx̂(t) + B̂u(t), ŷ(t) = Ĉx̂(t) + D̂u(t), (20)
where Ê, Â ∈ Rr×r , B̂ ∈ Rr×m , Ĉ ∈ Rp×r , D̂ ∈ Rp×m . Such systems in (20) are used
to replace those in (17) for numerically expensive tasks such as real-time simulation, optimal
control, etc. The dimension of the reduced-order model Σ̂ is denoted with r and it is typically
much lower than that of system Σ.
For linear dynamical systems such as the one in (17), the general idea is to start from data
sets that contain frequency response measurements. The goal, as it will be made clear in the
next section, is to find rational functions that (approximately) interpolate these measurements.
More precisely, through a system theoretical viewpoint, we seek reduced-order linear dynamical
system that models these measurements.
For more details on state-of-the-art MOR methods and an extensive historical account of
the existing literature, we refer the reader to [6]. Extensions to nonlinear systems can be found
[7], while extensions to parametric systems are presented in [10]. For a recent account of the
developments of MOR (algorithms and theory), see [9]. The case of interpolation-based MOR
methods is extensively and exhaustively treated in [4].
5
1. λi , µj ∈ C are the right, and, respectively left sample points.
2. wi , vj ∈ C are the right, and, respectively left sample values.
The problem can be formulated as follows: find a rational function R(s) of order r k, such
that the following interpolation conditions are (approximately) fulfilled:
R(λi ) = wi , R(µj ) = vj . (22)
Remark 3.1. Note that in a typical data-driven MOR setup, it is considered that the sample
values wi , vj ∈ C represent evaluations of the transfer function H(s) (as defined in (19))
corresponding to an underlying linear dynamical model as in (17). More precisely, one would
assume that H(λi ) = wi and H(µj ) = vj for all 1 ≤ i, j ≤ k.
The next step is to arrange the data (21) into matrix format. The Loewner matrix L ∈ Ck×k
and the shifted Loewner matrix Ls ∈ Ck×k are defined as follows
µ1 v1 −w1 λ1
· · · vµ11−w · · · µ1 vµ11−w
v1 −w1 k
k λk
µ1 −λ1 −λk µ1 −λ1 −λk
L = ... .. .. , L = .. .. ..
, (23)
. . s . . .
vk −w1 vk −wk µk vk −w1 λ1 µk vk −wk λk
µk −λ1
· · · µk −λk µk −λ1
··· µk −λk
6
Then, it follows that the data matrices can be factorized as follows
L = −OEC, Ls = −OAC, V = CC, W = OB. (30)
In practical applications, the pencil (Ls , L) is often singular. In these cases, perform a rank
revealing singular value decomposition (SVD) of the Loewner matrix L. By setting rank L = k,
write (where Xr = X(:, 1 : r), Yr = Y(:, 1 : r), and Sr = S(1 : r, 1 : r))
L = XSY∗ ≈ Xr Sr Yr∗ , with Xr , Yr ∈ Ck×r , Sr ∈ Cr×r . (31)
Lemma 2. The system matrices corresponding to a compressed /projected Loewner model for
which the transfer function approximately matches the conditions in (22), can be computed as
ÊLoew = −X∗r LYr , ÂLoew = −X∗r Ls Yr , B̂Loew = X∗r V, ĈLoew = WYr . (32)
The rational function corresponding to the reduced-order Loewner model can be computed in the
following way
−1
RLoew (x) = ĈLoew (xÊLoew − ÂLoew )−1 B̂Loew = WYr X∗r (Ls − xL)Yr X∗r V. (33)
Remark 3.2. Provided that the reduced-order matrix Ê in (32) is invertible, one can incor-
porate it into the other system matrices. In this way, we put together an equivalent model
(Ir , ÃLoew , B̃Loew , C̃Loew ) ≡ (ÊLoew , ÂLoew , B̂Loew , ĈLoew ) in ”standard” representation:
ÃLoew = Ê−1 ∗ −1 ∗
Loew ÂLoew = (Xr LYr ) (Xr Ls Yr ),
B̃Loew = −Ê−1 ∗ −1 ∗
Loew B̂Loew = −(Xr LYr ) (Xr V), C̃Loew = ĈLoew = WYr .
7
3.2.2 Extension to identical left and right data sets
The Loewner framework does not necessarily impose disjoint left and right data subsets in (21).
As explained in the original paper [24], one can modify the classical Loewner framework by
including information of the derivative corresponding to the underlying ”to-be-approximated”
function H(s).
Here we show how to treat the case of identical subsets, i.e., µi = λi , ∀1 ≤ i ≤ k and
vi = wi , ∀1 ≤ i ≤ k. We adapt the definition of the Loewner matrices in (23) as was also
proposed in [8] (for the TF-IRKA iterative procedure)
wi − wj λi wi − λj wj
λ −λ , if i 6
= j
, if i 6= j
λi − λj
i j
L(i, j) = and Ls (i, j) = (36)
dH(s) d[sH(s)]
(s = λi ), if i = j.
(s = λi ), if i = j.
ds ds
Additionally W(i, j) = VT (i, j) = [w1 w2 · · · wk ] ∈ C1×k .
Remark 3.4. Note that the procedure discussed in this section will be used in Section 4 which
includes the numerical results. There, the special case of data partitioning that will be referred
to as ”Loewner same”, will be based on this procedure.
where {ν0 , . . . , ν` } are the interpolation points (selected from the set T ), {w1 , . . . , w` } are the
function evaluations, and {α0 , . . . , α` } are the weights. The method enforces interpolation at
the ` points {λ0 , . . . , λ` }, i.e. RAAA (νk ) = wk = F (νk ), ∀0 6 k 6 `.
One needs to determine suitable weights α1 , α2 , . . . , αn by formulating the approximation
problem as follows:
N N −`
P` αk wk 2 N −`
P` αk (wk −fi )
k=0 τi −νk k=0 2
τi −λk
X X X
2
min (RAAA (τi ) − F (τi )) ⇔ min P` αk
− fi ⇔ min P` αk
.
α1 ,...,α` α1 ,...,α` α1 ,...,α`
i=1 i=1 k=0 τi −νk i=1 k=0 τi −νk
(38)
8
Instead of solving the more general problem above (which is nonlinear in variables α1 , α2 , . . . , α` )
one solves a relaxed problem by means of linearization. This procedure leads to a least squares
minimization problem, i.e.,
N −` X`
X αk (fi − wk ) 2
min . (39)
α1 ,...,α`
i=1 k=0
τ i − νk
The solution is given by the `+1th right singular vector of the matrix L. The next interpolation
point νl+1 is selected by means of a Greedy approach, i.e., the location in Ω \ {ν0 , · · · , ν` } where
the error (s) = |F (s) − R(s)|, s ∈ Ω is maximal.
Assume that at the end of the iteration, the rational approximant is of order (r, r). Hence,
one can also explicitly write this function RAAA (x) as was done in the Loewner framework for
the function RLoew (x) in (33), i.e.,
where the matrices are of dimension r+2 and are given explicitly in terms of the selected support
points {λ0 , . . . , λr }, the function evaluations {w1 , . . . , wr }, and the weights {α0 , . . . , αr }.
T
ÂAAA = diag([ν0 , ν1 , . . . , νr , 1]) − B̂AAA eTr+2 , B̂AAA = α0 · · · αr 1 ,
T (42)
ÊAAA = diag([1, 1, . . . , 1, 0]), ĈAAA = w0 · · · wr 0 , er+2 = 1 1 · · · 1 .
Note that for the numerical examples presented in Section 4, we will be using the AAA imple-
mentation available in the Chebfun toolbox [15].
9
f − r∗ takes its global extreme value over the interval [a, b] (with alternating signs). This
sequence is denoted with (x0 , x1 , . . . , xm+n+1 ) with a 6 x0 < x1 < · · · < xm+n+1 6 b, hence
Figure 1: Approximation curve produced by minimax on [−1, 1] - order (28, 28) approximant.
Next, in Fig. 2, we depict the maximum approximation error in for the best order (n,n)
approximant computed by means of the minimax algorithm in [16], where 1 6 n 6 40. Ad-
ditionall, the bounds proposed by Newman, Bulanov and Stahl are shown on the same figure.
10
Approximation errors of Minimax and various bounds
0
10
10-2
10-4
10-6
Minimax
Stahl asymptote
10-8 Newman upper bound
Bulanov lower bound
10-10
5 10 15 20 25 30 35 40
Order n
Figure 2: Approximation errors produced by minimax on [−1, 1] for an order (n, n) approximant
with 1 ≤ n ≤ 40.
Now, for the rational functions R(x) computed with the Loewner and AAA approaches, we
consider (Ê, Â, B̂, Ĉ) to be a realization of the function R(x). For the Loewner framework,
these matrices can be computed as in (32), while for the AAA algorithm, the matrices in (42)
are used instead.
Given a rational function R(x) = Ĉ(xÊ− Â)−1 B̂, we compute the maximum approximation
−
error R = maxx∈[−1,1] |R(x) − |x||. Introduce also + R = maxx∈(0,1) |R(x) − |x|| and R =
maxx∈(−1,0) |R(x) − |x||. Finally, for β ∈ {−1, 0, 1}, let βR = |R(β) − |β||. Consequently, it
follows that
R = max(− + −1 1 0
R , R , R , R , R ) (44)
The challenging part is computing − +
R and R , since the other 3 quantities are simple evaluations
−
of |R(x)−|x|| for x ∈ {−1, 0, 1}. The main idea for computing + R and R is as follows: determine
all extrema of the function R(x) − |x| by solving a generalized eigenvalue problem and select
only the ones that are on the real axis in between −1 and 1.
−
We now go through the procedure for finding + R (finding R can be derived i a similar
manner). Finding all extrema of the function R(x)−x on (0, 1) is equivalent to finding the zeros
of the rational function R0 (x) − 1 on (0, 1). This can be formulated as finding the eigenvalues
of the pair (X, E), where the corresponding matrices can be found as follows
Ê
Â Ê 0 A B
E= Ê , A = , B= , C = Ĉ 0 , D = 1, X = . (45)
0 Â B̂ C D
0
Finally, from the computed eigenvalues, select the one in (0, 1) at which the evaluation of
|R(x) − x| is maximal. It means that this is precisely the value we were looking for, i.e., +
R.
−
Now, in order to compute R , we repeat the above procedure by choosing instead D = −1.
11
4 Numerical experiments
In this section we report on a variety of numerical experiments that were performed for approxi-
mating de absolute value function on the interval [−1, 1]. Both the Loewner framework and the
AAA algorithm are data-driven methods and hence they require measurements. We propose
a couple of different types of sampling points and also different data partitioning techniques
for the Loewner framework. Additionally, we provide comparisons to the classical rational
approximation bounds derived in the previous century, which were also mentioned in Section 2.
The sampling points are selected to follow five different distributions:
Zolotarev
600 Linspace
Logspace
400 Chebyshev
Zolotarev
200
Figure 3: Four categories of sampling (interpolation points). Left: 1024 points (sampling
interval vs number of points). Right: 16 points (on 4 parallel real axes).
In Fig. 3, we depict four categories of sampling points with 2 examples (linspace, logspace,
Chebyshev and Zolotarev). In the first one (left figure), 4 curves are plotted. The x axis
represents the sampling interval [0, 1], while the y axis shows the number of points (in total
1024 points were chosen). In the second one (right figure), we depict 16 points for each of the
four category with colorful symbols (the color of the curves coincide with those of the symbols
and will remain consistent throughout the remaining of the manuscript).
Note that the partitioning of data into left and right data sets (see (21)) is the first step
in the Loewner framework and a very crucial one indeed. In what follows, we use three data
partition techniques for the Loewner framework:
In Fig. 4, we depict the three partitioning options with an example of 16 points linearly
spaced points in the interval (a, b). Let a = 2−10 and b = 1 and choose N = 2048 interpolation
points inside [−b, −a] ∪ [a, b]. More precisely, k = 1024 are chosen inside the interval [a, b] and
the other half inside [−b, −a].
In what follows, we apply the Loewner framework for the five types of sample points men-
tioned in (46). For each of the different points selection, we apply three different partitioning
schemes proposed in (47).
12
left points
Points for Loewner split right points
1
0
-1
-1 -0.5 0 0.5 1
Points for Loewner interlaced
1
0
-1
-1 -0.5 0 0.5 1
Points for Loewner same
1
0
-1
-1 -0.5 0 0.5 1
Figure 4: The three partitioning options depicted for 16 linearly-spaced interpolation points.
Note that the dimension of the Loewner matrices is 1024 × 1024 and the Loewner rational
approximants are of order (r − 1, r). The AAA approximant is of order (r, r). We will choose
the reduction order to be r = 28 for the following experiments.
b−a (n − 1)(b − a)
plin lin
1 = a, p2 = a + , . . . , plin
n = a+ = b. (48)
n−1 n−1
Note that these points span a subinterval of the interval (0, 1). Additionally, for symmetry
reasons, the negative points are also considered, i.e. plin lin
−k = −pk .
In Fig. 5, the singular value decay of the Loewner matrices computed by means of the three
proposed partition techniques in (47) (left sub-figure). Moreover, the original absolute value
function |x| together with the 3 rational approximants computed with the Loewner framework
(of order (27,28)) as well as the one of order (28,28) computed by means of AAA, are depicted
in the right sub-figure in Fig. 5.
Singular values of the Loewner matrix
0
10
split
interlaced
same
10-5
10-10
-15
10
10 20 30 40 50 60 70 80 90 100
Figure 5: The first case (linspace points). Left: first 100 singular values of the 3 Loewner
matrices. Right: the original function |x| and the the 4 rational approximants.
13
In Fig. 6, we depict the approximation error produced by the four rational functions that
are used to approximate |x|. In the right sub-figure, the magnitude of the errors is shown, while
in the left sub-figure all 4 error curves are depicted on the same plot. We observe that, in all
four cases, there is a visible peak at 0.
Figure 6: The first case (linspace points). Left: the approximation errors for the 4 methods.
Right: the magnitude of the errors for the 4 approximants.
For the next experiment, we include (0, 0) in the set of N = 2048 pairs of measurements
denoted with D. We apply again the Loewner framework for the three different partitioning
options and compute the corresponding rational approximants (together with that computed
using AAA). We depict the magnitude for all four error curves in Fig. 7.
Figure 7: The first case (linspace points). The magnitude of errors for the 4 approximants
when 0 was added to the set of points.
Finally, by varying the reduction order from 6 to 40, we compute approximants by means
of the four methods (note that 0 is again added here). We collect the maximum approximation
errors for each method computed by means of the procedure presented in Section 5. Addi-
tionally, we compute the Newman, Bulanov and Stahl bounds presented in Section 2 (for each
value). The results are depicted in Fig. 8.
Clearly, by adding the pair (0, 0) to the original set of measurement pairs D of length
N = 2048 will improve the accuracy of the approximation. For example, for the Loewner same
method, the approximation error decreased from 2.7575e − 04 to 7.9058e − 05.
Throughout the rest of the numerical experiments presented in this section, it will be as-
sumed that 0 is included in the set of sample points.
14
Approximation errors for all approximants and various bounds
0
10
-2
10
10-4
Loewner split
Loewner interlaced
10-6
Loewner same
AAA
Minimax
10-8 Stahl bound
Newman up bound
Bulanov low bound
10-10
10 15 20 25 30 35 40
Order n
Figure 8: The first case (linspace points). The maximum approximation errors for all methods
and for different values of order n (0 was added to the set of points) + various bounds.
Note that these points span a subinterval of the interval (0, 1). Additionally, for symmetry
reasons, the negative points are also considered, i.e. plog log
−k = −pk .
In Fig. 9, we show the first 100 singular values of the Loewner matrices computed by means
of the three proposed partition techniques in (47) (left sub-figure). Additionally, the magnitude
of the approximation errors on [−1, 1] for each of the four approximants is depicted (right sub-
figure).
Singular values of the Loewner matrix Error curves for r = 28, N = 2048 Logspace points
0
10
split Loewner split, err = 0.0001935 Loewner interlaced, err = 0.00019083
interlaced
same 10-5 10-5
10-5
10-10 10
-10
-1 0 1 -1 0 1
10-10 Loewner same, err = 0.00019018 AAA, err = 0.00015441
-5 -5
10 10
-15 10
-10 10-10
10
10 20 30 40 50 60 70 80 90 100 -1 0 1 -0.5 0 0.5
Figure 9: The second case (logspace points). Left: singular value decay of the Loewner matrices.
Right: the magnitude of the error curves produced by order r = 28 rational approximants.
Finally, in Fig. 10 we depict the absolute value of the maximum approximation errors for
all 4 methods and for various values of the rational functions’ order (in the interval [6, 40]).
Additionally, some of the bounds mentioned in Section 2 are also included.
15
Approximation errors for all approximants and various bounds
100
10-2
10-4
Loewner split
Loewner interlaced
-6
10 Loewner same
AAA
Minimax
10-8 Stahl bound
Newman up bound
Bulanov low bound
10-10
10 15 20 25 30 35 40
Order n
Figure 10: The second case (logspace points). The maximum approximation errors for all
methods and for different values of order n + various classical bounds.
1 1 (2k − 1)π
pChe
k = (a + b) + (a − b) cos , 1 ≤ k ≤ n. (50)
2 2 2n
Note that these points span a subinterval of the interval (0, 1). Additionally, for symmetry
reasons, the negative points are also considered, i.e. pChe Che
−k = −pk .
In Fig. 11, we show the singular value decay of the Loewner matrices computed by means of
the three proposed partition techniques in (47) (left sub-figure). Additionally, the magnitude
of the approximation errors on [−1, 1] for each of the four approximants is depicted (right
sub-figure).
Singular values of the Loewner matrix Error curves for r = 28, N = 2048 Chebyshev points
0
10
split Loewner split, err = 0.00014965 Loewner interlaced, err = 6.1767e-05
interlaced
same 10-5 10-5
10-5 -10
10 10-10
-1 0 1 -1 0 1
10-10 Loewner same, err = 6.1489e-05 AAA, err = 7.4823e-05
-5 -5
10 10
Figure 11: The third case (Chebyshev points). Left: singular value decay of the Loewner matri-
ces. Right: the magnitude of the error curves produced by order r = 28 rational approximants.
Finally, in Fig. 12 we depict the absolute value of the maximum approximation errors for
all 4 methods and for various values of the rational functions’ order (in the interval [6, 40]).
Additionally, some of the bounds mentioned in Section 2 are also included.
16
Approximation errors for all approximants and various bounds
0
10
-2
10
10-4
Loewner split
Loewner interlaced
10-6 Loewner same
AAA
Minimax
10-8 Stahl bound
Newman up bound
Bulanov low bound
10-10
10 15 20 25 30 35 40
Order n
Figure 12: The third case (Chebyshev points). The maximum approximation errors for all
methods and for different values of order n + various classical bounds.
√ q
2
For 0 < a < b < 1, let ` = ab < 1 and `0 = 1 − `2 = 1 − ab2 . Let K 0 be the complete elliptic
integral of the first kind for the complementary modulus and can be defined as
Z π
0
2 dθ
K = p . (52)
0 1 − (`0 )2 sin2 θ
Next, introduce sn(u; `0 ) and cn(u; `0 ) as the so-called Jacobi elliptic functions. The zeros and
poles of the Zolotarev rational approximant of the sign function can be written in terms of
these functions. For more details on such functions, see Chapter 5 in [1].
It can also be shown, i.e., as in [25], that the interpolation points of the Zolotarev approx-
imant are explicitly given in terms of Jacobi elliptic functions. More precisely, these are the
points in the interval (a, b) where the sign function is exactly matched by the optimal Zolotarev
approximant, i.e. where the value is exactly 1.
These points will be hence called ”Zolotarev points” in what follows. They can be computed
as follows; let n > 0 to be a positive integer and pZol Zol Zol
1 < p2 < · · · < pn be points such as
r
2iK 0 0 2iK 0 0
pZol
i = a 2 sn2 ( ; ` ) + b 2 cn2 ( ; ` ), for 1 ≤ i ≤ n. (53)
2n 2n
Note that these points span a subinterval of the interval (0, 1). Additionally, for symmetry
reasons, the negative points are also considered, i.e. pZol Zol
−i = −pi .
In Fig. 13, we show the first 100 singular values of the Loewner matrices computed by
means of the three proposed partition techniques in (47) (left sub-figure). Additionally, the
17
magnitude of the approximation errors on [−1, 1] for each of the four approximants is depicted
(right sub-figure).
Figure 13: The fourth case (Zolotarev points). Left: singular value decay of the Loewner matri-
ces. Right: the magnitude of the error curves produced by order r = 28 rational approximants.
Finally, in Fig. 14 we depict the absolute value of the maximum approximation errors for
all 4 methods and for various values of the rational functions’ order (in the interval [6, 40]).
Additionally, some of the bounds mentioned in Section 2 are also included.
Approximation errors for all approximants and various bounds
100
10-2
10-4
Loewner split
Loewner interlaced
-6 Loewner same
10
AAA
Minimax
10-8 Stahl bound
Newman up bound
Bulanov low bound
10-10
10 15 20 25 30 35 40
Order n
Figure 14: The fourth case (Zolotarev points). The maximum approximation errors for all
methods and for different values of order n + various classical bounds.
In what follows, we also present some numerical results collected in two tables. This is done
by comparing the four methods for the four types of sampling points (the case of ”Newman
points” in Section 4.5 is deemed special and will be treated individually).
In Tab. 1 we show how the number of Loewner singular values that are bigger than the
machine precision 2.2204e − 16 vary with the type of sample points and partition schemes.
Note that the fastest decay is encountered for ”Loewner split” with linspace points, while the
slowest decay is given by ”Loewner same” with Zolotarev points (the number of singular values
for the latter case is more than twice bigger than for the first case).
In Tab. 2 we collect the maximum approximation errors for all four methods and for the
four types of sample points covered so far. The order of the rational approximants was kept
constant, e.g., r = 28. The highest error, i.e., 1.9920e − 04 was obtained for ”Loewner split”
with linspace points while the lowest, i.e., 5.5785e − 05 was obtained for ”Loewner same” with
Zolotarev points.
18
Loewner split Loewner interlaced Loewner same
Linspace 33 50 52
Chebyshev 37 65 64
Logspace 38 66 65
Zolotarev 38 68 68
These points span a subinterval of the interval (0, 1). Additionally, for symmetry reasons,
the negative points are also considered, i.e. pNew
−k = −pk
New
. Note that the 2n points pNew
k for
−n ≤ k ≤ n are the interpolation points for constructing the order (n, n) Newman approximant
presented in Section 2.1 (the point 0 was not included here).
For the next experiment, choose N = 256 Newman points as described in 54.
In Fig. 15, we show the 128 singular values of the Loewner matrices computed by means of
the three proposed partition techniques in (47) (left sub-figure). Additionally, the magnitude
of the approximation errors on [−1, 1] for each of the order r = 48 approximants is depicted
(right sub-figure).
Figure 15: The fifth case (Newman points). Left: singular value decay of the Loewner matrices.
Right: the magnitude of the error curves produced by order r = 48 rational approximants.
Next, fix a tolerance of δ = 1e − 13 and truncate with respect to the number of singular
values of the Loewner matrices that are larger than δ. Hence, for the first partition technique,
19
i.e. ”Loewner split” we get r1 = 40, while for the other two techniques we obtain r2 = r3 = 76.
The reduced order for the AAA √ method is chosen to be r4 = 76. Note that the result by
Stahl presented in (10) is 8e−π 76 = 1.0203e − 11. In Fig. 16, we depict the magnitude of the
approximation error curves for the all four rational approximants of orders r1 , r2 , r3 and r4 .
10-10
-1 0 1 -1 0 1
Loewner same, err = 3.9698e-07 AAA, err = 6.4343e-07
10-10
10-10
-1 0 1 -1 0 1
Figure 16: The fifth case (Newman points). The magnitude of the error curves for the 4 rational
approximants when δ = 1e − 13.
Finally, in Fig. 17 we depict the absolute value of the maximum approximation errors for
all 4 methods and for various values of the rational functions’ order (in the interval [6, 80]).
Additionally, some of the bounds mentioned in Section 2 are also included.
Approximation errors for all approximants and various bounds - 256 Newman points
100
10-2
10-4
10-6
Loewner interlaced
10-8 Loewner same
AAA
Minimax
10-10
Stahl bound
-12 Newman up bound
10 Bulanov low bound
10 20 30 40 50 60 70 80
Order n
Figure 17: The fifth case (Newman points). The maximum approximation errors for all methods
and for different values of order n + various classical bounds.
In Tab. 3 we show how the number of Loewner matrix singular values that are bigger than
a tolerance value δ vary with the type of partition scheme. We observe that the decay reported
for ”Loewner split” is much faster than that of ”Loewner interlaced” or ”Loewner same”.
In Tab. 4 we collect the maximum approximation errors for all four methods and for different
values of the tolerance δ. The choice of δ determines the orders collected in Tab. 3, for each of
the four rational approximants.
Note that the highest errors were obtained for the ”Loewner split” approximant. For the
first 2 values of τ , ”Loewner interlaced” produced the lowest errors, while the last 2 values of
τ , ”Loewner same” produced the lowest errors.
20
Loewner split Loewner interlaced Loewner same
δ = 1e − 9 r1 = 28 r2 = 54 r2 = 54
δ = 1e − 11 r1 = 34 r2 = 64 r3 = 64
δ = 1e − 13 r1 = 40 r2 = 76 r3 = 76
δ = 1e − 15 r1 = 46 r2 = 88 r3 = 88
Table 3: Approximation orders and errors when the truncation tolerance value δ is varied.
Loewner split Loewner interlaced Loewner same AAA
δ = 1e − 9 1.6347e − 03 1.6486e − 06 5.2023e − 06 1.1786e − 06
δ = 1e − 11 2.5377e − 04 4.8252e − 07 5.4574e − 07 6.5291e − 07
δ = 1e − 13 2.5244e − 05 4.1101e − 07 3.9698e − 07 6.4343e − 07
δ = 1e − 15 8.5655e − 06 5.2722e − 07 3.6259e − 07 3.7328e − 07
Table 4: Maximum approximation errors when the truncation tolerance value δ is varied.
For the next experiment, choose eight times more points as for the previous experiment, e.g.,
N = 2048 Newman points as given in 54. Note that pNew 1 = 1.2664e − 14 and pNew 1024 = 0.9692.
Hence, the left boundary of the (positive) interval in which the points are chosen is very close
to 0. Additionally, the right boundary is close to 1, but not exactly 1.
In Fig. 18, we depict the first 300 singular values of the Loewner matrices computed by
means of the three proposed partition techniques in (47). Note that the dimension of these
Loewner matrices is 1024 × 1025 (0 was again added in the right data set).
As observed in Fig. 18, the decay of singular values is quite slow (for all cases). This behavior
is particularly noticed for ”Loewner interlaced” and ”Loewner same” partitioning cases. For
each of these two variants, the machine precision is reached after around 250 singular values.
Choose a tolerance value τ = 1e − 14 and notice that a number of 210 singular values are larger
than this value (for the two cases).
10-10
-15
10
50 100 150 200 250 300
Figure 18: The fifth case (2048 Newman points). Singular value decay of the Loewner matrices.
Next, based on the chosen tolerance value τ = 1e − 14, let r = 210 be the corresponding
reduction order for both of the reduced models computed with the Loewner procedure, i.e.
”Loewner interlaced” and ”Loewner same”. In Fig. 19, we depict the magnitude of the approx-
imation error curves for the two rational approximants of order r. Note that the maximum
approximation error in the case of ”Loewner interlaced” drops below 1e − 10, i.e., reaching the
21
value 4.2942e − 11. It is to be
√ denoted that, when r = 210, it follows that the value from
−π 210
Strahl’s bound in (10) is 8e = 1.3533e − 19.
-15
10
-1 -0.5 0 0.5 1
-10
Loewner same, err = 1.1884e-10
10
-15
10
-1 -0.5 0 0.5 1
Figure 19: The fifth case (2048 Newman points). The magnitude of the error curves for 2
rational approximants of order r = 210.
22
The Loewner iterative algorithm for approximating |x|
Step 0: Compute the Loewner rational approximant RLoew (x) of order r with respect to
the initial data set D. Compute the values − +
R and R and denote with ρ ∈ (−1, 1) the point
where the maximum error occurs, i.e. |RLoew (ρ) − |ρ|| = max(− +
R , R ).
Step 1: Include (0, 0) and (ρ, |ρ|) to D. The new data set is D(1) = D ∪ {(0, 0), (ρ, |ρ|)}.
(1)
Compute the Loewner rational approximant RAAA (x) of order (r − 1, r).
Step 2: Include (−1, 1) and (1, 1) to D. The new data set is D(2) = D(1) ∪ {(−1, 1), (1, 1)}.
(2)
Compute the Loewner rational approximant RAAA (x) of order (r − 1, r) and the overall
maximum error on [−1, 1], i.e. R(2) . Let m = 2.
Loew
While R(m) > ξ
Loew
(m)
For m ≥ 2, denote with RLoew (x) the Loewner rational approximant of order (r − 1, r) at
step m. Compute the values −(m) and +(m) and denote with ρ− +
m ∈ (−1, 0), ρm ∈ (0, 1) the
RLoew RLoew
points where these two maximum values are attained.
If R(m+1) < ξ, the algorithm stops. The sought after rational approximant of order (r − 1, r)
Loew
(m+1)
is found, e.g., R̃(x) = RLoew (x). If the error is still higher that ξ, continue the algorithm
by adding two more measurement pairs to D(m+1) .
End
Figure 20: The pseudocode of the Loewner iterative algorithm
23
We perform a total of 22 steps. At each step, 2 sample points and values are added. The
size of the Loewner matrix increases from 1024 × 1024 to 1048 × 1048. In Fig. 21 we depict the
first 200 singular values of the 22 Loewner matrices, computed at each step.
-5
10
-10
10
-15
10
Figure 21: The singular value decay of the Loewner matrices for all 22 steps.
(m)
For each step m with 0 ≤ m ≤ 21, we compute the Loewner rational approximant RLoew (x)
as well as the maximum approximation error R(m) . In Fig. 22 we depict the magnitude of the
Loew
(m)
approximation curves for three Loewner approximants RLoew (x), m ∈ {0, 5, 11}. Next, for each
Approximation error
Step 0
10-5 Step 5
Step 11
10-10
-15
10
-1 -0.5 0 0.5 1
Figure 22: The magnitude of the approximation error after 0, 5 and 11 steps.
step m ∈ {0, 1, . . . , 21} we record the approximation at the origin (0), as well as on the intervals
[−1, 0) and (0, 1]. The three curves are depicted in Fig. 23. After step m = 11, the curves are
more or less flat. We observe that, by imposing the tolerance ξ = 1e − 07, the algorithm should
have stopped at step m = 11. Finally, in Fig. 24, we shop the magnitude of the approximation
errors for the following two approximants:
1. The first one, of order (47, 48), computed by means of the newly proposed Loewner
iterative procedure: the maximum error is R(11) = 9.4873e − 08 < ξ.
Loew
2. The second one, of order (48, 48), computed by means of the minimax algorithm in [16]:
the maximum error is RMin = 3.0517e − 09.
24
Approximation error
10-5
Error at 0
10-10 Error on (0,1]
Error on [-1,0)
-15
10
0 5 10 15 20
Iteration step
Figure 23: The approximation error evaluated at 0 and on the intervals [0,1) & [-1,0).
10-10
-1 -0.5 0 0.5 1
Minimax 3.0517e-09
10-10
-1 -0.5 0 0.5 1
Figure 24: The approximation error for Loewner iterative and minimax.
√
Note that, by computing the value of Stahl’s result in (10), we obtain 8e−π 48
= 2.8211e − 09.
Remark 5.1. It is to be noted that the newly proposed algorithm in this section can easily be
extended for approximating other functions, and it is by no means restricted for the example
chosen in this study. The exact computation of the maximum error could be indeed challenging
for non-rational functions. Nevertheless, for model order reduction purposes (approximating the
rational transfer function of a large-scale system with a low order rational transfer function),
this method can be used with no additional challenges.
6 Conclusion
In this work we have proposed a detailed study that compares different data-driven methods
for approximating the absolute value function by means of rational functions. We also provided
extensive numerical results that addressed issues such as using different type of measurements
(sample points) or using different data splitting techniques. A detailed comparison to best
rational approximants has also been included, together with carefully accounting for different
results and bounds from classical approximation theory. Finally, we provided a novel iterative
extension of the main method under investigation, i.e., the Loewner framework, in order to
increase the overall approximation quality.
25
References
[1] N I. Akhiezer. Elements of the Theory of Elliptic Functions. AMS, Providence, 1990.
[3] A. C. Antoulas and B. D. 0. Anderson. On the scalar rational interpolation problem. IMA
Journal of Mathematical Control and Information, 3(2-3):61–88, 1986.
[4] A C. Antoulas, C A. Beattie, and S. Gugercin. Interpolatory Methods for Model Reduction.
Series in Computational Science and Engineering, SIAM, Philadelphia, 2020.
[5] A C. Antoulas, S. Lefteriu, and A C. Ionita. A tutorial introduction to the Loewner Frame-
work for model reduction, pages 335–376. Model Reduction and Approximation for Com-
plex Systems, Edited by P. Benner, A. Cohen, M. Ohlberger, and K. Willcox, Series: Com-
putational Science & Engineering, https://doi.org/10.1137/1.9781611974829. SIAM,
2017.
[7] U. Baur, P. Benner, and L. Feng. Model order reduction for linear and nonlinear systems: a
system-theoretic perspective. Archives of Computational Methods in Engineering, 21:331–
358, 2014.
[9] P. Benner, A. Cohen, M. Ohlberger, K. Willcox, and (eds.). Model Reduction and Approx-
imation: Theory and Algorithms. Computational Science & Engineering. SIAM, 2017.
[11] S. Bernstein. Sur la meilleure approximation de |x| par des polynomes de degres donnes.
Acta Math., 37:1–57, 1913.
[13] A. P. Bulanov. Asymptotics for least least deviation of |x| from rational functions. Math.
USSR Sbornik, 5:275–290, 1968.
26
[17] S. R. Finch. Mathematical Constants. Encyclopedia of Mathematics and its Applications.
Cambridge University Press, 2003.
[18] A. A. Gonchar. Estimates of the growth of rational functions and some of their applications.
Math. USSR Sbornik, 1:445–456, 1967.
[19] I. V. Gosea. Model order reduction of linear and nonlinear systems in the Loewner frame-
work. PhD thesis, Department of Electrical Engineering, Jacobs University, Bremen, Ger-
many, 2017.
[20] A. C. Ionita. Lagrange rational interpolation and its applications to approximation of large-
scale dynamical systems. PhD thesis, Department of Electrical and Computer Engineering,
Rice University, Houston, United States, 2013.
[21] A. Iske. Approximation Theory and Algorithms for Data Analysis. Texts in Applied
Mathematics. Springer, 2018.
[22] D. S. Karachalios, I. V. Gosea, and A. C. Antoulas. The Loewner Framework for System
Identification and Reduction. Model Reduction Handbook: Volume I: System and Data-
Driven Methods and Algorithms, Edited by P. Benner, S. Grivet-Talocia, A. Quarteroni,
G. Rozza, and L. M. Silveira, to appear. De Gruyter, 2020.
[23] G. G. Lorentz. Approximation of functions. New York, Holt, Rinehart and Winston,
Athena Series, 1966.
[24] A J. Mayo and A C. Antoulas. A framework for the generalized realization problem. Linear
Algebra and Its Applications, 426:634–662, 2007.
[25] Y. Nakatsukasa and R. W. Freund. Computing fundamental matrix decompositions accu-
rately via the matrix sign function in two iterations: The power of Zolotarev’s functions.
SIAM Review, 58(3):461–493, 2016.
[26] Y. Nakatsukasa, O. Séte, and L N. Trefethen. The AAA algorithm for rational approxi-
mation. SIAM Journal on Scientific Computing, 40(3):A1494–A1522, 2018.
[27] D. J. Newman. Rational approximation to |x|. Michigan Math. J., 11:11–14, 1964.
[28] R. Pachon and L. N. Trefethen. Barycentric-Remez algorithms for best polynomial ap-
proximation in the chebfun system. BIT Numerical Mathematics, 49(4):721–741, 2009.
[29] P.P. Petrushev and V. A. Popov. Rational approximation of real functions, volume 28 of
Encyclopedia of Mathematics and its Applications. Cambridge University Press, 1987.
[30] M. J. D. Powell. Approximation theory and methods. Cambridge University Press, 1981.
[31] A. R. Reddy. Approximations to xn and |x| - a survey. Journal of Approximation Theory,
51:127–137, 1987.
[32] E. Y. Remez. Sur un procede convergent d’approximations successives pour determiner
les polynomes d’approximation. C. R. Math. Acad. Sci. Paris, 198:2063–2065, 1934.
[33] A. C. Rodriguez and S. Gugercin. The p-AAA algorithm for data driven modeling of
parametric dynamical systems. Technical report, arXiv preprint arXiv:2003.06536, 2020.
27
[34] H. Stahl. Best uniform rational approximation of |x| on [−1; +1]. Math. USSR Sbornik,
183:85–118, 1992.
[35] H. Stahl. Uniform approximation of |x|, pages 110–130. Methods of Approximation Theory
in Complex Analysis and Mathematical Physics, Edited by A. A. Gonchar, E. B. Saff,
Series: Lecture Notes in Mathematics, Moscow: Nauka. Springer-Verlag, 2013.
[39] R. S. Varga, A. Ruttan, and A. J. Carpenter. Numerical results on best uniform rational
approximation of |x| on [−1; +1]. Math. USSR Sbornik, 74:271–290, 1992.
[40] N.S. Vjacheslavov. On the uniform approximation of |z| by rational functions. Sovier
Math. Dokl., 16:100–104, 1975.
28