gnucap-devel
[Top][All Lists]
Advanced

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

Re: [Gnucap-devel] method and error (was: transient -- "trace" default)


From: Felix Salfelder
Subject: Re: [Gnucap-devel] method and error (was: transient -- "trace" default)
Date: Sat, 11 Jan 2014 23:00:17 +0100
User-agent: Mutt/1.5.20 (2009-06-14)

On Sat, Jan 11, 2014 at 04:20:38PM -0500, al davis wrote:
> On the surface we only care about h small.  But really that is 
> not so.  There are times when we want to allow a large time step 
> and HIDE the error with the intent of ignoring it.

this hasnt occurred to me yet. i would have tried to replace the netlist
with a smaller/faster one.

> > now, what i have tried to work out is an adaptive method
> > selection. in the pulse & lowpass example, the pulse source
> > introduces discontinuities in the node voltages that break
> > trap in an obvious way. it totally makes sense to switch
> > back to euler in c1 (only) for those steps succeeding the
> > discontinuities -- *without* turning off step control...
> 
> Interesting ..  
> 
> I see they all have a high number of rejections.  Please try 
> again after applying the pulse patch.  I think your results are 
> contaminated by pulse time step issues.

the pulse patch makes things worse for me. the number of iterations
increases from ~3000 to ~5000. i think that is because the patch moves
the events from the discontinuities, where my mechanism requires them.

> I tried some things like that long ago, and eventually gave up 
> and took a different path.
> 
> The different path was to add another step control based on 
> curve fitting, that is used when truncation error is 
> meaningless.

in combination, it seems to work best. consider d_switch_nro.3.ckt.

vanilla gnucap yields
iterations: op=0, dc=0, tran=18028, fourier=0, total=26977
transient timesteps: accepted=147, rejected=8802, total=8949

with my euler fallback i get
iterations: op=0, dc=0, tran=425, fourier=0, total=573
transient timesteps: accepted=148, rejected=0, total=148

regards
felix



reply via email to

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