From 7387d59b1a59139f4e7ba705d963b3d65bf52e82 Mon Sep 17 00:00:00 2001 From: h_vogt Date: Mon, 20 May 2013 19:13:27 +0200 Subject: [PATCH] dctran.c, bug fix `#235 When Using .TRAN analysis with UIC, ...' add a breakpoint for UIC #235 When Using .TRAN analysis with UIC, unconnected pulse bug http://sourceforge.net/p/ngspice/bugs/235/ --- src/spicelib/analysis/dctran.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/spicelib/analysis/dctran.c b/src/spicelib/analysis/dctran.c index 9716e9fa3..e300a3278 100644 --- a/src/spicelib/analysis/dctran.c +++ b/src/spicelib/analysis/dctran.c @@ -507,7 +507,7 @@ resume: if (ckt->CKTtime == 0.) SetAnalyse( "tran init", 0); else - SetAnalyse( "tran", (int)((ckt->CKTtime * 1000.) / ckt->CKTfinalTime) + 0.5); + SetAnalyse( "tran", (int)((ckt->CKTtime * 1000.) / ckt->CKTfinalTime + 0.5)); #endif ckt->CKTdelta = MIN(ckt->CKTdelta,ckt->CKTmaxStep); @@ -545,6 +545,10 @@ resume: ckt->CKTbreaks[1] - ckt->CKTbreaks[0])); if(firsttime) { + /* set a breakpoint to reduce ringing of current in devices */ + if (ckt->CKTmode & MODEUIC) + CKTsetBreak(ckt, ckt->CKTstep); + ckt->CKTdelta /= 10; #ifdef STEPDEBUG (void)printf("delta cut for initial timepoint\n");