[ibis-interconn] Re: Sparse Touchstone file causality and passivity

Walter,

 

Causality is not lost (if presents) because every component of the
response vector in time domain can be represented as a sum of elementary
responses, each one a convolution of a particular matrix component
(converted into time domain) with a component of an input vector. "Zero"
component is legally causal. We care that under no conditions the
response can appear prior to excitation (e.g. as Dirac pulse). If this
did not happen in the original system, all matrix components were
causal, then this cannot happen if some of them are replaced with zeros.


 

In a simple way: unlike passivity, causality is a feature that we can
investigate individually for every matrix component.

 

I agree that passivity check is a moderate price for the potential gain
from removing a large portion of nonzero but small matrix elements. The
only thing needed is finding eigenvalues of a real matrix. Passivity
enforcement could be more difficult, if it is not just a simple scaling.

 

The good news is that passivity - as eigenvalue based measure - is
continuous with respect to the matrix elements. Hence, if you select the
threshold (eps << 1) and remove all components that are smaller and see
non-passivity, you can repeat with e.g. eps/2 and hope that now the
matrix becomes passive. With a few trials, you can easily guess what the
threshold should be.

 

Vladimir

-----Original Message-----
From: ibis-interconn-bounce@xxxxxxxxxxxxx
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Monday, May 18, 2009 8:02 AM
To: ibis-interconn@xxxxxxxxxxxxx
Cc: Mike Steinberger
Subject: [ibis-interconn] Re: Sparse Touchstone file causality and
passivity

 

Vladimir,

 

Thank you for your confirmation that causality is not lost by zeroing
out S-Parameter elements. I hope we can put that one to rest. 

 

I can see that you're mathematically correct that one can construct a
passive S-Parameter matrix that will violate passivity when a single
term is zeroed out. Therefore, if we form a sparse matrix representation
and truncate terms in the process, we must test for passivity and either
state whether or not the sparse matrix is passive, or else modify it to
become passive. As you aptly demonstrated, a simple utility can be
written that would make this passivity test on both the original and
truncated data.

 

I was using an intuitive definition of passivity that only looked at the
gain resulting from a stimulus at a single port. Your definition is
rigorous and correct and takes into account the possibility that several
inputs can be driven synchronously. 

 

As a practical matter, interconnect S-Parameter matrices are symmetric,
and one would be zeroing out terms that are already close to zero, so
that I expect the resulting sparse S-Parameter would rarely violate this
rigorous passivity test. 

 

Walter

 

 

Walter Katz

303.449-2308

Mobile 720.333-1107

wkatz@xxxxxxxxxx

www.sisoft.com

 

-----Original Message-----
From: ibis-interconn-bounce@xxxxxxxxxxxxx
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx]On Behalf Of
Dmitriev-Zdorov, Vladimir
Sent: Thursday, May 14, 2009 9:54 PM
To: ibis-interconn@xxxxxxxxxxxxx
Subject: [ibis-interconn] Re: Sparse Touchstone file causality and
passivity

 

Walter,

 

Of course, causality will retain if we zero out several matrix
components.

However, passivity in some cases can be violated.

 

S-parameter matrix is passive if:

 

U - SS* has all its eigenvalues non-negative. Here, U is identity
matrix, S* is Hermittian conjugate.

 

 

For example, here is complex matrix S1:

 

S1 =

 

  Columns 1 through 2

 

  0.076149481252935 + 0.369055919996574i  0.136984678332037 +
0.098429251949997i

  0.025094665390209 + 0.331025717665588i  0.074807152164896 +
0.395615515340958i

  0.461095430378823 + 0.005668804426322i  0.445312306966967 +
0.052068818348814i

 

  Column 3

 

  0.138801001763037 + 0.220931650229586i

  0.281958578630405 + 0.024815286850433i

  0.110178998286798 + 0.533562104799569i

 

And matrix S2 that differs from S1 only by having its (2,3) component
zero.

 

S2 =

 

  Columns 1 through 2

 

  0.076149481252935 + 0.369055919996574i  0.136984678332037 +
0.098429251949997i

  0.025094665390209 + 0.331025717665588i  0.074807152164896 +
0.395615515340958i

  0.461095430378823 + 0.005668804426322i  0.445312306966967 +
0.052068818348814i

 

  Column 3

 

  0.138801001763037 + 0.220931650229586i

                  0                     

  0.110178998286798 + 0.533562104799569i

 

Here is the output from MatLab:

 

>> eig(eye(3) - S1*S1')

 

ans =

 

   0.028973344294832

   0.708261554971416

   0.961319225566090

 

>> eig(eye(3) - S2*S2')

 

ans =

 

  -0.028594277966338

   0.839604752919951

   0.967660088403473

 

As we see, the first one is passive, the second is not.

 

I'm also seeing some cases of symmetrical matrices that become
non-passive is their diagonals are zeroed.

 

 

Vladimir

 

>>

 

-----Original Message-----
From: ibis-interconn-bounce@xxxxxxxxxxxxx
[mailto:ibis-interconn-bounce@xxxxxxxxxxxxx] On Behalf Of Walter Katz
Sent: Thursday, May 14, 2009 5:36 PM
To: Ibis-Interconn
Subject: [ibis-interconn] Sparse Touchstone file causality and passivity

 

All,

 

In this past IBIS-Interconnect meeting I suggested that we can define a
wrapper for Touchstone files that essentially zeros out the full
transfer function for elements of the S-Parameter matrix that are close
to zero. Several people in the meeting asserted that this could violate
passivity and causality. I question this assertion. To be specific, if a
Touchstone file is already passive and causal, and then if one zeroed
out all of the real and imaginary values for all of the frequencies of
one Sij, the assertion is that the Touchstone file may no longer be
passive and/or causal. Could one of you explain how this could happen?

 

Walter

 

 

Walter Katz

303.449-2308

Mobile 720.333-1107

wkatz@xxxxxxxxxx

www.sisoft.com

 

Other related posts: