Content uploaded by Guoyong Shi
Author content
All content in this area was uploaded by Guoyong Shi on Feb 23, 2014
Content may be subject to copyright.
532 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
Passivity Enforcement for Descriptor Systems Via
Matrix Pencil Perturbation
Yuanzhe Wang, Zheng Zhang, Cheng-Kok Koh, Senior Member, IEEE, Guoyong Shi, Senior Member, IEEE,
Grantham K. H. Pang, Senior Member, IEEE, and Ngai Wong, Member, IEEE
Abstract—Passivity is an important property of circuits and
systems to guarantee stable global simulation. Nonetheless, non-
passive models may result from passive underlying structures due
to numerical or measurement error/inaccuracy. A postprocessing
passivity enforcement algorithm is therefore desirable to perturb
the model to be passive under a controlled error. However, previ-
ous literature only reports such passivity enforcement algorithms
for pole-residue models and regular systems (RSs). In this paper,
passivity enforcement algorithms for descriptor systems (DSs, a
superset of RSs) with possibly singular direct term (specifically,
D+D
T
or I − DD
T
) are proposed. The proposed algorithms cover
all kinds of state-space models (RSs or DSs, with direct terms
being singular or nonsingular, in the immittance or scattering
representation) and thus have a much wider application scope
than existing algorithms. The passivity enforcement is reduced to
two standard optimization problems that can be solved efficiently.
The objective functions in both optimization problems are the
error functions, hence perturbed models with adequate accuracy
can be obtained. Numerical examples then verify the efficiency
and robustness of the proposed algorithms.
Index Terms—Descriptor system, immittance representation,
passivity enforcement, regular system, scattering representation,
symmetric systems.
I. Introduction
P
ASSIVITY is a crucial property of circuits and systems
[1]–[19]; a circuit or system is regarded as passive
(strictly passive) if it does not generate energy (always con-
sumes energy). Passivity is an input-output property of a
system and is independent of the internal structure. A linear
time-invariant (LTI) system is passive if and only if its transfer
function is positive real (for immittance representation, i.e., ad-
mittance/impedance representation) or bounded real (for scat-
Manuscript received March 7, 2011; revised August 22, 2011; accepted
October 18, 2011. Date of current version March 21, 2012. This work was
supported in part by the Hong Kong Research Grants Council, under the
General Research Fund 718509E. This paper was recommended by Associate
Editor J. R. Phillips.
Y. Wang is with the Department of Electrical and Computer Engi-
neering, Carnegie Mellon University, Pittsburgh, PA 15213 USA (e-mail:
yzwang@cmu.edu).
Z. Zhang, G. K. H. Pang, and N. Wong are with the Department of
Electrical and Electronic Engineering, University of Hong Kong, Pokfu-
lam 999077, Hong Kong (e-mail: zzhang@eee.hku.hk; gpang@eee.hku.hk;
nwong@eee.hku.hk).
C.-K. Koh is with the School of Electrical and Computer Engi-
neering, Purdue University, West Lafayette, IN 47907 USA (e-mail:
chengkok@purdue.edu).
G. Shi is with the School of Microelectronics, Shanghai Jiaotong University,
Shanghai 201101, China (e-mail: shiguoyong@ic.sjtu.edu.cn).
Color versions of one or more of the figures in this paper are available
online at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/TCAD.2011.2174638
tering representation). A system generated by interconnecting
different passive systems is still passive. In contrary, stable but
nonpassive systems, when interfaced to other stable systems,
may generate an unstable global system [1]. Therefore, to
guarantee stable global simulation, we always want to generate
passive models for passive structures such as interconnects,
power/ground networks, and others [20]–[22].
In spite of the importance of preserving passivity, non-
passive models may be generated from passive underlying
structures due to numerical/measurement errors. In the context
of data-fitting macromodeling, nonpassivity of macromodels
may occur due to inappropriate sampling, data noise, fitting
error, etc. [23]–[26]. For example, the macromodels gener-
ated using Loewner matrix-based interpolation algorithm are
not guaranteed passive [25]. In the context of model order
reduction, nonpassive reduced-order models may be produced
even though the original full-order models are passive. The
widely used PRIMA algorithm [27] can only preserve pas-
sivity for definite original models, which constitute only a
small subclass of passive models. The positive-real balanced
truncation algorithm is not efficient for very large original
models as it has an O(n
3
ori
) complexity [28]. Note that n
ori
is
the order of the original model (instead of the reduced model),
which is usually large. In the context of electromagnetic
modeling, nonpassivity may be introduced by discretization,
modeling inaccuracy or numerical errors. For instance, the
partial element equivalent circuit (PEEC) models of passive
interconnect structures may be nonpassive [29], [30]. In all
these instances, the nonpassivity is generally mild, as a sound
modeling algorithm should be precise to certain degrees and
capture the main characteristics of the underlying system.
As a result, postprocessing passivity enforcement algorithm
is often desired. Many existing passivity enforcement algo-
rithms are developed for pole-residue models, which arise
naturally from vector fitting, by perturbing the residues (or
poles) [13], [31]. Some other algorithms enforce passivity for
state-space models based on Hamiltonian matrix perturbation
[7], [8]. However, their application scope is restricted to reg-
ular systems (RSs) with nonsingular direct term (specifically,
D+D
T
for immittance representation or I−DD
T
for scattering
representation). In practice, the direct term can be singular or
even zero in many cases. For instance, the modified nodal anal-
ysis models of RCL circuits and the macromodels generated by
Loewner matrix-based interpolation are DSs with zero direct
terms [25], [26], [32]. An extended Hamiltonian matrix pencil
0278-0070/$31.00
c
2012 IEEE
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 533
Fig. 1. Model types generated by different modeling algorithms and the
application scopes of various passivity enforcement algorithms. In the figure,
“MPVL” stands for Matrix Pade via Lanczos [34] and “BT” stands for
balanced truncation [35], [36].
method is proposed in [16] and [33] which aims at reducing the
complexity of eigenvalue solving and is able to handle singular
direct term as a by-product. In [17], the extended Hamiltonian
method is further extended to scattering representation and
a passivity enforcement scheme is introduced. But these two
methods still only work for RSs (and their efficiency is based
on the further assumption that “A” is diagonal). The important
issue regarding impulsive response of DS is still not discussed.
Descriptor systems (DSs), as a superset of RSs, are much
more popular in circuit macromodeling and simulation. To the
authors’ best knowledge, no algorithms have been proposed to
enforce passivity for the more general DSs. In this paper, we
propose passivity enforcement algorithms for DSs (thereby in-
cluding RSs) with singular or nonsingular direct terms in both
immittance and scattering representations. The model conver-
sion for handling singular direct terms in this paper is different
from that in [16] and [17]. The model types generated by dif-
ferent modeling algorithms and the applications scopes of dif-
ferent passivity enforcement algorithms are depicted in Fig. 1.
Unlike RSs, DSs may contain both proper and improper
parts. The proper part corresponds to the rational response
and the improper part corresponds to the impulsive response.
To check or enforce passivity for a DS, we have to identify
both its proper and improper parts. The proper and improper
(if existing) parts are perturbed independently and then re-
constructed together as a new passive DS. The details on the
improper/proper part identification and perturbation will be
introduced in Section III.
This paper is an extension of our previous work [37], which
covers only passivity enforcement for asymmetric immittance
DSs. In this paper, passivity enforcement algorithms for
scattering DSs and symmetric immittance DSs are proposed.
The newly proposed algorithms, together with the previous
PEDS algorithm in [37], constitute a complete toolset for
passivity enforcement for DSs (including RSs) with singular
or nonsingular direct term. The new contributions of this paper
are as follows.
1) Passivity enforcement algorithms for both asymmetric
and symmetric scattering DSs are proposed.
2) A passivity enforcement algorithm for symmetric immit-
tance DSs is proposed. There are two main advantages of
this algorithm specific for symmetric models. First, the
spectral projector-based proper part extraction, which is
the most numerically sensitive procedure in the previous
algorithm [37], is totally avoided. Second, symmetry is
preserved in the perturbed model.
3) A new method for improper part perturbation is pro-
posed, whose complexity is lower than that in [37].
This paper is organized as follows. Section II intro-
duces background knowledge. Detailed passivity enforcement
schemes are proposed in Section III. In Section IV, algo-
rithm flows are summarized and computational complexity
is analyzed. Numerical examples are given in Section V and
Section VI draws the conclusion.
II. Background
A. Descriptor Systems
We study a LTI system in the general DS format [38] as
follows:
E˙x(t)=Ax(t)+Bu(t)
y(t)=Cx(t)+Du(t) (1)
where x(t) ∈ R
n
is the state vector, u(t) ∈ R
m
is the input
vector, y(t) ∈ R
m
is the output vector, E, A ∈ R
n×n
, B, C
T
∈
R
n×m
, D ∈ R
m×m
. In most cases, we have m n. E is
generally singular, otherwise (1) can be reduced to an RS.
The matrix pencil (A, E) is assumed to be regular, i.e., there
exists at least one s
0
such that (s
0
E − A) is nonsingular. The
transfer function of (1) is
H(s)=C(sE − A)
−1
B + D. (2)
Under the regular matrix pencil assumption, the DS can be
rewritten in the Weierstrass canonical form as
E = W
I
n
f
0
0 N
T, A = W
J 0
0 I
n
∞
T (3)
where W and T are n × n nonsingular matrices, I
x
represents
an identity matrix of dimension x, n
f
+n
∞
= n. N is a nilpotent
matrix of index μ, i.e., N
μ−1
= 0 and N
μ
=0.μ is also called
the index of the DS. Using the Weierstrass canonical form,
the transfer function (2) can be decomposed into the proper
part H
p
(s) and improper part H
∞
(s) as follows:
H(s)=C
p
(sI
n
f
− J)
−1
B
p
+ M
0
H
p
(s)
+
μ−1
i=1
s
i
M
i
H
∞
(s)
(4)
where M
0
= D−C
∞
B
∞
, M
i
= −C
∞
N
i
B
∞
,
B
p
B
∞
= W
−1
B,
C
p
C
∞
= CT
−1
.
The right and left spectral projectors (P
r
and P
l
), which
project onto the right and left deflating subspaces associated
with the finite eigenvalues of (A, E), are defined as [39]
P
r
= T
−1
I
n
f
0
00
T (5a)
P
l
= W
I
n
f
0
00
W
−1
. (5b)
534 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
It can be readily verified that the transfer function of the
projected DS, namely, (EP
r
,A,B,C,D)or(P
l
E, A, B, C, D),
is identical to the proper part of the transfer function of the
original DS.
B. Symmetric Systems
In this paper, we use ¯◦ to represent complex conjugate, ◦
T
to represent transpose and ◦
∗
to represent (complex) conjugate
transpose. The DS in (1) is symmetric if its transfer function
(2) satisfies
H(s)=H
T
(s) (6)
for all s ∈ C that is not a pole of (1). If the transfer function
is written in the decomposed form as (4), the symmetry can
be equivalently defined as
M
i
= M
T
i
and C
p
J
j
B
p
=(C
p
J
j
B
p
)
T
(7)
for all integers i, j ≥ 0. If the proper part (J, B
p
,C
p
,M
0
)is
both symmetric and minimal, (J, B
p
,C
p
) and (J
T
,C
T
p
,B
T
p
) are
similar, i.e., there exists a symmetric and nonsingular matrix
T = T
T
∈ R
n×n
such that [40]
J
T
= T
−1
JT, C
T
p
= T
−1
B
p
and B
T
p
= C
p
T. (8)
Specifically, if (1) is an single-input-single-output (SISO)
system, it is automatically symmetric. A large group of linear
networks, which are commonly used in package and intercon-
nect modelings, have symmetric immittance or scattering ma-
trices due to reciprocity. Many algorithms (including balanced
truncation algorithms, passivity characterization algorithms,
and others) specifically for symmetric systems have been
proposed in literature [40]–[48]. Passivity enforcement for
symmetric RSs has been handled in [19].
C. Perturbation of Generalized Eigenvalues
For a matrix pencil (M, N)(M, N ∈ R
n×n
), if there exist a
scalar λ ∈ C and two vectors x, y ∈ C
n
that satisfy
Mx = λNx; y
∗
M = λy
∗
N (9)
then λ is called the generalized eigenvalue of (M, N) and x, y
are called the right and left eigenvectors associated with λ.
The generalized eigenvalue λ can be written as a tuple
α, β
with λ = α/β.Ifβ =0,λ is an infinite eigenvalue. If the matrix
pencil is perturbed by a small matrix pencil (M, N), the
tuple changes from
α, β
=
y
∗
Mx, y
∗
Nx
to
α
,β
=
α, β
+
y
∗
Mx, y
∗
Nx
+ O(
2
). (10)
Here = [M N]
2
, x, y are normalized eigenvectors
associated with the generalized eigenvalue
α, β
.
D. Hamiltonian and Symplectic Matrices
A real 2n × 2n matrix X is called a Hamiltonian matrix if
it satisfies
J
−1
0
XJ
0
= −X
T
(11)
where J
0
=
0 I
n
−I
n
0
satisfies J
T
0
= J
−1
0
= −J
0
.Onthe
contrary, X ∈ R
2n×2n
is called a symplectic matrix if
J
−1
0
XJ
0
= X
T
. (12)
If J is Hamiltonian and K is symplectic, the generalized
eigenvalues λsof(J , K) distribute symmetrically on the com-
plex plane with reference to (w.r.t.) both real and imaginary
axes. Besides, some matrix X has the following property:
K
0
XK
0
= X
T
(13)
where K
0
=
0 I
I 0
= K
T
0
= K
−1
0
. This property is named
K
0
− property in this paper.
E. Passivity Conditions of a DS
In circuit simulation, an LTI circuit or network can be
treated as a black box and fully described by its characteristic
parameters. Among the various parameters, admittance param-
eter (Y), impedance parameter (Z), and scattering parameter
(S) are most commonly used. For a state-space model in the
immittance (Y or Z) representation, it is passive if and only if
its transfer function is positive real. For a state-space model
in the scattering (S) representation, it is passive if and only if
its transfer function is bounded real.
The positive realness of a transfer function H(s)isequiva-
lent to:
1) H (s) has no poles with positive real parts;
2) G(jω)=
1
2
(
H(jω)+H
∗
(jω)
)
≥ 0 for any jω that is not
a pole of H(s), ω ∈ R;
3) if jω or ∞ is a pole of H(s), then it is a simple pole
and the relevant residue matrix is positive semidefinite.
We use σ
max
(X) to represent the maximum singular value
of the matrix X. The bounded realness of a transfer function
H(s) is equivalent to:
1) H (s) has no poles with positive real parts;
2) sup
ω∈R
{σ
max
(H(jω))}≤1.
For a transfer function written in its decomposed form as
(4), it is positive real if and only if:
1) the proper part H
p
(s) is positive real;
2) the improper part satisfies M
1
≥ 0 and M
i
= 0 for i ≥ 2.
It is bounded real if and only if:
1) the proper part H
p
(s) is bounded real;
2) the improper part is zero, i.e., M
i
= 0 for i ≥ 1.
Denote M
ν−1
as the highest order moment that is not zero
(i.e., M
ν−1
= 0 and M
ν
= 0). If the DS is in its minimal
realization (i.e., the DS is both controllable and observable),
ν = μ. Otherwise, ν ≤ μ [6].
F. GHM Theorems
In this section, we introduced four generalized Hamiltonian
method (GHM) theorems that relate the positive realness or
bounded realness of a DS transfer function to the purely
imaginary or negative real generalized eigenvalues of a ma-
trix pencil. These theorems serve as guidelines to pinpoint
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 535
passivity violation bands. They also provide information for
passivity enforcement afterward.
Theorem 1: GHM [6]: For a stable, impulse-free DS in the
immittance representation, if 0 is not an eigenvalue of
D+D
T
2
,
then 0 is an eigenvalue of G(jω)=
1
2
(
H(jω)+H
∗
(jω)
)
if and
only if jω is a generalized eigenvalue of the matrix pencil
(J , K), where
J =
A + BQ
−1
CBQ
−1
B
T
−C
T
Q
−1
C −A
T
− C
T
Q
−1
B
T
K =
E
E
T
,Q= −(D + D
T
). (14)
Theorem 2: HGHM [47]: For a stable symmetric DS in
the immittance representation with ν = 1 or 2, if 0 is not
an eigenvalue of D, then 0 is an eigenvalue of G(jω)=
1
2
(
H(jω)+H
∗
(jω)
)
if and only if −ω
2
is a generalized
eigenvalue of (J , K), where
J = A − BD
−1
C, K = EA
−1
E. (15)
Theorem 3: S-GHM [48]: For a stable impulse-free DS in
the scattering representation, if 1 /∈ σ(D), then 1 ∈ σ(H(jω))
if and only if jω is a generalized eigenvalue of (J , K), with
J =
A − BD
T
S
−1
C −BR
−1
B
T
C
T
S
−1
C −A
T
+ C
T
DR
−1
B
T
K =
E
E
T
(16)
where S = DD
T
− I, R = D
T
D − I, σ(D) represents the set
of singular values of D.
Theorem 4: S-HGHM [48]: For a stable symmetric and
impulse-free DS in the scattering representation, if 1 /∈ σ(D),
then 1 ∈ σ(H (jω)) if and only if ω
2
is a generalized eigenvalue
of (J , K), with
J = A − BDS
−1
C − BR
−1
C
K = E(−BR
−1
C + BDS
−1
C − A)
−1
E (17)
where S = DD
T
− I, R = D
T
D − I, σ(D) represents the set
of singular values of D.
III. Passivity Enforcement Schemes
To check or enforce passivity for a DS, we have to identify
both its proper and improper parts. The schemes of the passiv-
ity enforcement algorithms for DSs in different representations
are shown in Fig. 2.
1) For asymmetric scattering DSs, the improper part should
be zero and the proper part can be enforced to be
passive through a Hamiltonian-symplectic matrix pencil
perturbation.
2) For symmetric scattering DSs, the improper part should
be zero and the proper part can be enforced to be passive
through a half-size matrix pencil perturbation.
3) For asymmetric immittance DSs, the improper part is
extracted using an efficient algorithm and perturbed via a
linear matrix inequality (LMI) method. Then the proper
part is extracted through a canonical projector-based
Fig. 2. Passivity enforcement schemes for DSs in different representations.
approach and enforced to be passive via Hamiltonian-
symplectic matrix pencil perturbation.
4) For symmetric immittance DSs, the improper part is
extracted and perturbed using the LMI method. Unlike
the case for asymmetric DSs, no proper part extraction
is required as the improper part can be automatically
eliminated in the positive realness analysis. The DS
is enforced to be passive via a half-size matrix pencil
perturbation.
Moreover, if a DS (including RS) contains singular direct term,
a model conversion should be performed in advance. Finally,
the improper part perturbation can be converted to a standard
LMI “mincx” problem [49] and the proper part perturbation
can be converted to a standard least-squares problem, both of
which have solutions that can be computed efficiently. The
object functions of both standard (optimization) problems are
the error functions, hence the perturbed model with adequate
accuracy can be obtained.
In this section, passivity enforcement schemes are detailed.
The steps (A)–(G) in Fig. 2 are discussed in Sections III-A–
III-G, respectively.
A. Model Conversion
The applicability of the GHM theorems is based on the
assumption that 0 /∈ eig(D + D
T
)or1 /∈ σ(D). If this is
not the case, we should convert the DS into an equivalent
one that satisfies the assumption. In this section, the model
conversion methods for both immittance and scattering DS are
introduced.
1) For Immittance DSs: For immittance DSs with singular
direct terms (i.e., D + D
T
), an equivalent model conversion
should be performed in advance, through which D + D
T
can
be made nonsingular without changing the transfer function
of the system [6]. Assume that κ>0 is not an eigenvalue of
1
2
(D + D
T
)(ifD = 0, assign κ = 1), we have κI −
1
2
(D + D
T
)
being invertible. Denote it as Q
κ
. Then, the original system
can be converted to
E
eq
=
E
0
A
eq
=
A
Q
−1
κ
B
eq
=
B
I
m
C
eq
=
[
CI
m
]
,D
eq
= κI
m
. (18)
536 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
It can be verified that the model conversion does not change
the transfer function. Besides, it can be proven that an original
RS is converted to an impulse-free DS and an original DS is
converted to a DS with the same index.
2) For Scattering DSs: For scattering DSs with singular
direct terms (i.e., I − DD
T
), an equivalent model conversion
should be performed in advance, through which I − DD
T
can
be made nonsingular without changing the transfer function
of the system [48]. Let 0 <κ<1, we have
E
eq
=
E
0
A
eq
=
A
I
m
B
eq
=
B
κI
m
− D
C
eq
=
[
CI
m
]
,D
eq
= κI
m
. (19)
The transfer function of the equivalent model (18) is iden-
tical to that of the original model [48]. I −D
eq
D
T
eq
=(1− κ
2
)I
is guaranteed to be nonsingular. If the original model is an RS
or an impulse-free DS, the converted model is an impulse-free
DS.
B. Impulse Check
According to Section II-E, the passivity conditions for im-
mittance and scattering DSs both involve the existence check
of the improper part (impulsive response). Directly computing
the Weierstrass canonical form (3) of a DS is known to
be prohibitively expensive and ill-conditioned. Therefore, we
introduce a new method to calculate ν. Consider the transfer
function in (4), we calculate the limit (note that the limit is
an m by m matrix and s
−1
is a scalar multiplied to the matrix
H(s)) as follows:
= lim
s→∞
s
−1
H(s). (20)
1) For immittance DSs:
a) if =0,ν = 1, the DS is impulse-free;
b) if = ∞, ν>2, the DS is definitely nonpassive;
c) if = constant =0,ν = 2, improper part extrac-
tion and possible proper part extraction should be
performed.
2) For scattering DSs:
a) if =0,ν = 1, the DS is impulse-free;
b) if = constant =0or = ∞, ν ≥ 2, the DS is
definitely nonpassive.
In practice, can be calculated by substituting two large
positive number s
1
,s
2
0 with s
1
= γs
2
(3 <γ<10).If
H(s
1
)
2
H(s
2
)
2
<< γ, =0;if
H(s
1
)
2
H(s
2
)
2
= γ, = constant; otherwise,
= ∞. As the DSs discussed are stable, all the poles are
distributed on the left half of complex plane. Thus sE − A is
always invertible when s>0. The numerical stability and high
efficiency of this method has also been verified by real-world
examples of orders from hundreds to tens of thousands.
C. Improper Part Extraction
If = constant = 0 for immittance DSs, improper part
should be extracted and perturbed to be positive semidefinite to
guarantee passivity. Improper part extraction can be performed
by limit calculation as follows:
M
1
= lim
s→∞
s
−1
H(s). (21)
Alternatively, the improper part can be calculated using
canonical projector methods. Right and left spectral projectors
(P
r
and P
l
) can be calculated in three steps [50]–[52]. Then
the improper is extracted as the transfer function of a new DS
(E
∞
,A,B,C,D) minus H(0), that is
sM
1
= C
(
sE
∞
− A
)
−1
B + D − H(0) (22)
where E
∞
= E(I − P
r
)orE
∞
=(I − P
l
)E.
In practice, we can substitute an arbitrary positive number
s
1
into (21) as follows:
M
1
=
1
s
1
C
(
s
1
E
∞
− A
)
−1
B + D − H(0)
. (23)
It should be noted that improper part extraction only applies
to passivity enforcement of immittance DSs, as shown in
Fig. 2.
D. Improper Part Perturbation
The improper part, if exists, has been extracted as sM
1
.
To enforce passivity, we should perturb M
1
to be positive
semidefinite. The following optimization problem should be
solved:
min
˜
M
1
˜
M
1
− M
1
∞
subject to
˜
M
1
≥ 0. (24)
The optimization problem (24) can be solved using MAT-
LAB LMI toolbox by converting it to a standard “mincx”
problem [53] as follows:
min
e∈R
es.t.
⎧
⎪
⎪
⎨
⎪
⎪
⎩
˜
M
1
> 0,
−t
ij
≤ ˜m
ij
− m
ij
≤ t
ij
, (1 ≤ i ≤ m, i ≤ j ≤ m)
i−1
j=1
t
ji
+ t
ii
+
m
j=i+1
t
ij
≤ e. (1 ≤ i ≤ m)
(25)
where ˜m
ij
(i ≤ j,˜m
ji
=˜m
ij
) represents the (i, j)th element of
˜
M
1
, m
ij
(i ≤ j, m
ji
= m
ij
) represents the (i, j )th element of M
1
.
Lemma 1: The solution of the optimization problem (25) is
identical to that of (24).
Proof: See Appendix A.
Note that the size of M
1
is m (i.e., the number of ports,
which is usually small). Hence the computational complexity
of solving (25) is low, even lower than the method in [37].
s
˜
M
1
is the perturbed improper part, which, together with the
perturbed proper part, can be reconstructed as a new DS (see
Section III-G).
E. Proper Part Extraction
For immittance DSs, if = constant = 0 according to
impulse check, proper part should be extracted. However, the
proper part extraction can be avoided if the immittance DS is
symmetric, as shown in Fig. 2. Therefore, this step only applies
to passivity enforcement of asymmetric immittance DSs.
1) For Symmetric Immittance DSs: For a symmetric im-
mittance DS, because M
1
= M
T
1
[see (7)], we have
H(jω)+H
∗
(jω)=H
p
(jω)+jωM
1
+ H
T
p
(−jω) − jωM
T
1
= H
p
(jω)+H
T
p
(−jω). (26)
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 537
Hence the improper part sM
1
will be automatically canceled in
the subsequent positive realness analysis. Therefore, no proper
part extraction is required.
2) For Asymmetric Immittance DSs: For asymmetric DSs,
the proper part can be extracted as the transfer function of a
new DS (E
p
= EP
r
,A,B,C,D)or(E
p
= P
l
E, A, B, C, D),
that is
H
p
(s)=C(sE
p
− A)
−1
B + D. (27)
The projection matrices P
l
and P
r
can be computed using
the canonical projector-based method. The canonical projector-
based method is relatively robust and does not require the
computation of W and T [see (5a) and (5b)]. The readers
are referred to [51] and [52] for the details of the canonical
projector-based method.
F. Proper Part Perturbation
The proper part mentioned in this section is the projected
DS (E
p
,A,B,C,D) for asymmetric immittance DS or the
original DS (E, A, B, C, D) for scattering DS and symmetric
immittance DS. We do not distinguish between E and E
p
in this section with the implication that E means E
p
for
asymmetric immittance DSs. For DSs in different represen-
tations, we should perturb different matrix pencil to enforce
passivity. However, the error control scheme is the same.
In the remainder of this subsection, we will first propose a
error control scheme. Then, we will propose the matrix pencil
perturbations for scattering DSs, symmetric immittance DSs
and asymmetric immittance DSs, respectively. Symmetry is
preserved in the process of matrix pencil perturbation for
symmetric immittance DSs, which follows that (26) always
holds. Thus, proper part extraction is not required. The meth-
ods introduced in this section are direct generalizations of the
procedure in [7].
1) Error Control: According to Theorems 1–3, we can
enforce passivity by perturbing the matrix pencil (J , K). The
matrix pencils (J , K), as defined in (14)–(16), are constructed
by state-space matrices E, A, B, C, D. Hence at least one
of the state-space matrices has to be perturbed. Here we
choose to perturb the matrix C for the following reasons.
First, E and A should remain unchanged to guarantee that
the perturbed system remains stable and to preserve the
key dynamic properties of the system (pole distribution).
Second, the perturbation of D will introduce inaccuracy in
the whole frequency band. Thus we keep D unperturbed.
The only choice is to perturb B and/or C, which is con-
venient as the transfer function is a linear function of C
and B. Only C is perturbed in the following discussion for
simplicity.
We derive a criterion to control the error introduced by
perturbing C. Assuming the impulse response (inverse Laplace
transform of transfer function) of the DS (E, A, B, C, D)
is h(t), the error of the perturbed model can be measured
by
=
∞
0
dh(t)
2
F
dt =
∞
0
trace
dh(t)dh
T
(t)
dt. (28)
As dh(t)=dCF(t)B with F (t)=T
−1
e
Jt
0
00
W
−1
,we
have
= trace
dCG
pc
dC
T
. (29)
Here,
G
pc
=
∞
0
F(t)BB
T
F
T
(t)dt (30)
is called the proper controllability Gramian, which can be
solved from the projected generalized Lyapunov equations [39]
as follows:
EG
pc
A
T
+ AG
pc
E
T
= −P
l
BB
T
P
T
l
,
G
pc
= P
r
G
pc
. (31)
Assume that G
pc
= L
T
L (Cholesky factorization), a coordi-
nate transformation is performed as follows:
dC
t
= dCL
T
. (32)
Thus,
= trace
dC
t
dC
T
t
= dC
t
2
F
= vec(dC
t
)
2
2
. (33)
Here, vec(X) is a vector constructed by stacking all the
columns of X.
2) For Asymmetric Scattering DSs: We begin with a
neat method (as Proposition 1) to pinpoint the frequency
bands where passivity violations occur. Compared with the
Hamiltonian method for RSs [7], the proposed method does
not require the relatively expensive calculation of slopes. For
handling multiple purely imaginary eigenvalues, we refer the
readers to [7] for details.
Proposition 1: Assume that the set = {jω
i
} (i =
1, 2,...,k) contains all purely imaginary eigenvalues of
(J , K) with positive imaginary parts, sorted in ascending
order, which divide the frequency band [0, +∞)intok +1
segments. Calculate σ(H (jω)) at the center frequency of each
segment (for the (k + 1)th segment the frequency is selected as
3
2
jω
k
). If σ
max
(H(jω)) ≤ 1 for the segment defined by jω
i
and
jω
i+1
, then the system is passive in this frequency segment,
otherwise it is nonpassive.
The above proposition involves identification of the purely
imaginary eigenvalues. In practice, the purely imaginary eigen-
values have small real parts introduced by rounding errors. In
[7], a bound is selected a priori and eigenvalues with real parts
under this bound are interpreted as “purely imaginary.” But in
different problems the numerical errors may be very different,
which renders it very difficult to choose this bound. A more
robust criterion is proposed here.
Lemma 2: All the generalized eigenvalues of (J , K)
distribute symmetrically w.r.t. both real and imaginary
axes.
Proof: See Appendix B.
Hence, all the complex but not purely imaginary eigenvalues
have mirrors w.r.t. imaginary axis. They appear in the form of
±σ ± jω (four in a group). The purely imaginary eigenvalues
do not have such mirrors w.r.t. the imaginary axis and they
538 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
appear in the form of σ ± jω (two in a group). The imple-
mentation of imaginary generalized eigenvalues identification
is detailed as follows.
a) Select a loose bound ξ.
b) Find all the λ
i
’s with Re(λ
i
) <ξ. These λ
i
’s form a set
1
.
c) For each λ
i
∈
1
, check whether there exists a λ
j
(j = i)
such that |λ
j
− (−λ
i
)| < 2Re(λ
i
). If no such λ
j
exists,
λ
i
is determined as imaginary.
Now we move on to discuss matrix pencil perturbation. If
C is perturbed by a small matrix dC, the symplectic matrix K
remains the same while the Hamiltonian matrix J is perturbed
by dJ , with
dJ =
−BD
T
S
−1
dC 0
dC
T
S
−1
C + C
T
S
−1
dC dC
T
DR
−1
B
T
dK =0
(34)
where S = DD
T
−I, R = D
T
D−I are both symmetric. Similar
to J , dJ is readily checked to be Hamiltonian.
As a result, the generalized eigenvalues of (J , K) change
from λ to λ
[see (10)] as follows:
λ
=
α
β
=
α + α
β
= λ +
y
∗
dJ x
y
∗
Kx
. (35)
Lemma 3: For a purely imaginary generalized eigenvalue
of (J , K), the right and left eigenvectors x, y associated with
it satisfy y = J
0
x.
Proof: See Appendix C.
Consequently, (35) can be rewritten as
λ
− λ =
x
∗
J
0
dJ x
x
∗
J
0
Kx
. (36)
As J
−1
0
dJ J
0
= −dJ
T
, J
−1
0
KJ
0
= K
T
,wehaveJ
0
dJ =
dJ
T
J
T
0
and J
0
K = −K
T
J
T
0
, i.e., J
0
dJ is real symmetric and
J
0
K is real and skew symmetric. It follows that x
∗
J
0
dJ x is
real and x
∗
J
0
Kx is purely imaginary. As a result, λ
remains
purely imaginary if λ is purely imaginary.
Let the ith purely imaginary eigenvalue of (J , K)bejω
i
and it is supposed to be moved to j ˜ω
i
. Suppose that σ(H(jω))
between jω
i
and jω
i+1
(ω
i
<ω
i+1
) exceeds 1, ˜ω
i
can be chosen
as
˜ω
i
= ω
i
+ (ω
i+1
− ω
i
). (37)
Here, 0 <<0.5. As the selection of ˜ω
i
is partially heuristic,
the perturbed DS should be treated as a new input and go
through the passivity check procedure again. If nonpassive,
iterative perturbations should be performed. In practice, the
iteration number is usually no more than 5 if the passivity
violation is mild (which ought to be the case when the
underlying system is intrinsically passive).
Split x
i
into two vectors of the same size x
i
=
x
i,1
x
i,2
and
denote z
i
= S
−1
(Cx
i,1
+ DB
T
x
i,2
). Using Kronecker product
property, (36) can be transformed as
Re
x
T
i,1
L
−1
⊗ z
∗
i
× vec(dC
t
)=(˜ω
i
− ω
i
)Im
x
∗
i,2
Ex
i,1
.
(38)
Here dC
t
= dCL
T
is substituted into (38) to facilitate the
error control, as the perturbation error is the square of the
Frobenius norm of dC
t
. In (38), the perturbation matrix C
t
is
isolated. Denote
m
i
= Re
x
T
i,1
L
−1
⊗ z
∗
i
(39a)
n
i
=(˜ω
i
− ω
i
)Im
x
∗
i,2
Ex
i,1
. (39b)
If there exist k generalized eigenvalues to be moved, (38)
can be incorporated k times as a matrix format as
min vec(dC
t
)
2
, subject to M × vec(dC
t
)=N (40)
where M =
⎡
⎢
⎣
m
1
.
.
.
m
k
⎤
⎥
⎦
∈ R
k×mn
, N =
⎡
⎢
⎣
n
1
.
.
.
n
k
⎤
⎥
⎦
∈ R
k×1
.
This is a standard least-squares problem which can be solved
efficiently. The constraint is an underdetermined equation as
the number of unknowns mn far exceeds the number of
equations k, i.e., k mn. Two possible ways of solving
this problem are the pseudoinverse method and the orthogonal
matrix triangularization (QR)-factorization method. For the
pseudoinverse method, the solution is M
T
(MM
T
)
−1
N.For
the QR-factorization method, the solution is M
Q
M
R
−T
N with
M
Q
M
R
= M
T
being a QR-factorization of M
T
. The perturbed
passive proper part is (E, A, B,
˜
C, D) with
˜
C = C + dC
t
L
−T
.
3) For Symmetric Scattering DSs: For symmetric scatter-
ing DSs, symmetry should be preserved in the perturbation
procedures. A symmetric scattering DS (E, A, B, C, D) can
be rewritten as (E
s
,A
s
,B
s
,C
s
,D
s
), where
E
s
=
E
E
T
,A
s
=
A
A
T
,B
s
=
B
C
T
C
s
=
1
2
C
1
2
B
T
,D
s
=
1
2
D + D
T
. (41)
Note that (41) is not a definition of “symmetry” but an
equivalent model conversion. The definition of symmetry is
given in Section II-B. The transfer function of the DS in (41)
reads
H
s
(s)=
1
2
C(sE − A)
−1
B+D+B
T
(sE
T
−A
T
)
−1
C
T
+ D
T
= C(sE − A)
−1
B + D = H(s). (42)
Besides, the DS (E
s
,A
s
,B
s
,C
s
,D
s
) remains symmetric no
matter how we perturb the matrix C. Subsequently, the matrix
pencil in (17) reads
J =
A − BXC −BXB
T
−C
T
XC A
T
− C
T
XB
T
K =
E
E
T
BYC − A BYB
T
C
T
YC C
T
YB
T
− A
T
−1
E
E
T
(43)
where
X =(D + D
T
− 2I)
−1
Y =(D + D
T
+2I)
−1
. (44)
It is readily verified that both J and K have K
0
-property.
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 539
An error bound of the perturbed DS (52) is introduced
as follows. Assume that if we perturb matrix C by dC,the
perturbation of the impulse response of the original DS is
dh(t) and that of the symmetric DS (52) is dh
s
(t), we have
dh
s
(t)
F
=
1
2
dh(t)+
1
2
dh
T
(t)
F
≤
1
2
dh(t)
F
+
1
2
dh
T
(t)
F
= dh(t)
F
.
Thus dh(t)
F
can be used as an upper bound of dh
s
(t)
F
.
As a result, similar procedures as in Section III-F1 can
be performed to obtain the coordinate transform matrix L,
which can be used to control the error of perturbation in the
symmetric case as will be discussed below.
If C is perturbed by a small matrix dC,Wehave
dJ = −
BXdC
dC
T
XC + C
T
XdC dC
T
XB
T
dK =
E
E
T
K
11
K
12
K
21
K
22
·
BYdC
dC
T
YC + C
T
YdC dC
T
YB
T
K
11
K
12
K
21
K
22
E
E
T
(45)
where
K
11
K
12
K
21
K
22
=
BYC − A BYB
T
C
T
YC C
T
YB
T
− A
T
−1
with the property that K
11
= K
T
22
and K
12
= K
T
12
and
K
21
= K
T
21
. dJ and dK are also readily checked to have
K
0
− property.
According to (10), we have
λ
=
α
β
=
α + α
β + β
= ω
2
+
αβ − αβ
β
2
= λ +
(y
∗
dJ x)(y
∗
Kx) − (y
∗
J x)(y
∗
dKx)
(y
∗
Kx)
2
. (46)
Lemma 4: For a real eigenvalue λ, the eigenvectors x, y
associated with it satisfy y = K
0
x.
Proof: See Appendix D.
Thus (46) becomes
λ
= λ +
(x
∗
K
0
dJ x)(x
∗
K
0
Kx) − (x
∗
K
0
J x)(x
∗
K
0
dKx)
(x
∗
K
0
Kx)
2
. (47)
As K
0
dJ , K
0
dK, K
0
J , and K
0
K are all symmetric, the
numerator and denominator of (47) are both real. Therefore,
if the original eigenvalue λ is real, the perturbed eigenvalue
λ
is still real. Let
k
1
=
1
x
∗
K
0
Kx
,k
2
=
x
∗
K
0
J x
(x
∗
K
0
Kx)
2
(48)
which are both real numbers. Equation (47) can be rewritten
as
˜ω
2
i
= ω
2
i
+ k
1
x
∗
i
K
0
dJ x
i
− k
2
x
∗
i
K
0
dKx
i
. (49)
Splitting x
i
into two vectors of the same dimensions x
i1
and
x
i2
, followed by similar calculation as in Section III-F2, we
have an optimization problem similar to (40), with
m
i
=2Re
k
1
(x
T
i1
L
−1
) ⊗ z
∗
i1
+k
2
(x
T
i1
E
T
K
22
L
−1
+ x
T
i2
EK
12
L
−1
) ⊗ (z
∗
i2
+ z
∗
i3
)
z
i1
= X(Cx
i1
+ B
T
x
i2
),z
i2
= Y (B
T
K
21
+ CK
11
)Ex
i1
z
i3
= Y (B
T
K
22
+ CK
12
)E
T
x
i2
,n
i
= ω
2
i
− ˜ω
2
i
. (50)
With the solution dC
t
,wehave
˜
C = C + dC
t
L
−T
and the
perturbed DS being
E
s
=
E
E
T
,A
s
=
A
A
T
,B
s
=
B
˜
C
T
C
s
=
1
2
˜
C
1
2
B
T
,D
s
=
1
2
D + D
T
. (51)
4) For Asymmetric Immittance DSs: For asymmetric im-
mittance DSs, proper part perturbation requires solving a
similar least-square problem as (40) with the same defini-
tion of m
i
and n
i
as in (39a). The only difference is that
z
i
=(D + D
T
)
−1
(Cx
i,1
+ B
T
x
i,2
) in this case. The perturbed
passive proper part is (E, A, B,
˜
C, D) with
˜
C = C + dC
t
L
−T
.
5) For Symmetric Immittance DSs: The deduction in
this subsection is very similar to that in Section III-F3.
For symmetric immittance DSs, symmetry should be pre-
served in the perturbation procedures to totally avoid the
numerically sensitive proper part extraction. A symmetric
immittance DS (E, A, B, C, D) can be similarly rewritten as
(E
s
,A
s
,B
s
,C
s
,D
s
), where
E
s
=
E
E
T
,A
s
=
A
A
T
,B
s
=
B
C
T
C
s
=
1
2
C
1
2
B
T
,D
s
=
1
2
D + D
T
. (52)
To compute the perturbed DS, we have to solve an opti-
mization problem similar to (40), with
m
i
= Re
(x
T
i1
L
−1
) ⊗ z
∗
i
(53a)
n
i
=(ω
2
i
− ˜ω
2
i
)Re(x
∗
2
EA
−1
Ex
1
) (53b)
z
i
= Q
−1
0
(Cx
i1
+ B
T
x
i2
). (53c)
With the solution dC
t
,wehave
˜
C = C + dC
t
L
−T
and the
perturbed DS being
E
sp
=
E
E
T
,A
sp
=
A
A
T
,B
sp
=
B
˜
C
T
C
sp
=
1
2
˜
C
1
2
B
T
,D
s
=
1
2
D + D
T
. (54)
This perturbed DS can pass the passivity check in Theo-
rem 2, but may contain nonpassive improper part. To ensure
the passivity of the improper part, a system recovery should
be performed as discussed in Section III-G.
G. System Reconstruction
System reconstruction only applies to immittance DSs when
improper part exists. The perturbed improper and proper parts
are reconstructed as a new DS for further use.
540 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
1) For Asymmetric Immittance DS: For an asymmetric
immittance DS, the reconstructed DS reads
E
=
⎡
⎣
E
p
0 I
m
00
⎤
⎦
A
=
⎡
⎣
A
p
I
m
I
m
⎤
⎦
B
=
⎡
⎣
B
0
˜
L
T
⎤
⎦
C
=
˜
C −
˜
L 0
D
= D (55)
where
˜
M
1
=
˜
L
T
˜
L is the Cholesky factorization of
˜
M
1
. One can
easily check that the transfer function of this DS is identical to
the sum of the proper and improper parts. Besides, A
remains
nonsingular if A is nonsingular and E
is index-2 if E is index-
2 (note that the matrix block
0 I
m
00
is index-2).
2) For Symmetric Immittance DS: For a symmetric immit-
tance DS, the reconstructed DS reads
E
=
⎡
⎣
E
sp
0 I
m
00
⎤
⎦
A
=
⎡
⎣
A
sp
I
m
I
m
⎤
⎦
B
=
⎡
⎣
B
sp
0
˜
M
1
− M
(p)
1
⎤
⎦
C
=
C
sp
− I
m
0
,D
= D
sp
. (56)
Here, M
(p)
1
is the improper part obtained by performing the
improper part extraction again on the perturbed symmetric DS
(54). One can easily check that the transfer function of this DS
equals to the sum of the perturbed passive proper and improper
parts. Consequently, the transfer function is still symmetric.
IV. Algorithm Flow and Complexity Analysis
A. For Asymmetric Scattering DS
1) Step A (model conversion): This step is merely a
reformulation of the matrices and its computation is
negligible.
2) Step B (impulse check): This step involves matrix-vector
operation and has low computational complexity. Sparse
LU-decomposition can be utilized if the DS is sparse.
3) Step F (proper part perturbation):
a) Calculation of coordinate transform matrix L:
This procedure requires solving the projected gen-
eralized Lyapunov equations (31) and its Cholesky
decomposition. The computational complexity is
O(n
3
).
b) Iterative matrix pencil perturbation: This pro-
cedure dominates the computation time of the
algorithm. In each iteration, a generalized eigen-
value problem and a least-squares optimization
problem should be solved. The complexity of the
generalized eigenvalue problem is O((2n)
3
), with
n being the order of the model. The least-squares
optimization problem requires O(nmk
2
), with m
being the number of ports and k being the number
of eigenvalues to be perturbed. In most cases we
have m n and k n. The iteration number
usually does not exceed 5.
Fig. 3. (First example.) We perturb the original model to be passive.
(a) Eigenvalue plot of G(jω). (b) Generalized eigenvalue distribution of the
matrix pencil (J , K).
In summary, the complexity of the algorithm is O(n
3
×iter)
and is dominated by the iterative matrix pencil perturbation
procedure.
B. For Symmetric Scattering DS
1) Steps A–B: Same as the analysis in Section IV-A.
2) Step F (proper part perturbation):
a) Calculation of coordinate transform matrix L:
This procedure requires solving the same pro-
jected generalized Lyapunov equations as in the
asymmetric scattering DS case. The computational
complexity is O(n
3
).
b) Iterative matrix pencil perturbation: The dimen-
sion of the half-size matrix pencil is also 2n due
to the model conversion in (41). Hence, the com-
plexity is the same as the analysis in Section IV-A.
In summary, the complexity of the algorithm is O(n
3
×iter).
C. For Symmetric Immittance DS
1) Steps A–B: Same as the analysis in Section IV-A.
2) Step C (improper part extraction): Improper part extrac-
tion can be done in the process of impulse check. Thus
no additional calculation is needed for this step.
3) Step D (improper part perturbation): This step involves
solving an LMI “mincx” problem, with one dimension-
m constraint and m(m +3)/2 dimension-1 constraints.
m is the number of ports which is usually small. The
computational complexity of this procedure is low.
4) Step F: Same as the analysis in Section IV-A.
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 541
Fig. 4. (First example.) We perturb the original model to be “more” non-
passive. (a) Eigenvalue plot of G(jω). (b) Generalized eigenvalue distribution
of the matrix pencil (J , K).
5) Step G (system reconstruction): This step is merely a
reformulation of the matrices and its computation is
negligible.
In summary, the complexity of the algorithm is O(n
3
×iter).
D. For Asymmetric Immittance DS
1) Steps A–D: Same as the analysis in Section IV-C.
2) Step E (proper part extraction): This step involves
canonical projector computation. The complexity is
O(n
3
).
3) Steps F–G: Same as the analysis in Section IV-C.
In summary, the complexity of the algorithm is O(n
3
×iter).
E. Summary of Complexity Analysis
The algorithm flows for asymmetric and symmetric scat-
tering DSs both involve three steps: model conversion
(Step A), impulse check (Step B), and proper part perturbation
(Step F). The algorithm flow for symmetric immittance DSs
involves three more steps: improper part extraction (Step C),
improper part extraction (Step D), and system reconstruction
(Step G). The algorithm flow for asymmetric immittance DSs
requires one more step than that for symmetric immittance
DSs: proper part extraction (Step E).
Among Steps A–G, the proper part perturbation (Step F)
has the largest complexity. As the algorithm flows for all the
four types of DSs involve Step F, the overall complexities for
all the four algorithm flows are O(n
3
× iter).
Fig. 5. (Second example.) Singular value patterns of H (jω)ofthe
(a) original nonpassive model and the (b) perturbed passive model.
V. Numerical Examples
A. PEEC Reduced-Order Model
The model used in this example is a PEEC reduced-order
model [54]. The original model is an SISO DS of order 480,
with D = 0. A reduced-order model (with the order being
35) is obtained using PRIMA. The model is in the immittance
representation and is nonpassive at the frequency band from
s
1
=1.15j (rad/s) to s
2
=1.39j (rad/s). To enforce passivity,
we perturb s
1
to higher frequency and s
2
to lower frequency,
with the displacement being 0.28 ∗|s
2
− s
1
|. The eigenvalue
plots of G(jω) of the original and perturbed models are shown
in Fig. 3(a), from which we conclude that the perturbed model
is passive. The original, first-order approximated and real
perturbed s
1
,s
2
are shown in Fig. 3(b). It can be seen that
although the first-order approximations of s
1
,s
2
remain on
the imaginary axis, the real perturbed s
1
,s
2
are moved off
the imaginary axis. On the other hand, if we perturb s
1
,s
2
wrongly with the same amount but in the other directions,
the perturbed s
1
,s
2
remain on the imaginary axis and the
perturbed model is nonpassive (in fact “more” nonpassive),
as shown in Fig. 4. We use this wrong perturbation result to
illustrate how the purely imaginary eigenvalues move on the
complex plane. In practice, we should of course choose the
right perturbation direction according to the criterion proposed
in Section III-F.
542 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
Fig. 6. (Second example.) Bode diagrams (input-1-output-1) of the
(a) original nonpassive model and the (b) perturbed passive model.
B. Common Mode Filter Model
This example is a 8-port common mode filter [55]. Two
hundred twenty-five scattering matrices are measured at the
frequency band from 0 to 8.5 GHz. A DS model of order
198 is generated using the Loewner matrix-based interpola-
tion algorithm [25], [26], which is an efficient algorithm to
construct multiport models from frequency domain samples.
In spite of the passive structure to be modeled, the resulting
DS model is nonpassive for several reasons. First, the fre-
quency domain samples are insufficient and do not distribute
uniformly. Although the matrix-format tangential interpolation
method can improve the accuracy in the undersampled case
[26], the insufficient and ill-distributed samples still introduce
inaccuracy in the model generated. Second, there exist mea-
surement errors due to the limitation of instruments or envi-
ronmental interferences. Third, extra error can be introduced
by rounding errors. Thus a passivity enforcement algorithm is
required.
As the model is in DS form, conventional passivity enforce-
ment algorithms are not applicable. The passivity enforcement
algorithm for scattering DSs proposed in this paper is utilized.
By calculating the limit in (20), we know that the DS model
is impulse-free. Then a passivity violation check shows that
the singular value pattern of the transfer function has totally
13 cross-over points with σ = 1. The singular value patterns
of the original nonpassive DS and the perturbed passive DS
are shown in Fig. 5, from which we see that the passivity
violations are removed with little change to the singular
value pattern at other frequency bands. Fig. 6 shows the
Fig. 7. (Third example.) Eigenvalue plot of G(jω) of the (a) original
nonpassive model and (b) perturbed passive model. The wide black lines
denote the passivity violation regions.
input-1-output-1 Bode diagrams of the original model and
the perturbed model, from which we see that little error is
introduced by our proposed perturbation.
C. Symmetric Immittance Model Example
The model used in this example is a symmetric impedance
(Z-parameter) DS generated by Loewner matrix-based inter-
polation [25], [26]. The DS is of order-416 and has eight ports.
Impulse-check shows that the model contains improper part.
When s
1
=2× 10
18
, the condition number of s
1
E − A is
4.00 × 10
24
,
H(s
1
)
s
1
2
=4.13 × 10
−11
. When s
2
=6× 10
18
,
the condition number of s
1
E − A is 3.60 × 10
25
,
H(s
2
)
s
2
2
=
4.13 × 10
−11
. The improper part is not semidefinite as it
has a small negative eigenvalue. Improper part perturbation
following Section III-C is performed. The relative error is
˜
M
1
−M
1
2
M
1
2
=8.17 × 10
−4
.
As the DS is symmetric, proper part extraction is not
necessary. Positive-realness check shows that the DS has slight
passivity violations. Twelve cross-over points of eigenvalue
pattern and the x-axis are identified. The eigenvalue curves
of the original nonpassive DS and the perturbed passive
DS are shown in Fig. 7. The passivity-violation regions are
identified by wide black lines in Fig. 7. The real parts of
the purely imaginary generalized eigenvalues in this example,
being about 10
−6
, are much larger than that in the common
mode filter example (about 10
−10
). Hence, it is not easy to
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 543
Fig. 8. (Third example.) Bode diagrams (input-1-output-1) of the (a) original
nonpassive model and (b) perturbed passive model.
set a bound a priori to determine which eigenvalue should be
identified as “purely imaginary.” Therefore, the more reliable
criterion in Section III-F2 can be used.
Bode diagrams of the original model and the passive model
(input-1-output-1) are shown in Fig. 8, from which we con-
clude that the error introduced by perturbation is small. It
can be seen from the Bode diagram that the improper part
is dominant at the high frequency region.
Alternatively, we also employ the algorithm in [37] by
treating the DS as asymmetric. Proper part extraction is
thereby performed. We use the following metric to mea-
sure the overall error introduced by different perturba-
tions:
Err =
1
k
s=s
1
,...,s
k
˜
H(s) − H(s)
2
H(s)
2
(57)
where H (s) is the transfer function of the original model and
˜
H(s) is that of the perturbed model, s
1
,...,s
k
are frequencies
of the samples we use to generate the model. It turns out that
Err =7.16 × 10
−3
if we employ the algorithm for symmetric
immittance DS and Err =2.02×10
−2
if proper part extraction
is performed. On the other hand, the CPU time is 4.6 × 10
−3
sec which is larger than that if the algorithm for symmetric
immittance DSs is employed (3.8 × 10
−3
s). We conclude that
avoidance of proper part extraction is favorable for better
perturbation accuracy.
VI. Conclusion
This paper has generalized the results in [37] and is the
first work reported in the literature to enforce passivity for
DSs. Following a possible system decomposition, the improper
part perturbation was converted into a standard LMI “mincx”
problem and the proper part perturbation into a standard least-
squares problem, both of which can be solved efficiently under
controlled perturbation errors. Numerical examples have veri-
fied the efficiency and accuracy of the proposed algorithms.
appendix A
Proof of Lemma 1
It is straightforward to prove that e ≥ max
1≤i≤m
m
j=1
| ˜m
ij
− m
ij
|,
which indicates that e ≥
˜
M
1
− M
1
∞
.
appendix B
Proof of Lemma 2
It is obvious that if J , K are real, the eigenvalues are in
conjugate pairs. On the other hand, if λ is a generalized eigen-
valueof(J , K ), J x = λK x, x
T
J
T
= λx
T
K
T
, −x
T
J
−1
0
J J
0
=
λx
T
J
−1
0
KJ
0
. Assume y
∗
= x
T
J
−1
0
,wehavey
∗
J = −λy
∗
K,
which means −λ is also an eigenvalue of (J , K). So every λ
implies coexistence of the tuple (λ,
¯
λ, −λ, −
¯
λ).
appendix C
Proof of Lemma 3
x is the right eigenvector of (J , K) indicates J x = λKx.
Performing conjugate transpose on both sides, and noting that
λ is imaginary and J , K are real, we have x
∗
J
T
= −λx
∗
K
T
.
Because J is Hamiltonian and K is symplectic, we have
x
∗
(−J
−1
0
J J
0
)=−λx
∗
(J
−1
0
KJ
0
). Hence x
∗
J
−1
0
J = λx
∗
J
−1
0
K.
According to the definition of left eigenvector, x
∗
J
−1
0
is
equivalent to y
∗
, i.e., y = J
0
x.
appendix D
Proof of Lemma 4
Perform conjugate transpose on both sides of J x = λKx,
we have x
∗
J
T
= λx
∗
K
T
(note that λ is real). As J and K both
have K
0
− property, x
∗
K
0
J K
0
= λx
∗
K
0
KK
0
, i.e., (x
∗
K
0
)J =
λ(x
∗
K
0
)K. According to the definition of left eigenvector (9),
we have y
∗
= x
∗
K
0
, i.e., y = K
0
x.
References
[1] E. Kuh and R. Rohrer, Theory of Linear Active Networks. San Francisco,
CA: Holden-Day, 1967.
[2] R. Freund and F. Jarre, “An extension of the positive real lemma to
descriptor systems,” Optimiz. Methods Softw., vol. 19, no. 1, pp. 69–87,
2004.
[3] L. Zhang, J. Lam, and S. Xu, “On positive realness of descriptor
systems,” IEEE Trans. Circuits Syst. I, vol. 49, no. 3, pp. 401–407,
Mar. 2002.
[4] Y. Liu and N. Wong, “Fast sweeping methods for checking passivity
of descriptor systems,” in Proc. IEEE Asia Pacific Conf. Circuits Syst.,
Nov.–Dec. 2008, pp. 1794–1797.
544 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 31, NO. 4, APRIL 2012
[5] S. Boyd, V. Balakrishnan, and P. Kabamba, “A bisection method for
computing the H∞ norm of a transfer matrix and related problems,”
Math. Contr., Signals, Syst., vol. 2, no. 3, pp. 207–219, 1989.
[6] Z. Zhang, C. Lei, and N. Wong, “GHM: A generalized Hamiltonian
method for passivity test of impedance/admittance descriptor systems,”
in Proc. IEEE/ACM Int. Conf. Comput.-Aided Des., Nov. 2009, pp. 767–
773.
[7] S. Grivet-Talocia, “Passivity enforcement via perturbation of Hamilto-
nian matrices,” IEEE Trans. Circuits Syst. I, vol. 51, no. 9, pp. 1755–
1769, Sep. 2004.
[8] D. Saraswat, R. Achar, and M. Nakhla, “Global passivity enforcement
algorithm for macromodels of interconnect subnetworks characterized
by tabulated data,” IEEE Trans. Very Large Scale Integr. Syst., vol. 13,
no. 7, pp. 819–832, Jul. 2005.
[9] C. Coelho, J. Phillips, and L. Silveira, “A convex programming ap-
proach for generating guaranteed passive approximations to tabulated
frequency-data,” IEEE Trans. Comput.-Aided Des. Integr. Circuits Syst.,
vol. 23, no. 2, pp. 293–301, Feb. 2004.
[10] B. Gustavsen and A. Semlyen, “Enforcing passivity for admittance
matrices approximated by rational functions,” IEEE Trans. Power Syst.,
vol. 16, no. 1, pp. 97–104, Feb. 2001.
[11] B. Porkar, M. Vakilian, R. Iravani, and S. Shahrtash, “Passivity en-
forcement using an infeasible-interior-point primal-dual method,” IEEE
Trans. Power Syst., vol. 23, no. 3, pp. 966–974, Aug. 2008.
[12] D. Saraswat, R. Achar, and M. Nakhla, “Global passivity enforcement
algorithm for macromodels of interconnect subnetworks characterized
by tabulated data,” IEEE Trans. Very Large Scale Integr. Syst., vol. 13,
no. 7, pp. 819–832, Jul. 2005.
[13] B. Gustavsen, “Fast passivity enforcement for S-parameter models by
perturbation of residue matrix eigenvalues,” IEEE Trans. Adv. Packag.,
vol. 33, no. 1, pp. 257–265, Feb. 2010.
[14] H. De Silva, A. Gole, J. Nordstrom, and L. Wedepohl, “Robust passivity
enforcement scheme for time-domain simulation of multi-conductor
transmission lines and cables,” IEEE Trans. Power Delivery, vol. 25,
no. 2, pp. 930–938, Apr. 2010.
[15] B. Gustavsen, “Computer code for passivity enforcement of rational
macromodels by residue perturbation,” IEEE Trans. Adv. Packag.,vol.
30, no. 2, pp. 209–215, May 2007.
[16] Z. Ye, L. Silveira, and J. Phillips, “Fast and reliable passivity assessment
and enforcement with extended Hamiltonian pencil,” in Proc. IEEE/ACM
Int. Conf. Comput.-Aided Des., Nov. 2009, pp. 774–778.
[17] Z. Ye, L. Silveira, and J. Phillips, “Extended Hamiltonian Pencil for
passivity assessment and enforcement for S-parameter systems,” in Proc.
IEEE Des., Automat. Test Eur. Conf., Mar. 2010, pp. 1148–1152.
[18] Z. Zhang and N. Wong, “An extension of the generalized Hamiltonian
method to S-parameter descriptor systems,” in Proc. IEEE Asia South
Pacific Des. Automat. Conf., Jan. 2010, pp. 43–47.
[19] S. Grivet-Talocia, “On passivity characterization of symmetric rational
macromodels,” IEEE Trans. Microwave Theory Tech., vol. 58, no. 5, pp.
1238–1247, May 2010.
[20] C. Cheng, J. Lillis, S. Lin, and N. Chang, Interconnect Analysis and
Synthesis. New York: Wiley, 2000.
[21] M. Celik, L. Pileggi, and A. Odabasioglu, IC Interconnect Analysis.
Amsterdam, The Netherlands: Springer, 2002.
[22] Q. Zhu, Power Distribution Network Design for VLSI. New York: Wiley-
IEEE, 2004.
[23] B. Gustavsen and A. Semlyen, “Rational approximation of frequency
domain responses by vector fitting,” IEEE Trans. Power Delivery,vol.
14, no. 3, pp. 1052–1061, Jul. 1999.
[24] S. Grivet-Talocia, “The time-domain vector fitting algorithm for linear
macromodeling,” Int. J. Electron. Commun., vol. 58, no. 4, pp. 293–295,
2004.
[25] S. Lefteriu and A. C. Antoulas, “A new approach to modeling multiport
systems from frequency-domain data,”
IEEE Trans. Comput.-Aided Des.
Integr. Circuits Syst., vol. 29, no. 1, pp. 14–27, Jan. 2010.
[26] Y. Wang, C. Lei, G. Pang, and N. Wong, “MFTI: Matrix-format tangen-
tial interpolation for modeling multi-port systems,” in Proc. IEEE/ACM
Des. Automat. Conf., Jun. 2010, pp. 683–686.
[27] A. Odabasioglu, M. Celik, and L. Pileggi, “Passive and reducedorder
interconnect macromodeling algorithm,” IEEE Trans. Comput.-Aided
Des. Integr. Circuits Syst., vol. 17, no. 8, pp. 645–654, Aug. 1998.
[28] J. Phillips, L. Daniel, and L. Silveira, “Guaranteed passive balancing
transformations for model order reduction,” in Proc. IEEE/ACM Des.
Automat. Conf., Jun. 2002, pp. 52–57.
[29] A. Ruehli, “Equivalent circuit models for three-dimensional multicon-
ductor systems,” IEEE Trans. Microwave Theory Tech., vol. 22, no. 3,
pp. 216–221, Mar. 1974.
[30] H. Heeb and A. Ruehli, “Three-dimensional interconnect analysis using
partial element equivalent circuits,” IEEE Trans. Circuits Syst. I, vol.
39, no. 11, pp. 974–982, Nov. 1992.
[31] D. Saraswat, R. Achar, and M. Nakhla, “A fast algorithm and prac-
tical considerations for passive macromodeling of measured/simulated
data,” IEEE Trans. Adv. Packag., vol. 27, no. 1, pp. 57–70, Feb.
2004.
[32] C. Ho, A. Ruehli, and P. Brennan, “The modified nodal approach to
network analysis,” IEEE Trans. Circuits Syst. I, vol. 22, no. 6, pp. 504–
509, Jun. 1975.
[33] D. Sorensen, “Passivity preserving model reduction via interpolation of
spectral zeros,” Elsevier Syst. Contr. Lett., vol. 54, no. 4, pp. 347–360,
2005.
[34] R. Freund and P. Feldmann, “Reduced-order modeling of large linear
passive multi-terminal circuits using matrix-Pad
´
e approximation,” in
Proc. IEEE Des., Automat. Test Eur. Conf., Feb. 1998, pp. 530–537.
[35] L. Pernebo and L. Silverman, “Model reduction via balanced state space
representations,” IEEE Trans. Automat. Contr., vol. 27, no. 2, pp. 382–
387, Apr. 1982.
[36] J. Li, F. Wang, and J. White, “An efficient Lyapunov equation-based
approach for generating reduced-order models of interconnect,” in Proc.
IEEE/ACM Des. Automat. Conf., Jun. 1999, pp. 1–6.
[37] Y. Wang, Z. Zhang, C. Koh, G. Pang, and N. Wong, “PEDS: Passivity
enforcement for descriptor systems via Hamiltonian-Symplectic matrix
pencil perturbation,” in Proc. IEEE/ACM Int. Conf. Comput. Aided Des.,
Nov. 2010, pp. 800–807.
[38] L. Dai, Singular Control Systems. Berlin, Germany: Springer-Verlag,
1989.
[39] T. Stykel, “Gramian-based model reduction for descriptor systems,”
Math. Contr., Signals, Syst., vol. 16, no. 4, pp. 297–319, 2004.
[40] N. Wong, “Efficient positive-real balanced truncation of symmetric
systems via cross-Riccati equations,” IEEE Trans. Comput.-Aided Des.
Integr. Circuits Syst., vol. 27, no. 3, pp. 470–480, Mar. 2008.
[41] R. Aldhaheri, “Model order reduction via real Schur-form decomposi-
tion,” Int. J. Contr., vol. 53, no. 3, pp. 709–716, 1991.
[42] A. Antoulas, D. Sorensen, and S. Gugercin, “A survey of model
reduction methods for large-scale systems,” Structured Matrices Math.,
Comput. Sci., Eng., vol. 280, no. 1, pp. 193–219, Oct. 2001.
[43] K. Fernando and H. Nicholson, “On the structure of balanced and
other principal representations of SISO systems,” IEEE Trans. Automat.
Contr., vol. 28, no. 2, pp. 228–231, Feb. 1983.
[44] K. Fernando and H. Nicholson, “On the cross-Gramian for symmetric
MIMO systems,” IEEE Trans. Circuits Syst., vol. 32, no. 5, pp. 487–489,
May 1985.
[45] N. Wong, “Fast positive-real balanced truncation of symmetric systems
using cross Riccati equations,” in Proc. IEEE Des., Automat. Test Eur.
Conf., Apr. 2007, pp. 1–6.
[46] A. Semlyen and B. Gustavsen, “A half-size singularity test matrix for
fast and reliable passivity assessment of rational models,” IEEE Trans.
Power Delivery, vol. 24, no. 1, pp. 345–351, Jan. 2009.
[47] Z. Zhang and N. Wong, “Passivity test of immittance descriptor systems
based on generalized Hamiltonian methods,” IEEE Trans. Circuits Syst.
II, vol. 57, no. 1, pp. 61–65, Jan. 2010.
[48] Z. Zhang and N. Wong, “Passivity check of S-parameter descriptor
systems via S-parameter generalized Hamiltonian methods,” IEEE Trans.
Adv. Packag., vol. 33, no. 3, pp. 1–9, Mar. 2010.
[49] P. Gahinet, A. Nemirovskii, A. Laub, and M. Chilali, “The LMI control
toolbox,” in Proc. IEEE Conf. Decision Contr., vol. 2. Dec. 1994, pp.
2038–2041.
[50] R. M
¨
arz, “Canonical projectors for linear differential algebraic equa-
tions,” Comput. Math. Applicat., vol. 31, nos. 4–5, pp. 121–135,
1996.
[51] N. Wong, “An efficient passivity test for descriptor systems via canonical
projector techniques,” in Proc. IEEE/ACM Des. Automat. Conf., Jul.
2009, pp. 957–962.
[52] Z. Zhang and N. Wong, “An efficient projector-based passivity test for
descriptor systems,” IEEE Trans. Comput.-Aided Des. Integr. Circuits
Syst., vol. 29, no. 8, pp. 1203–1214, Aug. 2010.
[53] S. Boyd, L. El Ghaoui, E. Feron, and V. Balakrishnan, Linear Matrix
Inequalities in System and Control Theory, vol. 15. Philadelphia, PA:
SIAM, 1994.
[54] Y. Chahlaoui and P. Van Dooren, “A collection of benchmark examples
for model reduction of linear time invariant dynamical systems,” School
Math., Univ. Manchester, Manchester, U.K., SLICOT Working Note,
2002.
[55] TDK S Parameter Library [Online]. Available: http://www.tdk.com/
tvclsparam.php
WANG et al.: PASSIVITY ENFORCEMENT FOR DESCRIPTOR SYSTEMS 545
Yuanzhe Wang received the B.E. degree from
Tianjin University, Tianjin, China, in 2009, and the
M.Phil. degree from the University of Hong Kong,
Pokfulam, Hong Kong, in 2011, both in electrical
engineering. He is currently pursuing the Ph.D.
degree in electrical and computer engineering from
Carnegie Mellon University, Pittsburgh, PA.
His current research interests include computer-
aided design of very large-scale integrated cir-
cuits, with emphasis on compressed sensing,
power/ground network analysis, model order reduc-
tion, and analog/radio frequency circuit simulation.
Zheng Zhang received the B.E. degree from the
Huazhong University of Science and Technology,
Wuhan, China, in 2008, and the M.Phil. degree
from the University of Hong Kong, Pokfulam, Hong
Kong, in 2010. Since 2010, he has been a Ph.D.
Student with the Department of Electrical Engineer-
ing and Computer Science, Massachusetts Institute
of Technology (MIT), Cambridge.
He was a Visiting Scholar with the University of
California at San Diego, San Diego, in 2009. In
2011, he was with Coventor, Inc., Cambridge, MA,
as a Research Intern, where he developed some simulation algorithms for
the microelectromechanical/integrated circuit (MEMS/IC) codesign software
MEMS+. His current research interests include numerical simulation and
optimization methods for MEMS systems and analog/radio frequency IC
design, as well as linear and nonlinear parameterized model order reduction
techniques for circuit modeling and simulation.
Mr. Zhang received the Mathworks Fellowship from MIT in 2010, and the Li
Ka Shing Prize (Best M.Phil./Ph.D. Dissertation Award) from the University
of Hong Kong in 2011.
Cheng-Kok Koh (S’92–M’98–SM’06) received the
B.S. (with first-class honors) and M.S. degrees in
computer science from the National University of
Singapore, Kent Ridge, Singapore, in 1992 and
1996, respectively, and the Ph.D. degree in computer
science from the University of California at Los
Angeles (UCLA), Los Angeles, in 1998.
He is currently an Associate Professor of electrical
and computer engineering with the School of Elec-
trical and Computer Engineering, Purdue University,
West Lafayette, IN. His current research interests
include physical design of very large-scale integrated circuits and modeling
and analysis of large-scale systems.
Dr. Koh was the recipient of the Lim Soo Peng Book Prize for Best
Computer Science Student from the National University of Singapore in 1990,
the Tan Kah Kee Foundation Postgraduate Scholarship in 1993 and 1994, the
General Telephone and Electronics Fellowship and the Chorafas Foundation
Prize from the UCLA, in 1995 and 1996, respectively, the Association for
Computing Machinery (ACM) Special Interest Group on Design Automation
(SIGDA) Meritorious Service Award in 1998, the Chicago Alumni Award
from Purdue University in 1999, the National Science Foundation CAREER
Award in 2000, the ACM/SIGDA Distinguished Service Award in 2002, and
the Semiconductor Research Corporation Inventor Recognition Award in 2005.
Guoyong Shi (S’98–M’02–SM’11) received the
Ph.D. degree in electrical engineering from Wash-
ington State University, Pullman, in 2002.
He is currently a Professor with the School of
Microelectronics, Shanghai Jiao Tong University,
Shanghai, China. Before joining the university in
2005, we was a Post-Doctoral Research Scientist
with the Department of Electrical Engineering, Uni-
versity of Washington, Seattle. He is the author
or co-author of about 60 technical articles in the
areas of systems, control, and integrated circuits.
His current research interests include design automation tools for analog and
mixed-signal integrated circuits and systems.
Dr. Shi was a co-recipient of the Donald O. Pederson Best Paper Award
from the IEEE Circuits and Systems Society in 2007.
Grantham K. H. Pang (S’84–M’86–SM’01) re-
ceived the Ph.D. degree from the University of
Cambridge, Cambridge, U.K., in 1986.
He was with the Department of Electrical and
Computer Engineering, University of Waterloo, Wa-
terloo, ON, Canada, from 1986 to 1996, and joined
the Department of Electrical and Electronic Engi-
neering, University of Hong Kong, Pokfulam, Hong
Kong, in 1996. His current research interests include
visual surveillance, machine vision for surface defect
detection, optical communications, control system
design, intelligent control, and intelligent transportation systems.
Ngai Wong (S’98–M’02) received the B.E. (with
first class honors) and Ph.D. degrees in electrical and
electronic engineering from the University of Hong
Kong, Pokfulam, Hong Kong, in 1999 and 2003,
respectively.
He was an Intern with Motorola, Inc., Kowloon,
Hong Kong, from 1997 to 1998, specializing in prod-
uct testing. He was a Visiting Scholar with Purdue
University, West Lafayette, IN, in 2003. Currently,
he is an Associate Professor with the University of
Hong Kong. His current research interests include
very large-scale integrated (VLSI) linear/nonlinear modeling and simulation,
model order reduction, digital filter design, sigma-delta modulators, and
numerical algorithms in communication and VLSI applications.