National Instruments NI MATRIXx Xmath User Manual

Page 58

Advertising
background image

Chapter 3

Multiplicative Error Reduction

Xmath Model Reduction Module

3-12

ni.com

Any zero (or rank reduction) on the j

ω-axis of G(s) becomes a zero (or rank

reduction) in Re[s] > 0 of

, and if G(s) has a zero (or rank reduction)

at infinity, this is shifted to a zero (or rank reduction) of

at the point

b

–1

, (in Re[s] > 0). If all poles of G(s) are inside the circle of diameter

[–b

–1

+ j0, a + j0], all poles of

will be in Re[s] < 0, and if G(s) has no

zero (or rank reduction) on this circle,

will have no zero (or rank

reduction) on the j

ω-axis, including ω = ∞.

If G(s) is nonsingular for almost all values of s, it will be nonsingular or
have no zero or rank reduction on the circle of diameter [–b

–1

+ j0, –a + j0]

for almost all choices of a,b. If a and b are chosen small enough, G(s) will
have all its poles inside this circle and no zero or rank reduction on it, while

then will have all poles in Re[s] < 0 and no zero or rank reduction on

the j

ω-axis, including s = ∞. The steps of the algorithm, when G(s) has a

zero on the j

ω-axis or at s = ∞, are as follows:

1.

For small a,b with 0 < a < b

–1

, form

as shown for

gtildesys

.

2.

Reduce

to

, this being possible because

is stable and

has full rank on s = j

ω, including ω = ∞.

3.

Form

as shown for

gsys

.

The error

will be overbounded by the error

, and G

r

will contain the same zeros in Re[s]

≥ 0 as G.

If there is no zero (or rank reduction) of G(s) at the origin, one can take
a = 0 and b

–1

= bandwidth over which a good approximation of G(s) is

needed, and at the very least b

–1

sufficiently large that the poles of G(s)

lie in the circle of diameter [–b

–1

+ j 0, –a + j0]. If there is a zero or rank

reduction at the origin, one can replace a = 0 by a = b. It is possible to take
b too small, or, if there is a zero at the origin, to take a too small. The user
will be presented with an error message that there is a j

ω-axis zero and/or

that the Riccati equation solution may be in error. The basic explanation is
that as b

→ 0, and thus a → 0, the zeros of

approach those of G(s).

Thus, for sufficiently small b, one or more zeros of

may be identified

as lying on the imaginary axis. The remedy is to increase a and/or b above
the desirable values.

The procedure for handling j

ω-axis zeros or zeros at infinity will be

deficient if the number of such zeros is the same as the order of G(s)—for
example, if G(s) = 1/d(s), for some stable d(s). In this case, it is possible

G˜ s

( )

G˜ s

( )

G˜ s

( )

G˜ s

( )

G˜ s

( )

G˜ s

( )

G

s a

bs

1

+

-------------------

=

G˜ s

( )

G˜

r

s

( )

G˜ s

( )

G

r

s

( )

G˜

r

s a

+

bs 1

+

---------------

=

G

1

G G

r

(

)

G˜

1

G˜ G˜

r

(

)

G˜ s

( )

G˜ s

( )

Advertising