hisim2, rename FABS() -> fabs()
This commit is contained in:
parent
446a346caf
commit
615f3f3d9c
|
|
@ -1,3 +1,8 @@
|
||||||
|
2011-05-22 Robert Larice
|
||||||
|
* src/spicelib/devices/hisim2/hsm2cvtest.c ,
|
||||||
|
* src/spicelib/devices/hisim2/hsm2ld.c :
|
||||||
|
hisim2, rename FABS() -> fabs()
|
||||||
|
|
||||||
2011-05-22 Robert Larice
|
2011-05-22 Robert Larice
|
||||||
* src/spicelib/devices/hisim2/* :
|
* src/spicelib/devices/hisim2/* :
|
||||||
hisim2, convert K&R function definitions to ansi style
|
hisim2, convert K&R function definitions to ansi style
|
||||||
|
|
|
||||||
|
|
@ -111,17 +111,17 @@ int HSM2convTest(
|
||||||
* check convergence
|
* check convergence
|
||||||
*/
|
*/
|
||||||
if ( here->HSM2_off == 0 || !(ckt->CKTmode & MODEINITFIX) ) {
|
if ( here->HSM2_off == 0 || !(ckt->CKTmode & MODEINITFIX) ) {
|
||||||
tol0 = ckt->CKTreltol * MAX(FABS(cdhat), FABS(cd)) + ckt->CKTabstol;
|
tol0 = ckt->CKTreltol * MAX(fabs(cdhat), fabs(cd)) + ckt->CKTabstol;
|
||||||
tol1 = ckt->CKTreltol * MAX(FABS(cgshat), FABS(Igstot)) + ckt->CKTabstol;
|
tol1 = ckt->CKTreltol * MAX(fabs(cgshat), fabs(Igstot)) + ckt->CKTabstol;
|
||||||
tol2 = ckt->CKTreltol * MAX(FABS(cgdhat), FABS(Igdtot)) + ckt->CKTabstol;
|
tol2 = ckt->CKTreltol * MAX(fabs(cgdhat), fabs(Igdtot)) + ckt->CKTabstol;
|
||||||
tol3 = ckt->CKTreltol * MAX(FABS(cgbhat), FABS(Igbtot)) + ckt->CKTabstol;
|
tol3 = ckt->CKTreltol * MAX(fabs(cgbhat), fabs(Igbtot)) + ckt->CKTabstol;
|
||||||
tol4 = ckt->CKTreltol * MAX(FABS(cbhat), FABS(Ibtot)) + ckt->CKTabstol;
|
tol4 = ckt->CKTreltol * MAX(fabs(cbhat), fabs(Ibtot)) + ckt->CKTabstol;
|
||||||
|
|
||||||
if ( (FABS(cdhat - cd) >= tol0)
|
if ( (fabs(cdhat - cd) >= tol0)
|
||||||
|| (FABS(cgshat - Igstot) >= tol1)
|
|| (fabs(cgshat - Igstot) >= tol1)
|
||||||
|| (FABS(cgdhat - Igdtot) >= tol2)
|
|| (fabs(cgdhat - Igdtot) >= tol2)
|
||||||
|| (FABS(cgbhat - Igbtot) >= tol3)
|
|| (fabs(cgbhat - Igbtot) >= tol3)
|
||||||
|| (FABS(cbhat - Ibtot) >= tol4) ) {
|
|| (fabs(cbhat - Ibtot) >= tol4) ) {
|
||||||
ckt->CKTnoncon++;
|
ckt->CKTnoncon++;
|
||||||
return(OK);
|
return(OK);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -447,55 +447,55 @@ tm0 = gtodsecld() ;
|
||||||
*/
|
*/
|
||||||
if ( !(ckt->CKTmode & MODEINITPRED) && BYPASS_enable )
|
if ( !(ckt->CKTmode & MODEINITPRED) && BYPASS_enable )
|
||||||
if ((!here->HSM2_corbnet) ||
|
if ((!here->HSM2_corbnet) ||
|
||||||
(FABS(delvdbs) <
|
(fabs(delvdbs) <
|
||||||
(reltol
|
(reltol
|
||||||
* MAX(FABS(vdbs), FABS(*(ckt->CKTstate0 + here->HSM2vdbs)))
|
* MAX(fabs(vdbs), fabs(*(ckt->CKTstate0 + here->HSM2vdbs)))
|
||||||
+ voltTol)))
|
+ voltTol)))
|
||||||
if ((!here->HSM2_corbnet) ||
|
if ((!here->HSM2_corbnet) ||
|
||||||
(FABS(delvdbd) <
|
(fabs(delvdbd) <
|
||||||
(reltol
|
(reltol
|
||||||
* MAX(FABS(vdbd), FABS(*(ckt->CKTstate0 + here->HSM2vdbd)))
|
* MAX(fabs(vdbd), fabs(*(ckt->CKTstate0 + here->HSM2vdbd)))
|
||||||
+ voltTol)))
|
+ voltTol)))
|
||||||
if ((!here->HSM2_corbnet) ||
|
if ((!here->HSM2_corbnet) ||
|
||||||
(FABS(delvsbs) <
|
(fabs(delvsbs) <
|
||||||
(reltol
|
(reltol
|
||||||
* MAX(FABS(vsbs), FABS(*(ckt->CKTstate0 + here->HSM2vsbs)))
|
* MAX(fabs(vsbs), fabs(*(ckt->CKTstate0 + here->HSM2vsbs)))
|
||||||
+ voltTol)))
|
+ voltTol)))
|
||||||
if ((here->HSM2_corg == 0) || (here->HSM2_corg == 1) ||
|
if ((here->HSM2_corg == 0) || (here->HSM2_corg == 1) ||
|
||||||
(FABS(delvges) <
|
(fabs(delvges) <
|
||||||
(reltol
|
(reltol
|
||||||
* MAX(FABS(vges), FABS(*(ckt->CKTstate0 + here->HSM2vges)))
|
* MAX(fabs(vges), fabs(*(ckt->CKTstate0 + here->HSM2vges)))
|
||||||
+ voltTol)))
|
+ voltTol)))
|
||||||
if ( FABS(delvbs) <
|
if ( fabs(delvbs) <
|
||||||
( reltol *
|
( reltol *
|
||||||
MAX(FABS(vbs), FABS(*(ckt->CKTstate0+here->HSM2vbs))) +
|
MAX(fabs(vbs), fabs(*(ckt->CKTstate0+here->HSM2vbs))) +
|
||||||
voltTol ) )
|
voltTol ) )
|
||||||
if ( FABS(delvbd) <
|
if ( fabs(delvbd) <
|
||||||
( reltol *
|
( reltol *
|
||||||
MAX(FABS(vbd), FABS(*(ckt->CKTstate0+here->HSM2vbd))) +
|
MAX(fabs(vbd), fabs(*(ckt->CKTstate0+here->HSM2vbd))) +
|
||||||
voltTol ) )
|
voltTol ) )
|
||||||
if ( FABS(delvgs) <
|
if ( fabs(delvgs) <
|
||||||
( reltol *
|
( reltol *
|
||||||
MAX(FABS(vgs), FABS(*(ckt->CKTstate0+here->HSM2vgs))) +
|
MAX(fabs(vgs), fabs(*(ckt->CKTstate0+here->HSM2vgs))) +
|
||||||
voltTol ) )
|
voltTol ) )
|
||||||
if ( FABS(delvds) <
|
if ( fabs(delvds) <
|
||||||
( reltol *
|
( reltol *
|
||||||
MAX(FABS(vds), FABS(*(ckt->CKTstate0+here->HSM2vds))) +
|
MAX(fabs(vds), fabs(*(ckt->CKTstate0+here->HSM2vds))) +
|
||||||
voltTol ) )
|
voltTol ) )
|
||||||
if ( FABS(cdhat - Idtot) <
|
if ( fabs(cdhat - Idtot) <
|
||||||
( reltol *
|
( reltol *
|
||||||
MAX(FABS(cdhat),FABS(Idtot)) + abstol ) )
|
MAX(fabs(cdhat),fabs(Idtot)) + abstol ) )
|
||||||
if (!model->HSM2_coiigs ||
|
if (!model->HSM2_coiigs ||
|
||||||
(FABS(cgbhat - Igbtot) < reltol
|
(fabs(cgbhat - Igbtot) < reltol
|
||||||
* MAX(FABS(cgbhat), FABS(Igbtot)) + abstol))
|
* MAX(fabs(cgbhat), fabs(Igbtot)) + abstol))
|
||||||
if (!model->HSM2_coiigs ||
|
if (!model->HSM2_coiigs ||
|
||||||
(FABS(cgshat - Igstot) < reltol
|
(fabs(cgshat - Igstot) < reltol
|
||||||
* MAX(FABS(cgshat), FABS(Igstot)) + abstol))
|
* MAX(fabs(cgshat), fabs(Igstot)) + abstol))
|
||||||
if (!model->HSM2_coiigs ||
|
if (!model->HSM2_coiigs ||
|
||||||
(FABS(cgdhat - Igdtot) < reltol
|
(fabs(cgdhat - Igdtot) < reltol
|
||||||
* MAX(FABS(cgdhat), FABS(Igdtot)) + abstol)){
|
* MAX(fabs(cgdhat), fabs(Igdtot)) + abstol)){
|
||||||
tempv = MAX(FABS(cbhat),FABS(Ibtot)) + abstol;
|
tempv = MAX(fabs(cbhat),fabs(Ibtot)) + abstol;
|
||||||
if ((FABS(cbhat - Ibtot)) < reltol * tempv) {
|
if ((fabs(cbhat - Ibtot)) < reltol * tempv) {
|
||||||
/* bypass code */
|
/* bypass code */
|
||||||
vbs = *(ckt->CKTstate0 + here->HSM2vbs);
|
vbs = *(ckt->CKTstate0 + here->HSM2vbs);
|
||||||
vbd = *(ckt->CKTstate0 + here->HSM2vbd);
|
vbd = *(ckt->CKTstate0 + here->HSM2vbd);
|
||||||
|
|
@ -763,25 +763,25 @@ tm0 = gtodsecld() ;
|
||||||
Idtot = here->HSM2_ids + here->HSM2_isub - here->HSM2_ibd + here->HSM2_igidl;
|
Idtot = here->HSM2_ids + here->HSM2_isub - here->HSM2_ibd + here->HSM2_igidl;
|
||||||
else
|
else
|
||||||
Idtot = here->HSM2_ids + here->HSM2_ibd - here->HSM2_igidl;
|
Idtot = here->HSM2_ids + here->HSM2_ibd - here->HSM2_igidl;
|
||||||
tol = ckt->CKTreltol * MAX(FABS(cdhat), FABS(Idtot)) + ckt->CKTabstol;
|
tol = ckt->CKTreltol * MAX(fabs(cdhat), fabs(Idtot)) + ckt->CKTabstol;
|
||||||
tol2 = ckt->CKTreltol * MAX(FABS(cgbhat), FABS(Igbtot)) + ckt->CKTabstol;
|
tol2 = ckt->CKTreltol * MAX(fabs(cgbhat), fabs(Igbtot)) + ckt->CKTabstol;
|
||||||
tol3 = ckt->CKTreltol * MAX(FABS(cgshat), FABS(Igstot)) + ckt->CKTabstol;
|
tol3 = ckt->CKTreltol * MAX(fabs(cgshat), fabs(Igstot)) + ckt->CKTabstol;
|
||||||
tol4 = ckt->CKTreltol * MAX(FABS(cgdhat), FABS(Igdtot)) + ckt->CKTabstol;
|
tol4 = ckt->CKTreltol * MAX(fabs(cgdhat), fabs(Igdtot)) + ckt->CKTabstol;
|
||||||
if (FABS(cdhat - Idtot) >= tol) {
|
if (fabs(cdhat - Idtot) >= tol) {
|
||||||
ckt->CKTnoncon++;
|
ckt->CKTnoncon++;
|
||||||
isConv = 0;
|
isConv = 0;
|
||||||
}
|
}
|
||||||
else if (FABS(cgbhat - Igbtot) >= tol2 ||
|
else if (fabs(cgbhat - Igbtot) >= tol2 ||
|
||||||
FABS(cgshat - Igstot) >= tol3 ||
|
fabs(cgshat - Igstot) >= tol3 ||
|
||||||
FABS(cgdhat - Igdtot) >= tol4) {
|
fabs(cgdhat - Igdtot) >= tol4) {
|
||||||
ckt->CKTnoncon++;
|
ckt->CKTnoncon++;
|
||||||
isConv = 0;
|
isConv = 0;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Ibtot = here->HSM2_ibs + here->HSM2_ibd
|
Ibtot = here->HSM2_ibs + here->HSM2_ibd
|
||||||
- here->HSM2_isub - here->HSM2_igidl - here->HSM2_igisl;
|
- here->HSM2_isub - here->HSM2_igidl - here->HSM2_igisl;
|
||||||
tol = ckt->CKTreltol * MAX(FABS(cbhat), FABS(Ibtot)) + ckt->CKTabstol;
|
tol = ckt->CKTreltol * MAX(fabs(cbhat), fabs(Ibtot)) + ckt->CKTabstol;
|
||||||
if (FABS(cbhat - Ibtot) > tol) {
|
if (fabs(cbhat - Ibtot) > tol) {
|
||||||
ckt->CKTnoncon++;
|
ckt->CKTnoncon++;
|
||||||
isConv = 0;
|
isConv = 0;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue