dirty fix iavl

This commit is contained in:
Markus Mueller 2020-06-07 13:20:12 +02:00
parent 99a21e9f61
commit 55e14e62e7
4 changed files with 1300 additions and 1305 deletions

View File

@ -886,14 +886,14 @@ HICUMload(GENmodel *inModel, CKTcircuit *ckt)
//Avalanche current
duals::duald iavl;
duals::duald v_bord,v_q,U0,av,avl,cjci0_t, vdci_t, qavl_t,favl_t, kavl_t;
double v_bord_r;
double volatile v_bord_r1;
int use_aval;
if ((model->HICUMfavl > 0.0) && (model->HICUMcjci0 > 0.0)) {
use_aval = 1;
} else {
use_aval = 0;
}
// double v_bord_r;
// double volatile v_bord_r1;
// int use_aval;
// if ((model->HICUMfavl > 0.0) && (model->HICUMcjci0 > 0.0)) {
// use_aval = 1;
// } else {
// use_aval = 0;
// }
if (use_aval == 1) {//begin : HICAVL
double T_dpart = T.dpart();
cjci0_t = here->HICUMcjci0_t.rpart;
@ -909,9 +909,7 @@ HICUMload(GENmodel *inModel, CKTcircuit *ckt)
kavl_t.dpart(here->HICUMkavl_t.dpart);
}
v_bord = vdci_t-Vbici;
v_bord_r = v_bord.rpart();
v_bord_r1 = v_bord_r;
if (v_bord_r1 > 0) {
if (v_bord > 0) {
v_q = qavl_t/Cjci;
U0 = qavl_t/cjci0_t;
if(v_bord > U0){
@ -2373,7 +2371,7 @@ HICUMload(GENmodel *inModel, CKTcircuit *ckt)
iavl_Vbici += iavl_dCjci*Cjci_Vbici;
iavl_Vbici += iavl_ditf *itf_Vbici;
iavl_Vbiei = iavl_ditf *itf_Vbiei;
iavl_dT += iavl_ditf *itf_dT + iavl_dCjci*Cjci_dT;
iavl_dT += iavl_ditf *itf_dT ;//+ iavl_dCjci*Cjci_dT;
here->HICUMiavl = iavl;

View File

@ -31,14 +31,13 @@ pins coll base emit subs therm
float therm
checkPolarity n
//error
test fout_npn_full_sh
test noise_npn_cornoise_ac
temperature 27
biases V(emit)=0 V(subs)=0
biasSweep V(coll)=0.000000,2.000000,0.050000
biasList V(base)=0.600000,0.650000,0.700000,0.750000,0.800000,0.850000,0.900000
outputs I(coll) I(base)
modelParameters parameters/npn_full_sh
biases V(emit)=0 V(subs)=0 V(coll)=1.000000
biasSweep V(base)=0.700000,1.100000,0.100000
freq dec 2 1000 1e+011
outputs N(coll)
modelParameters parameters/npn_cornoise
`ifdef NOT_USED

File diff suppressed because it is too large Load Diff

1284
tests/hicum2/npn/qaSpec_real Normal file

File diff suppressed because it is too large Load Diff