variables are assigned values twice successively

This commit is contained in:
dwarning 2018-11-02 17:38:06 +01:00
parent 0181a05a58
commit bb0ccbbcf8
5 changed files with 4 additions and 6 deletions

View File

@ -224,7 +224,7 @@ inp_subcktexpand(struct card *deck) {
if (!cp_getvar("modelline", CP_STRING, model, sizeof(model))) if (!cp_getvar("modelline", CP_STRING, model, sizeof(model)))
strcpy(model, ".model"); strcpy(model, ".model");
use_numparams = cp_getvar("numparams", CP_BOOL, NULL, 0); /* use_numparams = cp_getvar("numparams", CP_BOOL, NULL, 0); */
use_numparams = TRUE; use_numparams = TRUE;

View File

@ -467,7 +467,6 @@ int BJTdSetup(GENmodel *inModel, CKTcircuit *ckt)
/* ib term */ /* ib term */
EqualDeriv(&d_ib, &d_p); EqualDeriv(&d_ib, &d_p);
d_ib.d1_p = 0.0;
d_ib.value = cb; d_ib.value = cb;
d_ib.d1_p = gbe/here->BJTtBetaF + gben; d_ib.d1_p = gbe/here->BJTtBetaF + gben;
d_ib.d2_p2 = gbe2/here->BJTtBetaF + gben2; d_ib.d2_p2 = gbe2/here->BJTtBetaF + gben2;

View File

@ -610,7 +610,7 @@ int B4SOILoadOMP(B4SOIinstance *here, CKTcircuit *ckt) {
if ((vds == 0.0) && (vgs == 0.0) && (vbs == 0.0) && if ((vds == 0.0) && (vgs == 0.0) && (vbs == 0.0) &&
((ckt->CKTmode & (MODETRAN | MODEAC|MODEDCOP | ((ckt->CKTmode & (MODETRAN | MODEAC|MODEDCOP |
MODEDCTRANCURVE)) || (!(ckt->CKTmode & MODEUIC)))) MODEDCTRANCURVE)) || (!(ckt->CKTmode & MODEUIC))))
{ vbs = 0.0; {
/* vgs = model->B4SOItype*0.1 + here->B4SOIvth0; */ /* vgs = model->B4SOItype*0.1 + here->B4SOIvth0; */
vgs = model->B4SOItype * here->B4SOIvth0 + 0.1; /* v4.0 */ vgs = model->B4SOItype * here->B4SOIvth0 + 0.1; /* v4.0 */
vds = 0.0; vds = 0.0;

View File

@ -100,13 +100,12 @@ DIOdSetup(DIOmodel *model, CKTcircuit *ckt)
/* why using csat instead of breakdowncurrent? */ /* why using csat instead of breakdowncurrent? */
evrev=exp(-(here->DIOtBrkdwnV+vd)/vt); evrev=exp(-(here->DIOtBrkdwnV+vd)/vt);
cd = -csat*evrev; cd = -csat*evrev;
gd = csat*evrev/vte; gd = csat*evrev/vt;
/* /*
* cd = -csat*(evrev-1+here->DIOtBrkdwnV/vt); * cd = -csat*(evrev-1+here->DIOtBrkdwnV/vt);
*/ */
/* should there be a minus here above? /* should there be a minus here above?
*/ */
gd=csat*evrev/vt;
g2 = -gd/2/vt; g2 = -gd/2/vt;
g3 = -g2/3/vt; g3 = -g2/3/vt;
cdiff3 = cdiff2 = 0; cdiff3 = cdiff2 = 0;

View File

@ -81,7 +81,7 @@ NUMD2load(GENmodel *inModel, CKTcircuit *ckt)
} }
} else if (ckt->CKTmode & MODEINITTRAN) { } else if (ckt->CKTmode & MODEINITTRAN) {
model->NUMD2pInfo->order = ckt->CKTorder; model->NUMD2pInfo->order = ckt->CKTorder;
model->NUMD2pInfo->method = GEAR; /* model->NUMD2pInfo->method = GEAR; */
model->NUMD2pInfo->method = ckt->CKTintegrateMethod; model->NUMD2pInfo->method = ckt->CKTintegrateMethod;
for (i = 0; i <= ckt->CKTmaxOrder; i++) { for (i = 0; i <= ckt->CKTmaxOrder; i++) {
deltaNorm[i] = ckt->CKTdeltaOld[i] / TNorm; deltaNorm[i] = ckt->CKTdeltaOld[i] / TNorm;