From b1b9c08102433388e0596133b07f0acb11222243 Mon Sep 17 00:00:00 2001 From: dwarning Date: Wed, 25 Mar 2026 21:31:48 +0100 Subject: [PATCH] diode: correct charge reporting for soft recovery option --- src/spicelib/devices/dio/dioask.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/spicelib/devices/dio/dioask.c b/src/spicelib/devices/dio/dioask.c index e40d5c4d0..52e0899bf 100644 --- a/src/spicelib/devices/dio/dioask.c +++ b/src/spicelib/devices/dio/dioask.c @@ -85,6 +85,8 @@ DIOask (CKTcircuit *ckt, GENinstance *inst, int which, IFvalue *value, return(OK); case DIO_CHARGE: value->rValue = *(ckt->CKTstate0+here->DIOcapCharge); + if ((here->DIOqpNode > 0) && (here->DIOtTransitTime!=0)) + value->rValue += here->DIOqpGain * *(ckt->CKTstate0 + here->DIOsrcapCharge); return(OK); case DIO_CAPCUR: value->rValue = *(ckt->CKTstate0+here->DIOcapCurrent);