From eb4c0ac4c55bb9bca2b63a5f97b3d23108a85937 Mon Sep 17 00:00:00 2001 From: dwarning Date: Tue, 20 Oct 2020 17:59:39 +0200 Subject: [PATCH] VBIC separate and correct cth entry and rm unused variables --- src/spicelib/devices/vbic/vbicload.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/spicelib/devices/vbic/vbicload.c b/src/spicelib/devices/vbic/vbicload.c index cb9012023..c59193d47 100644 --- a/src/spicelib/devices/vbic/vbicload.c +++ b/src/spicelib/devices/vbic/vbicload.c @@ -96,7 +96,7 @@ VBICload(GENmodel *inModel, CKTcircuit *ckt) int ichk1, ichk2, ichk3, ichk4, ichk5, ichk6; int error; double gqbeo, cqbeo, gqbco, cqbco, gbcx, cbcx; - double Icth, Icth_Vrth, delvrth; + double Icth, Icth_Vrth; /* loop through all the models */ for( ; model != NULL; model = VBICnextModel(model)) { @@ -493,8 +493,6 @@ VBICload(GENmodel *inModel, CKTcircuit *ckt) delvrbi = Vrbi - *(ckt->CKTstate0 + here->VBICvrbi); delvrbp = Vrbp - *(ckt->CKTstate0 + here->VBICvrbp); delvbcp = Vbcp - *(ckt->CKTstate0 + here->VBICvbcp); - if (here->VBIC_selfheat) - delvrth = Vrth - *(ckt->CKTstate0 + here->VBICvrth); Vbe = model->VBICtype*( *(ckt->CKTrhsOld+here->VBICbaseNode)- @@ -1286,11 +1284,13 @@ c Stamp element: Rth /* c Stamp element: Cth */ + rhs_current = Icth - Icth_Vrth*Vrth; + *(ckt->CKTrhs + here->VBICtempNode) += -rhs_current; *(here->VBICtempTempPtr) += Icth_Vrth; /* -c Stamp element: Ith (all values are delivered with (-) sign) +c Stamp element: Ith */ - rhs_current = -Ith - Ith_Vrth*Vrth + Icth - Icth_Vrth*Vrth + rhs_current = -Ith - Ith_Vrth*Vrth - Ith_Vbei*Vbei - Ith_Vbci*Vbci - Ith_Vcei*Vcei - Ith_Vbex*Vbex - Ith_Vbep*Vbep - Ith_Vbcp*Vbcp - Ith_Vcep*Vcep - Ith_Vrci*Vrci - Ith_Vbcx*Vbcx @@ -1408,7 +1408,7 @@ double xvar1_Vbep,xvar3_Vbep,qdbep,qdbep_qlo,qdbep_Vrth,qdbep_Vbep,qdbep_qhi; double vn_Vbep,vnl_Vbep,vl_Vbep,sel_Vbep,cl_Vbep,ql_Vbep,qdbep_ql; double qdbep_qlo0,dv_Vbep,mv_Vbep,qdbep_vl,qdbep_vl0,qdbep_q0,dv0_PSatT; double dvh_Vbcp,qlo_PSatT,qlo_Vbcp,qhi_Vbcp,qhi_PSatT,xvar1_Vbcp,xvar3_Vbcp; -double qdbcp,qdbcp_qlo,qdbcp_Vrth,qdbcp_Vbcp,qdbcp_Vbep,qdbcp_qhi,q0_PSatT; +double qdbcp,qdbcp_qlo,qdbcp_Vrth,qdbcp_Vbcp,qdbcp_qhi,q0_PSatT; double dv_Vbcp,mv_Vbcp,vl_Vbcp,qdbcp_vl,qdbcp_vl0,qdbcp_q0,argi; double argi_Vbei,argi_NFatT,argi_Vrth,argi_Vtv,expi,expi_argi,expi_Vbei; double expi_Vrth,Ifi,Ifi_ISatT,Ifi_Vrth,Ifi_expi,Ifi_Vbei,argi_Vbci; @@ -2878,8 +2878,6 @@ double Ith_Iccp,Ith_Ircx,Ith_Irci,Ith_Irbx,Ith_Irbi,Ith_Ire,Ith_Irbp; qdbcp_qhi=1.0; qdbcp_Vrth=qdbcp_qlo*qlo_Vrth; qdbcp_Vbcp=qdbcp_qlo*qlo_Vbcp; - qdbcp_Vbep=qdbcp_qlo*qlo_Vbep; - qdbcp_Vbep=qdbcp_Vbep+qdbcp_qhi*qhi_Vbep; qdbcp_Vrth=qdbcp_Vrth+qdbcp_qhi*qhi_Vrth; qdbcp_Vbcp=qdbcp_Vbcp+qdbcp_qhi*qhi_Vbcp; }else{ @@ -2951,7 +2949,6 @@ double Ith_Iccp,Ith_Ircx,Ith_Irci,Ith_Irbx,Ith_Irbi,Ith_Ire,Ith_Irbp; qdbcp_q0=-1.0; qdbcp_Vrth=qdbcp_qlo*qlo_Vrth; qdbcp_Vbcp=qdbcp_Vbcp+qdbcp_qlo*qlo_Vbcp; - qdbcp_Vbep=qdbcp_qlo*qlo_Vbep; qdbcp_Vbcp=qdbcp_Vbcp+qdbcp_vl*vl_Vbcp; qdbcp_Vrth=qdbcp_Vrth+qdbcp_vl*vl_Vrth; qdbcp_Vrth=qdbcp_Vrth+qdbcp_vl0*vl0_Vrth;