From 6c64d463c8ee22b4ae8a71ac47e890c1f41d3e00 Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Fri, 26 May 2023 13:31:08 +0200 Subject: [PATCH] Reduce excessive use of TREALLOC --- src/spicelib/devices/ltra/ltraacct.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/spicelib/devices/ltra/ltraacct.c b/src/spicelib/devices/ltra/ltraacct.c index f8dcd0801..50115cdcd 100644 --- a/src/spicelib/devices/ltra/ltraacct.c +++ b/src/spicelib/devices/ltra/ltraacct.c @@ -48,7 +48,7 @@ LTRAaccept(CKTcircuit* ckt, GENmodel* inModel) here = LTRAnextInstance(here)) { if (ckt->CKTmode & MODEINITTRAN) { - here->LTRAinstListSize = 10; + here->LTRAinstListSize = (int)max(10, ckt->CKTtimeListSize); LTRAmemMANAGE(here->LTRAv1, here->LTRAinstListSize) LTRAmemMANAGE(here->LTRAi1, here->LTRAinstListSize) @@ -64,6 +64,7 @@ LTRAaccept(CKTcircuit* ckt, GENmodel* inModel) */ if (ckt->CKTtimeIndex >= here->LTRAinstListSize) { /* need more space */ here->LTRAinstListSize += ckt->CKTsizeIncr; + ckt->CKTsizeIncr = (int)ceil(1.4 * ckt->CKTsizeIncr); here->LTRAv1 = TREALLOC(double, here->LTRAv1, here->LTRAinstListSize); here->LTRAi1 = TREALLOC(double, here->LTRAi1, here->LTRAinstListSize);