help-gnucap
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Help-gnucap] Modal analysis using gnucap


From: al davis
Subject: Re: [Help-gnucap] Modal analysis using gnucap
Date: Thu, 23 Sep 2010 02:23:14 -0400

On Wednesday 22 September 2010, Jasper wrote:
> Thanks for both of your suggestions for trying NGspice. I did
> but so far it has not been a success. Under OSX the PZ
> analysis segfaults. Under my Ubuntu Virtualbox it works
> somewhat. I can obtain the correct pole-zero values for up
> to 3 RL element in series with Cs to ground in between. For
> more the output values become garbage. But that problem is
> probably for the NGspice mailing list.

maybe ..  

That's a 6th order network.

Spice PZ analysis uses a method known as "unit circle 
interpolation".

To understand the method, consider this ...
(very very rough description, designed to give a first clue)

Start with an AC sweep, giving you a plot, then find a "Pade 
approximant" to the plot.  Then the roots of the numerator are 
zeros, the roots of the denominator are poles.

A "Pade approximant" (With an accent on the e in Pade) ..  is a 
rational function approximant.  The idea is to find an 
approximating function consisting of a polynomial numerator over 
a polynomial denominator.

Now ask how to find the best points on the curve to use as 
input.

In doing an AC sweep, if you think of it as on an S plane, the 
AC sweep traverses along the imaginary axis.  You can also look 
at other points, but that isn't really what we think of as "AC" 
anymore.  

For "unit circle interpolation", choose to traverse around a 
unit circle instead of the traditional AC sweep.

This means instead of considering a pure imaginary (j omega), it 
uses a complex number for frequency, in an AC like algorithm.

Spice models really have the "AC" part twice .. once as "acload" 
and once as "pzload".  That really isn't necessary, because 
"acload" is a special case of "pzload" where the real part of 
frequency is zero.  But pz was added later, so both are there.

The AC model code in gnucap has always accomodated complex 
frequency (as opposed to pure imaginary) so is really equivalent 
to the spice pzload.

So, to add PZ to gnucap, make a modified AC to do a complex 
"unit circle" sweep, then add the curve fitter. (Pade 
approximant)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]