Re: [ng-spice-devel] Pole-zero analysis issues.


To ng-spice-devel@ieee.ing.uniroma1.it
From "Arno W. Peters" <a.w.peters@ieee.org>
Date Sat, 17 Jun 2000 17:21:38 +0200
Delivered-To mailing list ng-spice-devel@ieee.ing.uniroma1.it
In-Reply-To <Pine.LNX.3.96.1000617103346.15142B-100000@ieee.ing.uniroma1.it >; from pnenzi@ieee.ing.uniroma1.it on Sat, Jun 17, 2000 at 10:40:16AM +0200
Mailing-List contact ng-spice-devel-help@ieee.ing.uniroma1.it; run by ezmlm
References <20000616212419.A818@cgmd80028.chello.nl > <Pine.LNX.3.96.1000617103346.15142B-100000@ieee.ing.uniroma1.it >
Reply-To ng-spice-devel@ieee.ing.uniroma1.it
User-Agent Mutt/1.2i

On Sat, Jun 17, 2000 at 10:40:16AM +0200, Paolo Nenzi wrote:
> On Fri, 16 Jun 2000, Arno W. Peters wrote:
> 
> > On Fri, Jun 16, 2000 at 06:30:44PM +0200, Paolo Nenzi wrote:
> 
> > So far I haven't compiled any of the older versions to see what
> > version introduced the error.  If somebody would step up to check
> > this?
> 
> I have compiled the cktpx* code with PZDEBUG defined and run the
> simulation with the bridge filter:
> 
> Circuit: * Bridge T Filter
> 
> ngspice 1 -> run
> suggestion(0/0/4 | 0): init
>               Guess
> * (  1/  1) 0 0 :: 0.524287999999998977074255890329 0 -19
> suggestion(1/0/4 | 0): init
>               Guess
> * (  2/  2) 1 0 :: 0.525861388287999220736423922062 0 -19
> suggestion(1/0/4 | 0): init
> given 1 0 / 0 0 / 1 0
> suggestion(1/0/4 | 3): sym 1
> * (  3/  3) nan 0 :: nan nan -2147483648
> given 0 0 / 1 0 / nan 0
> suggestion(1/0/4 | 3): sym 1
> * (  4/  4) nan 0 :: nan nan -2147483648
> given 1 0 / nan 0 / nan 0
> suggestion(1/0/4 | 3): sym 1
> * (  5/  5) nan 0 :: nan nan -2147483648
> given nan 0 / nan 0 / nan 0
> suggestion(1/0/4 | 3): split right
> * (  6/  6) nan 0 :: nan nan -2147483648
> Aborted

I wouldn't know how to interpret the output.  Perhaps prof. Newton can
tell us more about it.

> There are a lot of NANs, do not seems normal. The other circuit (the
> filt_rc.cir) ends in a segmentation violation (the output is attached
> below)
>
> [...]
> ALTER from: -99999999.9999999403953552246094 0
> 
> internal error -- segmentation violation

The segment violation is due to the following line of code
(in cktpzstr.c, line 1120):

    DEBUG(1) fprintf(stderr, "nt->next %g\n", nearto->prev->s.real);

Check it in the debugger, you'll find

 nearto->prev == NULL

and thus nearto->prev->s.real naturally leads to a segmentation
fault.

I added some checks to circumvent this.  They are checked into CVS.
Please try them out.

Regards,
-- 
Arno

PGP signature


Partial thread listing: