Chapter 3 Multiplicative Error Reduction
© National Instruments Corporation 3-15 Xmath Model Reduction Module
The conceptual basis of the algorithm can best be grasped by considering 
the case of scalar G(s) of degree n. Then one can form a minimum phase, 
stable W(s) with |W(jω)|2 = |G(jω)|2 and then an all-pass function (the phase 
function) W–1(–s) G(s). This all-pass function has a mixture of stable and 
unstable poles, and it encodes the phase of G(jω). Its stable part has 
nHankel singular values σi with σi ≤ 1, and the number of σi equal to 1 
is the same as the number of zeros of G(s) in Re[s]>0. State-variable 
realizations of W,G and the stable part of W–1(–s)G(s) can be connected in 
a nice way. The algorithm computes an additive Hankel norm reduction of 
the stable part of W–1(–s)G(s) to cause a degree reduction equal to the 
multiplicity of the smallest σi. The matrices defining the reduced order 
object are then combined in a new way to define a multiplicative 
approximation to G(s); as it turns out, there is a close connection between 
additive reduction of the stable part of W–1(–s)G(s) and multiplicative 
reduction of G(s). The reduction procedure then can be repeated on the new 
phase function of the just found approximation to obtain a further reduction 
again in G(s).
right and leftA description of the algorithm for the keyword right follows. It is based 
on ideas of [Glo86] in part developed in [GrA86] and further developed 
in [SaC88]. The procedure is almost the same when {left} is specified, 
except the transpose of G(s) is used; the following algorithm finds an 
approximation, then transposes it to yield the desired Gr(s). 
1. The algorithm checks that G(s) is square, stable, and that the transfer 
function is nonsingular at infinity. 
2. With G(s) = D+C(sI–A)–1B square and stable, with D nonsingular 
[rank(d) must equal number of rows in d] and G(jω) nonsingular for 
all finite ω, this step determines a state variable realization of a 
minimum phase stable W(s) such that,
W´(–s)W(s)= G(s)G´(–s)
with:
W(s)= Dw+C
w(sI–Aw)–1Bw
The various state variable matrices in W(s) are obtained as follows. The 
controllability grammian P associated with G(s) is first found from 
AP+ PA´ + BB´ = 0, then:
Aw=AB
w=PC´+BD´D
w=D´
The algorithm checks to see if there is a zero or singularity of G(s) 
close to the jω-axis. The zeros are determined by calculating the