help-gnucap
[Top][All Lists]
Advanced

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

Re: [Help-gnucap] Strange Gnucap Errors


From: al davis
Subject: Re: [Help-gnucap] Strange Gnucap Errors
Date: Tue, 21 Aug 2007 03:21:03 -0400
User-agent: KMail/1.9.7

On Wednesday 01 August 2007, Crispy wrote:
> I'm trying to simulate a circuit which right now consists of
> only a high voltage rectifier, but gnucap is giving me
> strange errors and the output stops right after the first
> half-cycle of the AC source.  Attached is primary.ckt (the
> circuit file), primary.out (the output data file), and
> gnucap.out (the stdout/stderr data from gnucap).  Any help is
> greatly appreciated.

This one was held for moderation because of attachments.

Like the other one, add a parallel conductance to the diodes.  
Sometimes making it too ideal causes trouble.

You have a string of diodes in series.  This doesn't work in 
practice.  You need to put resistors in parallel with the 
diodes to assure equal sharing of the voltage.  Without the 
resistors, the reverse voltage would probably be shared 
unequally, leading to breakdown and failure.

The warning:
=======
initial step rejected:Cj.D1.X1.Xrect
new=3.25363e-07  old=1e-06  required=5e-07
=======
just says that the initial step was rejected, and it had to try 
again.  You can suppress these warnings with ".option nowarn".

I don't recommend suppressing warnings.  They are a hint that 
something is happening that you may not otherwise be aware of.

In this case, you asked for time stepping of .0001 seconds 
(1e-4) but the actual values in the circuit require an initial 
step of 3.2e-7.  

It automatically makes a tiny first step, some fraction of the 
step you ask for, in this case "old=1e-06", ..  100x smaller.  
After actually doing it, and checking it for accuracy, it was 
determined to be not good enough.  If it was close 
(required=5e-07) it would let it slip by.  That is still not 
good enough, so it throws away the calculation, backs up, and 
starts over with smaller steps, this time "new=3.25363e-07".

This is all for the "initial step", the one that comes 
immediately after zero.


You may think that this is a slow circuit, so why does it need 
such a small time step?  The answer is so it can correctly 
simulate the tiny strays.  If you don't care about the effect 
of stray capacitance, you can say ".option method=euler".  
Otherwise, it needs a tiny time step to avoid a problem known 
as "trapezoidal ringing", where you get a junk response at half 
of the sampling frequency.





reply via email to

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