From 40375934da82d440f0d819e5b136aed667e123dd Mon Sep 17 00:00:00 2001 From: Holger Vogt Date: Mon, 19 May 2025 15:38:14 +0200 Subject: [PATCH] set current to 0 for time < tdelay --- src/xspice/icm/xtradev/seegenerator/cfunc.mod | 10 +++++----- src/xspice/icm/xtradev/seegenerator/ifspec.ifs | 8 ++++---- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/xspice/icm/xtradev/seegenerator/cfunc.mod b/src/xspice/icm/xtradev/seegenerator/cfunc.mod index 082ff9f61..a16cccab2 100644 --- a/src/xspice/icm/xtradev/seegenerator/cfunc.mod +++ b/src/xspice/icm/xtradev/seegenerator/cfunc.mod @@ -103,7 +103,7 @@ NON-STANDARD FEATURES ==============================================================================*/ -/*=== CM_ILIMIT ROUTINE ===*/ +/*=== CM_SEEGEN ROUTINE ===*/ void cm_seegen(ARGS) /* structure holding parms, inputs, outputs, etc. */ @@ -115,9 +115,6 @@ void cm_seegen(ARGS) /* structure holding parms, double out; double tcurr = TIME; - Mif_Complex_t ac_gain; - - /* Retrieve frequently used parameters... */ @@ -126,7 +123,10 @@ void cm_seegen(ARGS) /* structure holding parms, tdelay = PARAM(tdelay); inull = PARAM(inull); - out = inull * (exp(-(tcurr-tdelay)/talpha) - exp(-(tcurr-tdelay)/tbeta)); + if (tcurr < tdelay) + out = 0; + else + out = inull * (exp(-(tcurr-tdelay)/talpha) - exp(-(tcurr-tdelay)/tbeta)); OUTPUT(out) = out; } diff --git a/src/xspice/icm/xtradev/seegenerator/ifspec.ifs b/src/xspice/icm/xtradev/seegenerator/ifspec.ifs index 4f804ea3d..a8f46b2b5 100644 --- a/src/xspice/icm/xtradev/seegenerator/ifspec.ifs +++ b/src/xspice/icm/xtradev/seegenerator/ifspec.ifs @@ -30,13 +30,13 @@ Description: "single event effect generator" PORT_TABLE: -Port_Name: out +Port_Name: out Description: "output" -Direction: out -Default_Type: i +Direction: out +Default_Type: i Allowed_Types: [i,id] Vector: no -Vector_Bounds: - +Vector_Bounds: - Null_Allowed: no