diff --git a/src/spicelib/devices/hicum2/hicum2acld.c b/src/spicelib/devices/hicum2/hicum2acld.c index 98c108f6d..0e9cb3801 100644 --- a/src/spicelib/devices/hicum2/hicum2acld.c +++ b/src/spicelib/devices/hicum2/hicum2acld.c @@ -185,7 +185,7 @@ HICUMacLoad(GENmodel *inModel, CKTcircuit *ckt) *(here->HICUMcollCICollCIPtr) += -Iciei_Vbici; *(here->HICUMemitEIBaseBIPtr) += -Iciei_Vbici; -// Stamp element: Ibici (missing Ibici_Vbiei) +// Stamp element: Ibici *(here->HICUMbaseBIBaseBIPtr) += Ibici_Vbici; *(here->HICUMcollCICollCIPtr) += Ibici_Vbici; *(here->HICUMcollCIBaseBIPtr) += -Ibici_Vbici; @@ -326,7 +326,7 @@ HICUMacLoad(GENmodel *inModel, CKTcircuit *ckt) *(here->HICUMemitEIEmitEIPtr + 1) += XQjei_Vbiei; *(here->HICUMbaseBIEmitEIPtr + 1) += -XQjei_Vbiei; *(here->HICUMemitEIBaseBIPtr + 1) += -XQjei_Vbiei; - //Qf + //Qf f_Bi=+ f_Ei =- *(here->HICUMbaseBIBaseBIPtr +1) += XQf_Vbiei; *(here->HICUMemitEIEmitEIPtr +1) += XQf_Vbiei; *(here->HICUMbaseBIEmitEIPtr +1) += -XQf_Vbiei; diff --git a/src/spicelib/devices/hicum2/hicum2acld_old.c b/src/spicelib/devices/hicum2/hicum2acld_old.c new file mode 100644 index 000000000..32b137567 --- /dev/null +++ b/src/spicelib/devices/hicum2/hicum2acld_old.c @@ -0,0 +1,361 @@ +/********** +Copyright 1990 Regents of the University of California. All rights reserved. +Author: 1985 Thomas L. Quarles +Model Author: 1990 Michael Schröter TU Dresden +Spice3 Implementation: 2019 Dietmar Warning +**********/ + +/* + * Function to load the COMPLEX circuit matrix using the + * small signal parameters saved during a previous DC operating + * point analysis. + */ + +#include "ngspice/ngspice.h" +#include "ngspice/cktdefs.h" +#include "hicum2defs.h" +#include "ngspice/sperror.h" +#include "ngspice/suffix.h" + +int +HICUMacLoad(GENmodel *inModel, CKTcircuit *ckt) +{ + HICUMinstance *here; + HICUMmodel *model = (HICUMmodel*)inModel; + double Ibpei_Vbpei; + double Ibpei_Vrth; + + double Ibiei_Vbiei; + double Ibiei_Vbici; + double Ibiei_Vrth; + + double Ibici_Vbici; + double Ibici_Vbiei; + double Ibici_Vrth; + + double Ibpci_Vbpci; + double Ibpci_Vrth; + + double Isici_Vsici; + double Isici_Vrth; + + double Iciei_Vbiei; + double Iciei_Vbici; + double Iciei_Vrth; + + + double Ibpbi_Vbpbi; + double Ibpbi_Vciei; + double Ibpbi_Vbiei; + double Ibpbi_Vrth; + + double Isis_Vsis; + + double Icic_Vcic; + double Ieie_Veie; + double Ibbp_Vbbp; + + double Ibpsi_Vbpci; + double Ibpsi_Vsici; + double Ibpsi_Vrth; + + double XQrbi_Vbpbi; +// double XQrbi_Vbiei; +// double XQrbi_Vbici; + double XQdeix_Vbiei; + double XQjei_Vbiei; + double XQdci_Vbici; + double XQjci_Vbici; + double XQjep_Vbpei; + double Xqjcx0_t_i_Vbci; + double Xqjcx0_t_ii_Vbpci; + double XQdsu_Vbpci; +// double XQdsu_Vsici; + double XQjs_Vsici; + double XQscp_Vsc; + double XQbepar1_Vbe; + double XQbepar2_Vbpe; + double XQbcpar1_Vbci; + double XQbcpar2_Vbpci; + double XQsu_Vsis; + + /* loop through all the models */ + for( ; model != NULL; model = HICUMnextModel(model)) { + + /* loop through all the instances of the model */ + for( here = HICUMinstances(model); here!= NULL; + here = HICUMnextInstance(here)) { + + //todo: temperature derivatives + Ibbp_Vbbp = 1/here->HICUMrbx_t.rpart; + Icic_Vcic = 1/here->HICUMrcx_t.rpart; + Ieie_Veie = 1/here->HICUMre_t.rpart; + Isis_Vsis = 1/model->HICUMrsu; + + Ibiei_Vbiei = *(ckt->CKTstate0 + here->HICUMibiei_Vbiei); + Ibiei_Vbici = *(ckt->CKTstate0 + here->HICUMibiei_Vbici); + Ibiei_Vrth = *(ckt->CKTstate0 + here->HICUMibiei_Vrth); + + Ibpei_Vbpei = *(ckt->CKTstate0 + here->HICUMibpei_Vbpei); + Ibpei_Vrth = *(ckt->CKTstate0 + here->HICUMibpei_Vrth); + + Iciei_Vbiei = *(ckt->CKTstate0 + here->HICUMiciei_Vbiei); + Iciei_Vbici = *(ckt->CKTstate0 + here->HICUMiciei_Vbici); + Iciei_Vrth = *(ckt->CKTstate0 + here->HICUMiciei_Vrth); + + Ibici_Vbici = *(ckt->CKTstate0 + here->HICUMibici_Vbici); + Ibici_Vbiei = *(ckt->CKTstate0 + here->HICUMibici_Vbiei); + Ibici_Vrth = *(ckt->CKTstate0 + here->HICUMibici_Vrth); + + Ibpbi_Vbpbi = *(ckt->CKTstate0 + here->HICUMibpbi_Vbpbi); + Ibpbi_Vbiei = *(ckt->CKTstate0 + here->HICUMibpbi_Vbiei); + Ibpbi_Vciei = *(ckt->CKTstate0 + here->HICUMibpbi_Vbici); + Ibpbi_Vrth = *(ckt->CKTstate0 + here->HICUMibpbi_Vrth); + + Isici_Vsici = *(ckt->CKTstate0 + here->HICUMisici_Vsici); + Isici_Vrth = *(ckt->CKTstate0 + here->HICUMisici_Vrth); + + Ibpsi_Vbpci = *(ckt->CKTstate0 + here->HICUMibpsi_Vbpci); + Ibpsi_Vsici = *(ckt->CKTstate0 + here->HICUMibpsi_Vsici); + Ibpsi_Vrth = *(ckt->CKTstate0 + here->HICUMibpsi_Vrth); + + Ibpci_Vbpci = *(ckt->CKTstate0 + here->HICUMibpci_Vbpci); + Ibpci_Vrth = *(ckt->CKTstate0 + here->HICUMibpci_Vrth); + +/* +c The real part +*/ +/* +c Stamp element: Ibiei (missing Ibiei_Vbici) +*/ + *(here->HICUMbaseBIBaseBIPtr) += Ibiei_Vbiei; + *(here->HICUMbaseBIEmitEIPtr) += -Ibiei_Vbiei; + *(here->HICUMemitEIBaseBIPtr) += -Ibiei_Vbiei; + *(here->HICUMemitEIEmitEIPtr) += Ibiei_Vbiei; +/* +c Stamp element: Ibpei +*/ + *(here->HICUMbaseBPBaseBPPtr) += Ibpei_Vbpei; + *(here->HICUMbaseBPEmitEIPtr) += -Ibpei_Vbpei; + *(here->HICUMemitEIBaseBPPtr) += -Ibpei_Vbpei; + *(here->HICUMemitEIEmitEIPtr) += Ibpei_Vbpei; + +/* +c Stamp element: Iciei +*/ + *(here->HICUMcollCIBaseBIPtr) += Iciei_Vbiei; + *(here->HICUMcollCIEmitEIPtr) += -Iciei_Vbiei; + *(here->HICUMemitEIBaseBIPtr) += -Iciei_Vbiei; + *(here->HICUMemitEIEmitEIPtr) += Iciei_Vbiei; + *(here->HICUMcollCIBaseBIPtr) += Iciei_Vbici; + *(here->HICUMcollCICollCIPtr) += -Iciei_Vbici; + *(here->HICUMemitEIBaseBIPtr) += -Iciei_Vbici; + *(here->HICUMemitEICollCIPtr) += Iciei_Vbici; +/* +c Stamp element: Ibici (missing Ibici_Vbiei) +*/ + *(here->HICUMbaseBIBaseBIPtr) += Ibici_Vbici; + *(here->HICUMbaseBICollCIPtr) += -Ibici_Vbici; + *(here->HICUMcollCIBaseBIPtr) += -Ibici_Vbici; + *(here->HICUMcollCICollCIPtr) += Ibici_Vbici; +/* +c Stamp element: Ibpci +*/ + *(here->HICUMbaseBPCollCIPtr) += Ibpci_Vbpci; + *(here->HICUMbaseBPBaseBPPtr) += -Ibpci_Vbpci; + *(here->HICUMcollCIBaseBPPtr) += -Ibpci_Vbpci; + *(here->HICUMcollCICollCIPtr) += Ibpci_Vbpci; +/* +c Stamp element: Rcx +*/ + *(here->HICUMcollCollPtr) += Icic_Vcic; + *(here->HICUMcollCICollPtr) += -Icic_Vcic; + *(here->HICUMcollCollCIPtr) += -Icic_Vcic; + *(here->HICUMcollCICollCIPtr) += Icic_Vcic; +/* +c Stamp element: Rbx +*/ + *(here->HICUMbaseBasePtr) += Ibbp_Vbbp; + *(here->HICUMbaseBPBasePtr) += -Ibbp_Vbbp; + *(here->HICUMbaseBaseBPPtr) += -Ibbp_Vbbp; + *(here->HICUMbaseBPBaseBPPtr) += Ibbp_Vbbp; +/* +c Stamp element: Ibpbi +*/ + *(here->HICUMbaseBPBaseBPPtr) += Ibpbi_Vbpbi; + *(here->HICUMbaseBPBaseBIPtr) += -Ibpbi_Vbpbi; + *(here->HICUMbaseBPBaseBIPtr) += Ibpbi_Vbiei; + *(here->HICUMbaseBPEmitEIPtr) += -Ibpbi_Vbiei; + *(here->HICUMbaseBPCollCIPtr) += Ibpbi_Vciei; + *(here->HICUMbaseBPEmitEIPtr) += -Ibpbi_Vciei; + *(here->HICUMbaseBIBaseBPPtr) += -Ibpbi_Vbpbi; + *(here->HICUMbaseBIBaseBIPtr) += Ibpbi_Vbpbi; + *(here->HICUMbaseBIBaseBIPtr) += -Ibpbi_Vbiei; + *(here->HICUMbaseBIEmitEIPtr) += Ibpbi_Vbiei; + *(here->HICUMbaseBICollCIPtr) += -Ibpbi_Vciei; + *(here->HICUMbaseBIEmitEIPtr) += Ibpbi_Vciei; +/* +c Stamp element: Re +*/ + *(here->HICUMemitEmitPtr) += Ieie_Veie; + *(here->HICUMemitEIEmitPtr) += -Ieie_Veie; + *(here->HICUMemitEmitEIPtr) += -Ieie_Veie; + *(here->HICUMemitEIEmitEIPtr) += Ieie_Veie; +/* +c Stamp element: Isici +*/ + *(here->HICUMsubsSISubsSIPtr) += Isici_Vsici; + *(here->HICUMsubsSICollCIPtr) += -Isici_Vsici; + *(here->HICUMcollCISubsSIPtr) += -Isici_Vsici; + *(here->HICUMcollCICollCIPtr) += Isici_Vsici; +/* +c Stamp element: Ibpsi +*/ + *(here->HICUMbaseBPBaseBPPtr) += Ibpsi_Vbpci; + *(here->HICUMbaseBPCollCIPtr) += -Ibpsi_Vbpci; + *(here->HICUMbaseBPSubsSIPtr) += Ibpsi_Vsici; + *(here->HICUMbaseBPCollCIPtr) += -Ibpsi_Vsici; + *(here->HICUMsubsSIBaseBPPtr) += -Ibpsi_Vbpci; + *(here->HICUMsubsSICollCIPtr) += Ibpsi_Vbpci; + *(here->HICUMsubsSISubsSIPtr) += -Ibpsi_Vsici; + *(here->HICUMsubsSICollCIPtr) += Ibpsi_Vsici; +/* +c Stamp element: Rs +*/ + *(here->HICUMsubsSubsPtr) += Isis_Vsis; + *(here->HICUMsubsSISubsPtr) += -Isis_Vsis; + *(here->HICUMsubsSubsSIPtr) += -Isis_Vsis; + *(here->HICUMsubsSISubsSIPtr) += Isis_Vsis; +/* +c The complex part +*/ +//todo: Complete with partial dervatives e.g. Qjs_Vsici, Qrbi_Vbici + + XQrbi_Vbpbi = *(ckt->CKTstate0 + here->HICUMcqrbi) * ckt->CKTomega; + XQdeix_Vbiei = *(ckt->CKTstate0 + here->HICUMcqf) * ckt->CKTomega; + XQjei_Vbiei = *(ckt->CKTstate0 + here->HICUMcqjei) * ckt->CKTomega; + XQdci_Vbici = *(ckt->CKTstate0 + here->HICUMcqr) * ckt->CKTomega; + XQjci_Vbici = *(ckt->CKTstate0 + here->HICUMcqjci) * ckt->CKTomega; + XQjep_Vbpei = *(ckt->CKTstate0 + here->HICUMcqjep) * ckt->CKTomega; + Xqjcx0_t_i_Vbci = *(ckt->CKTstate0 + here->HICUMcqcx0_t_i) * ckt->CKTomega; + Xqjcx0_t_ii_Vbpci = *(ckt->CKTstate0 + here->HICUMcqcx0_t_ii) * ckt->CKTomega; + XQdsu_Vbpci = *(ckt->CKTstate0 + here->HICUMcqdsu) * ckt->CKTomega; + XQjs_Vsici = *(ckt->CKTstate0 + here->HICUMcqjs) * ckt->CKTomega; + XQscp_Vsc = *(ckt->CKTstate0 + here->HICUMcqscp) * ckt->CKTomega; + XQbepar1_Vbe = *(ckt->CKTstate0 + here->HICUMcqbepar1) * ckt->CKTomega; + XQbepar2_Vbpe = *(ckt->CKTstate0 + here->HICUMcqbepar2) * ckt->CKTomega; + XQbcpar1_Vbci = *(ckt->CKTstate0 + here->HICUMcqbcpar1) * ckt->CKTomega; + XQbcpar2_Vbpci = *(ckt->CKTstate0 + here->HICUMcqbcpar2) * ckt->CKTomega; + XQsu_Vsis = *(ckt->CKTstate0 + here->HICUMcqsu) * ckt->CKTomega; +/* +c Stamp element: Qbepar1 +*/ + *(here->HICUMbaseBasePtr + 1) += XQbepar1_Vbe; + *(here->HICUMbaseEmitPtr + 1) += -XQbepar1_Vbe; + *(here->HICUMemitBasePtr + 1) += -XQbepar1_Vbe; + *(here->HICUMemitEmitPtr + 1) += XQbepar1_Vbe; +/* +c Stamp element: Qbepar2 +*/ + *(here->HICUMbaseBPBaseBPPtr + 1) += XQbepar2_Vbpe; + *(here->HICUMemitBaseBPPtr + 1) += -XQbepar2_Vbpe; + *(here->HICUMemitEmitPtr + 1) += -XQbepar2_Vbpe; + *(here->HICUMbaseBPEmitPtr + 1) += XQbepar2_Vbpe; +/* +c Stamp element: Qdeix, Qjei +*/ + *(here->HICUMbaseBIBaseBIPtr + 1) += XQdeix_Vbiei; + *(here->HICUMbaseBIEmitEIPtr + 1) += -XQdeix_Vbiei; + *(here->HICUMemitEIBaseBIPtr + 1) += -XQdeix_Vbiei; + *(here->HICUMemitEIEmitEIPtr + 1) += XQdeix_Vbiei; + *(here->HICUMbaseBIBaseBIPtr + 1) += XQjei_Vbiei; + *(here->HICUMbaseBIEmitEIPtr + 1) += -XQjei_Vbiei; + *(here->HICUMemitEIBaseBIPtr + 1) += -XQjei_Vbiei; + *(here->HICUMemitEIEmitEIPtr + 1) += XQjei_Vbiei; +/* +c Stamp element: Qjep +*/ + *(here->HICUMbaseBPBaseBPPtr + 1) += XQjep_Vbpei; + *(here->HICUMbaseBPEmitEIPtr + 1) += -XQjep_Vbpei; + *(here->HICUMemitEIBaseBPPtr + 1) += -XQjep_Vbpei; + *(here->HICUMemitEIEmitEIPtr + 1) += XQjep_Vbpei; + +/* +c Stamp element: Qdci, Qjci +*/ + *(here->HICUMbaseBIBaseBIPtr + 1) += XQdci_Vbici; + *(here->HICUMbaseBICollCIPtr + 1) += -XQdci_Vbici; + *(here->HICUMcollCIBaseBIPtr + 1) += -XQdci_Vbici; + *(here->HICUMcollCICollCIPtr + 1) += XQdci_Vbici; + *(here->HICUMbaseBIBaseBIPtr + 1) += XQjci_Vbici; + *(here->HICUMbaseBICollCIPtr + 1) += -XQjci_Vbici; + *(here->HICUMcollCIBaseBIPtr + 1) += -XQjci_Vbici; + *(here->HICUMcollCICollCIPtr + 1) += XQjci_Vbici; +/* +c Stamp element: Qbcpar1, qjcx0_i +*/ + *(here->HICUMbaseBasePtr + 1) += XQbcpar1_Vbci; + *(here->HICUMbaseCollCIPtr + 1) += -XQbcpar1_Vbci; + *(here->HICUMcollCIBasePtr + 1) += -XQbcpar1_Vbci; + *(here->HICUMcollCICollCIPtr + 1) += XQbcpar1_Vbci; + *(here->HICUMbaseBasePtr + 1) += Xqjcx0_t_i_Vbci; + *(here->HICUMbaseCollCIPtr + 1) += -Xqjcx0_t_i_Vbci; + *(here->HICUMcollCIBasePtr + 1) += -Xqjcx0_t_i_Vbci; + *(here->HICUMcollCICollCIPtr + 1) += Xqjcx0_t_i_Vbci; +/* +c Stamp element: Qbcpar2, qjcx0_ii, Qdsu +*/ + *(here->HICUMbaseBPBaseBPPtr + 1) += XQbcpar2_Vbpci; + *(here->HICUMcollCICollCIPtr + 1) += XQbcpar2_Vbpci; + *(here->HICUMbaseBPCollCIPtr + 1) += -XQbcpar2_Vbpci; + *(here->HICUMcollCIBaseBPPtr + 1) += -XQbcpar2_Vbpci; + *(here->HICUMbaseBPCollCIPtr + 1) += Xqjcx0_t_ii_Vbpci; + *(here->HICUMbaseBPBaseBPPtr + 1) += -Xqjcx0_t_ii_Vbpci; + *(here->HICUMcollCIBaseBPPtr + 1) += -Xqjcx0_t_ii_Vbpci; + *(here->HICUMcollCICollCIPtr + 1) += Xqjcx0_t_ii_Vbpci; + *(here->HICUMbaseBPCollCIPtr + 1) += XQdsu_Vbpci; + *(here->HICUMbaseBPBaseBPPtr + 1) += -XQdsu_Vbpci; + *(here->HICUMcollCIBaseBPPtr + 1) += -XQdsu_Vbpci; + *(here->HICUMcollCICollCIPtr + 1) += XQdsu_Vbpci; +/* +c Stamp element: Qrbi +*/ + *(here->HICUMbaseBPBaseBPPtr + 1) += XQrbi_Vbpbi; + *(here->HICUMbaseBPBaseBIPtr + 1) += -XQrbi_Vbpbi; + *(here->HICUMbaseBIBaseBPPtr + 1) += -XQrbi_Vbpbi; + *(here->HICUMbaseBIBaseBIPtr + 1) += XQrbi_Vbpbi; +//todo: +// *(here->HICUMbaseBPBaseBIPtr + 1) += XQrbi_Vbiei; +// *(here->HICUMbaseBPEmitEIPtr + 1) += -XQrbi_Vbiei; +// *(here->HICUMbaseBIBaseBIPtr + 1) += -XQrbi_Vbiei; +// *(here->HICUMbaseBIEmitEIPtr + 1) += XQrbi_Vbiei; +// *(here->HICUMbaseBPCollCIPtr + 1) += XQrbi_Vbici; +// *(here->HICUMbaseBPEmitEIPtr + 1) += -XQrbi_Vbici; +// *(here->HICUMbaseBICollCIPtr + 1) += -XQrbi_Vbici; +// *(here->HICUMbaseBIEmitEIPtr + 1) += XQrbi_Vbici; +/* +c Stamp element: Cscp +*/ + *(here->HICUMsubsSubsPtr + 1) += XQscp_Vsc; + *(here->HICUMcollSubsPtr + 1) += -XQscp_Vsc; + *(here->HICUMcollCollPtr + 1) += -XQscp_Vsc; + *(here->HICUMsubsCollPtr + 1) += XQscp_Vsc; +/* +c Stamp element: Cjs +*/ + *(here->HICUMsubsSISubsSIPtr + 1) += XQjs_Vsici; + *(here->HICUMsubsSICollCIPtr + 1) += -XQjs_Vsici; + *(here->HICUMcollCISubsSIPtr + 1) += -XQjs_Vsici; + *(here->HICUMcollCICollCIPtr + 1) += XQjs_Vsici; +/* +c Stamp element: Csu +*/ + *(here->HICUMsubsSubsPtr + 1) += XQsu_Vsis; + *(here->HICUMsubsSISubsPtr + 1) += -XQsu_Vsis; + *(here->HICUMsubsSubsSIPtr + 1) += -XQsu_Vsis; + *(here->HICUMsubsSISubsSIPtr + 1) += XQsu_Vsis; + + } + } + return(OK); +} diff --git a/src/spicelib/devices/hicum2/hicum2setup.c b/src/spicelib/devices/hicum2/hicum2setup.c index 221891593..f54f3e261 100644 --- a/src/spicelib/devices/hicum2/hicum2setup.c +++ b/src/spicelib/devices/hicum2/hicum2setup.c @@ -647,7 +647,7 @@ do { if((here->ptr = SMPmakeElt(matrix, here->first, here->second)) == NULL){\ // TSTALLOC(HICUMxf1Xf1Ptr,HICUMxf1Node,HICUMxf1Node); // TSTALLOC(HICUMxf2Xf2Ptr,HICUMxf2Node,HICUMxf2Node); - if (model->HICUMflsh) { + if (model->HICUMflsh && model->HICUMrth>0.001) { TSTALLOC(HICUMcollTempPtr,HICUMcollNode,HICUMtempNode); TSTALLOC(HICUMbaseTempPtr,HICUMbaseNode,HICUMtempNode); TSTALLOC(HICUMemitTempPtr,HICUMemitNode,HICUMtempNode); diff --git a/src/spicelib/devices/hicum2/hicumL2.cpp b/src/spicelib/devices/hicum2/hicumL2.cpp index c87f49560..682d8816d 100644 --- a/src/spicelib/devices/hicum2/hicumL2.cpp +++ b/src/spicelib/devices/hicum2/hicumL2.cpp @@ -2624,6 +2624,7 @@ HICUMload(GENmodel *inModel, CKTcircuit *ckt) Ibiei_Vbiei += ckt->CKTgmin; Ibici += ckt->CKTgmin*Vbici; Ibici_Vbici += ckt->CKTgmin; + Ibici_Vbiei += ckt->CKTgmin; Iciei += ckt->CKTgmin*Vciei; Iciei_Vbiei += ckt->CKTgmin; Iciei_Vbici += ckt->CKTgmin; diff --git a/tests/hicum2/npn/qaSpec b/tests/hicum2/npn/qaSpec index 0eaece929..421334464 100644 --- a/tests/hicum2/npn/qaSpec +++ b/tests/hicum2/npn/qaSpec @@ -31,14 +31,21 @@ pins coll base emit subs therm float therm checkPolarity n -test noise_npn_cornoise_ac +test ypara_npn_full_sh_ac temperature 27 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 +biasSweep V(base)=0.800000,0.950000,0.050000 +freq dec 5 1e+008 1e+011 +outputs G(base,base) G(base,coll) G(coll,base) G(coll,coll) C(base,base) C(base,coll) C(coll,base) C(coll,coll) +modelParameters parameters/npn_full_sh +test ypara_npn_full_ac +temperature 27 +biases V(emit)=0 V(subs)=0 V(coll)=1.000000 +biasSweep V(base)=0.800000,0.950000,0.050000 +freq dec 5 1e+008 1e+011 +outputs G(base,base) G(base,coll) G(coll,base) G(coll,coll) C(base,base) C(base,coll) C(coll,base) C(coll,coll) +modelParameters parameters/npn_full `ifdef NOT_USED `endif