|
|
|
@ -23,7 +23,7 @@ VBICacLoad(GENmodel *inModel, CKTcircuit *ckt) |
|
|
|
VBICinstance *here; |
|
|
|
VBICmodel *model = (VBICmodel*)inModel; |
|
|
|
double Ibe_Vbei,Ibex_Vbex |
|
|
|
,Itzf_Vbei,Itzf_Vbci,Itzr_Vbci,Itzr_Vbei,Ibc_Vbci |
|
|
|
,Iciei_Vbei,Iciei_Vbci,Ibc_Vbci |
|
|
|
,Ibc_Vbei,Ibep_Vbep,Ircx_Vrcx,Irci_Vrci |
|
|
|
,Irci_Vbci,Irci_Vbcx,Irbx_Vrbx,Irbi_Vrbi,Irbi_Vbei |
|
|
|
,Irbi_Vbci,Ire_Vre,Irbp_Vrbp,Irbp_Vbep,Irbp_Vbci |
|
|
|
@ -32,7 +32,7 @@ VBICacLoad(GENmodel *inModel, CKTcircuit *ckt) |
|
|
|
XQbcx_Vbcx, XQbep_Vbep, XQbep_Vbci, |
|
|
|
XQbcp_Vbcp, XQbeo_Vbe, XQbco_Vbc; |
|
|
|
|
|
|
|
double Ibe_Vrth, Ibex_Vrth, Itzf_Vrth=0.0, Itzr_Vrth, Ibc_Vrth, Ibep_Vrth, |
|
|
|
double Ibe_Vrth, Ibex_Vrth, Iciei_Vrth, Iciei_Vxf2, Ibc_Vrth, Ibep_Vrth, |
|
|
|
Ircx_Vrth, Irci_Vrth, Irbx_Vrth, Irbi_Vrth, Ire_Vrth, Irbp_Vrth, |
|
|
|
Ibcp_Vrth, Iccp_Vrth, Irs_Vrth, Irth_Vrth, Ith_Vrth, |
|
|
|
Ith_Vbei, Ith_Vbci, Ith_Vcei, Ith_Vbex, Ith_Vbep, Ith_Vbcp, Ith_Vcep, |
|
|
|
@ -40,8 +40,20 @@ VBICacLoad(GENmodel *inModel, CKTcircuit *ckt) |
|
|
|
double XQcth_Vrth, XQbe_Vrth, XQbex_Vrth, XQbc_Vrth, XQbcx_Vrth, XQbep_Vrth, XQbcp_Vrth; |
|
|
|
|
|
|
|
//NQS |
|
|
|
double Itxf_Vrxf, Ibc_Vrxf, Ith_Vrxf, Ixzf_Vrth, Ixxf_Vrxf, XQcxf_Vcxf; |
|
|
|
double Ixzf_Vbei, Ixzf_Vbci, Xl; |
|
|
|
double XQxf1_Vxf1; |
|
|
|
double XQxf2_Vxf2; |
|
|
|
|
|
|
|
double Ixf1_Vbei; |
|
|
|
double Ixf1_Vbci; |
|
|
|
double Ixf1_Vxf2; |
|
|
|
double Ixf1_Vxf1; |
|
|
|
double Ixf1_Vrth; |
|
|
|
|
|
|
|
double Ixf2_Vbei; |
|
|
|
double Ixf2_Vbci; |
|
|
|
double Ixf2_Vxf2; |
|
|
|
double Ixf2_Vxf1; |
|
|
|
double Ixf2_Vrth; |
|
|
|
|
|
|
|
/* loop through all the models */ |
|
|
|
for( ; model != NULL; model = VBICnextModel(model)) { |
|
|
|
@ -50,32 +62,44 @@ VBICacLoad(GENmodel *inModel, CKTcircuit *ckt) |
|
|
|
for( here = VBICinstances(model); here!= NULL; |
|
|
|
here = VBICnextInstance(here)) { |
|
|
|
|
|
|
|
Ibe_Vbei = *(ckt->CKTstate0 + here->VBICibe_Vbei); |
|
|
|
Ibex_Vbex = *(ckt->CKTstate0 + here->VBICibex_Vbex); |
|
|
|
Itzf_Vbei = *(ckt->CKTstate0 + here->VBICitzf_Vbei); |
|
|
|
Itzf_Vbci = *(ckt->CKTstate0 + here->VBICitzf_Vbci); |
|
|
|
Itzr_Vbci = *(ckt->CKTstate0 + here->VBICitzr_Vbci); |
|
|
|
Itzr_Vbei = *(ckt->CKTstate0 + here->VBICitzr_Vbei); |
|
|
|
Ibc_Vbci = *(ckt->CKTstate0 + here->VBICibc_Vbci); |
|
|
|
Ibc_Vbei = *(ckt->CKTstate0 + here->VBICibc_Vbei); |
|
|
|
Ibep_Vbep = *(ckt->CKTstate0 + here->VBICibep_Vbep); |
|
|
|
Irci_Vrci = *(ckt->CKTstate0 + here->VBICirci_Vrci); |
|
|
|
Irci_Vbci = *(ckt->CKTstate0 + here->VBICirci_Vbci); |
|
|
|
Irci_Vbcx = *(ckt->CKTstate0 + here->VBICirci_Vbcx); |
|
|
|
Irbi_Vrbi = *(ckt->CKTstate0 + here->VBICirbi_Vrbi); |
|
|
|
Irbi_Vbei = *(ckt->CKTstate0 + here->VBICirbi_Vbei); |
|
|
|
Irbi_Vbci = *(ckt->CKTstate0 + here->VBICirbi_Vbci); |
|
|
|
Irbp_Vrbp = *(ckt->CKTstate0 + here->VBICirbp_Vrbp); |
|
|
|
Irbp_Vbep = *(ckt->CKTstate0 + here->VBICirbp_Vbep); |
|
|
|
Irbp_Vbci = *(ckt->CKTstate0 + here->VBICirbp_Vbci); |
|
|
|
Ibcp_Vbcp = *(ckt->CKTstate0 + here->VBICibcp_Vbcp); |
|
|
|
Iccp_Vbep = *(ckt->CKTstate0 + here->VBICiccp_Vbep); |
|
|
|
Iccp_Vbci = *(ckt->CKTstate0 + here->VBICiccp_Vbci); |
|
|
|
Iccp_Vbcp = *(ckt->CKTstate0 + here->VBICiccp_Vbcp); |
|
|
|
Ircx_Vrcx = *(ckt->CKTstate0 + here->VBICircx_Vrcx); |
|
|
|
Irbx_Vrbx = *(ckt->CKTstate0 + here->VBICirbx_Vrbx); |
|
|
|
Irs_Vrs = *(ckt->CKTstate0 + here->VBICirs_Vrs); |
|
|
|
Ire_Vre = *(ckt->CKTstate0 + here->VBICire_Vre); |
|
|
|
Ibe_Vbei = *(ckt->CKTstate0 + here->VBICibe_Vbei); |
|
|
|
Ibex_Vbex = *(ckt->CKTstate0 + here->VBICibex_Vbex); |
|
|
|
Iciei_Vbei = *(ckt->CKTstate0 + here->VBICiciei_Vbei); |
|
|
|
Iciei_Vbci = *(ckt->CKTstate0 + here->VBICiciei_Vbci); |
|
|
|
Iciei_Vrth = *(ckt->CKTstate0 + here->VBICiciei_Vrth); |
|
|
|
Iciei_Vxf2 = *(ckt->CKTstate0 + here->VBICiciei_Vxf2); |
|
|
|
Ibc_Vbci = *(ckt->CKTstate0 + here->VBICibc_Vbci); |
|
|
|
Ibc_Vbei = *(ckt->CKTstate0 + here->VBICibc_Vbei); |
|
|
|
Ibep_Vbep = *(ckt->CKTstate0 + here->VBICibep_Vbep); |
|
|
|
Irci_Vrci = *(ckt->CKTstate0 + here->VBICirci_Vrci); |
|
|
|
Irci_Vbci = *(ckt->CKTstate0 + here->VBICirci_Vbci); |
|
|
|
Irci_Vbcx = *(ckt->CKTstate0 + here->VBICirci_Vbcx); |
|
|
|
Irbi_Vrbi = *(ckt->CKTstate0 + here->VBICirbi_Vrbi); |
|
|
|
Irbi_Vbei = *(ckt->CKTstate0 + here->VBICirbi_Vbei); |
|
|
|
Irbi_Vbci = *(ckt->CKTstate0 + here->VBICirbi_Vbci); |
|
|
|
Irbp_Vrbp = *(ckt->CKTstate0 + here->VBICirbp_Vrbp); |
|
|
|
Irbp_Vbep = *(ckt->CKTstate0 + here->VBICirbp_Vbep); |
|
|
|
Irbp_Vbci = *(ckt->CKTstate0 + here->VBICirbp_Vbci); |
|
|
|
Ibcp_Vbcp = *(ckt->CKTstate0 + here->VBICibcp_Vbcp); |
|
|
|
Iccp_Vbep = *(ckt->CKTstate0 + here->VBICiccp_Vbep); |
|
|
|
Iccp_Vbci = *(ckt->CKTstate0 + here->VBICiccp_Vbci); |
|
|
|
Iccp_Vbcp = *(ckt->CKTstate0 + here->VBICiccp_Vbcp); |
|
|
|
Ircx_Vrcx = *(ckt->CKTstate0 + here->VBICircx_Vrcx); |
|
|
|
Irbx_Vrbx = *(ckt->CKTstate0 + here->VBICirbx_Vrbx); |
|
|
|
Irs_Vrs = *(ckt->CKTstate0 + here->VBICirs_Vrs); |
|
|
|
Ire_Vre = *(ckt->CKTstate0 + here->VBICire_Vre); |
|
|
|
|
|
|
|
Ixf1_Vbei = *(ckt->CKTstate0 + here->VBICixf1_Vbei); |
|
|
|
Ixf1_Vbci = *(ckt->CKTstate0 + here->VBICixf1_Vbci); |
|
|
|
Ixf1_Vxf2 = *(ckt->CKTstate0 + here->VBICixf1_Vxf2); |
|
|
|
Ixf1_Vxf1 = *(ckt->CKTstate0 + here->VBICixf1_Vxf1); |
|
|
|
Ixf1_Vrth = *(ckt->CKTstate0 + here->VBICixf1_Vrth); |
|
|
|
|
|
|
|
Ixf2_Vbei = *(ckt->CKTstate0 + here->VBICixf2_Vbei); |
|
|
|
Ixf2_Vbci = *(ckt->CKTstate0 + here->VBICixf2_Vbci); |
|
|
|
Ixf2_Vxf2 = *(ckt->CKTstate0 + here->VBICixf2_Vxf2); |
|
|
|
Ixf2_Vxf1 = *(ckt->CKTstate0 + here->VBICixf2_Vxf1); |
|
|
|
Ixf2_Vrth = *(ckt->CKTstate0 + here->VBICixf2_Vrth); |
|
|
|
|
|
|
|
/* |
|
|
|
c The real part |
|
|
|
@ -94,31 +118,21 @@ c Stamp element: Ibex |
|
|
|
*(here->VBICbaseBXEmitEIPtr) += -Ibex_Vbex; |
|
|
|
*(here->VBICemitEIBaseBXPtr) += -Ibex_Vbex; |
|
|
|
*(here->VBICemitEIEmitEIPtr) += Ibex_Vbex; |
|
|
|
|
|
|
|
if (!here->VBIC_excessPhase) { |
|
|
|
/* |
|
|
|
c Stamp element: Itzf |
|
|
|
*/ |
|
|
|
*(here->VBICcollCIBaseBIPtr) += Itzf_Vbei; |
|
|
|
*(here->VBICcollCIEmitEIPtr) += -Itzf_Vbei; |
|
|
|
*(here->VBICcollCIBaseBIPtr) += Itzf_Vbci; |
|
|
|
*(here->VBICcollCICollCIPtr) += -Itzf_Vbci; |
|
|
|
*(here->VBICemitEIBaseBIPtr) += -Itzf_Vbei; |
|
|
|
*(here->VBICemitEIEmitEIPtr) += Itzf_Vbei; |
|
|
|
*(here->VBICemitEIBaseBIPtr) += -Itzf_Vbci; |
|
|
|
*(here->VBICemitEICollCIPtr) += Itzf_Vbci; |
|
|
|
} |
|
|
|
/* |
|
|
|
c Stamp element: Itzr |
|
|
|
c Stamp element: Iciei |
|
|
|
*/ |
|
|
|
*(here->VBICemitEIBaseBIPtr) += Itzr_Vbei; |
|
|
|
*(here->VBICemitEIEmitEIPtr) += -Itzr_Vbei; |
|
|
|
*(here->VBICemitEIBaseBIPtr) += Itzr_Vbci; |
|
|
|
*(here->VBICemitEICollCIPtr) += -Itzr_Vbci; |
|
|
|
*(here->VBICcollCIBaseBIPtr) += -Itzr_Vbei; |
|
|
|
*(here->VBICcollCIEmitEIPtr) += Itzr_Vbei; |
|
|
|
*(here->VBICcollCIBaseBIPtr) += -Itzr_Vbci; |
|
|
|
*(here->VBICcollCICollCIPtr) += Itzr_Vbci; |
|
|
|
*(here->VBICcollCIBaseBIPtr) += Iciei_Vbei; |
|
|
|
*(here->VBICcollCIEmitEIPtr) += -Iciei_Vbei; |
|
|
|
*(here->VBICcollCIBaseBIPtr) += Iciei_Vbci; |
|
|
|
*(here->VBICcollCICollCIPtr) += -Iciei_Vbci; |
|
|
|
*(here->VBICemitEIBaseBIPtr) += -Iciei_Vbei; |
|
|
|
*(here->VBICemitEIEmitEIPtr) += Iciei_Vbei; |
|
|
|
*(here->VBICemitEIBaseBIPtr) += -Iciei_Vbci; |
|
|
|
*(here->VBICemitEICollCIPtr) += Iciei_Vbci; |
|
|
|
if (here->VBIC_excessPhase) { |
|
|
|
*(here->VBICcollCIXf2Ptr) += Iciei_Vxf2; |
|
|
|
*(here->VBICemitEIXf2Ptr) += -Iciei_Vxf2; |
|
|
|
} |
|
|
|
/* |
|
|
|
c Stamp element: Ibc |
|
|
|
*/ |
|
|
|
@ -145,7 +159,7 @@ c Stamp element: Rcx |
|
|
|
*(here->VBICcollCXCollPtr) += -Ircx_Vrcx; |
|
|
|
*(here->VBICcollCollCXPtr) += -Ircx_Vrcx; |
|
|
|
/* |
|
|
|
c Stamp element: Irci |
|
|
|
c Stamp element: Rci |
|
|
|
*/ |
|
|
|
*(here->VBICcollCXCollCXPtr) += Irci_Vrci; |
|
|
|
*(here->VBICcollCXCollCIPtr) += -Irci_Vrci; |
|
|
|
@ -167,7 +181,7 @@ c Stamp element: Rbx |
|
|
|
*(here->VBICbaseBXBasePtr) += -Irbx_Vrbx; |
|
|
|
*(here->VBICbaseBaseBXPtr) += -Irbx_Vrbx; |
|
|
|
/* |
|
|
|
c Stamp element: Irbi |
|
|
|
c Stamp element: Rbi |
|
|
|
*/ |
|
|
|
*(here->VBICbaseBXBaseBXPtr) += Irbi_Vrbi; |
|
|
|
*(here->VBICbaseBXBaseBIPtr) += -Irbi_Vrbi; |
|
|
|
@ -189,7 +203,7 @@ c Stamp element: Re |
|
|
|
*(here->VBICemitEIEmitPtr) += -Ire_Vre; |
|
|
|
*(here->VBICemitEmitEIPtr) += -Ire_Vre; |
|
|
|
/* |
|
|
|
c Stamp element: Irbp |
|
|
|
c Stamp element: Rbp |
|
|
|
*/ |
|
|
|
*(here->VBICbaseBPBaseBPPtr) += Irbp_Vrbp; |
|
|
|
*(here->VBICbaseBPCollCXPtr) += -Irbp_Vrbp; |
|
|
|
@ -237,9 +251,7 @@ c Stamp element: Rs |
|
|
|
|
|
|
|
Ibe_Vrth = here->VBICibe_Vrth; |
|
|
|
Ibex_Vrth = here->VBICibex_Vrth; |
|
|
|
if (!here->VBIC_excessPhase) |
|
|
|
Itzf_Vrth = here->VBICitzf_vrth; |
|
|
|
Itzr_Vrth = here->VBICitzr_Vrth; |
|
|
|
Iciei_Vrth = here->VBICiciei_Vrth; |
|
|
|
Ibc_Vrth = here->VBICibc_Vrth; |
|
|
|
Ibep_Vrth = here->VBICibep_Vrth; |
|
|
|
Ircx_Vrth = here->VBICircx_Vrth; |
|
|
|
@ -279,19 +291,11 @@ c Stamp element: Ibex |
|
|
|
*/ |
|
|
|
*(here->VBICbaseBXtempPtr) += Ibex_Vrth; |
|
|
|
*(here->VBICemitEItempPtr) += -Ibex_Vrth; |
|
|
|
|
|
|
|
if (!here->VBIC_excessPhase) { |
|
|
|
/* |
|
|
|
c Stamp element: Itzf |
|
|
|
*/ |
|
|
|
*(here->VBICcollCItempPtr) += Itzf_Vrth; |
|
|
|
*(here->VBICemitEItempPtr) += -Itzf_Vrth; |
|
|
|
} |
|
|
|
/* |
|
|
|
c Stamp element: Itzr |
|
|
|
c Stamp element: Iciei |
|
|
|
*/ |
|
|
|
*(here->VBICemitEItempPtr) += Itzr_Vrth; |
|
|
|
*(here->VBICcollCItempPtr) += -Itzr_Vrth; |
|
|
|
*(here->VBICcollCItempPtr) += Iciei_Vrth; |
|
|
|
*(here->VBICemitEItempPtr) += -Iciei_Vrth; |
|
|
|
/* |
|
|
|
c Stamp element: Ibc |
|
|
|
*/ |
|
|
|
@ -386,44 +390,22 @@ c Stamp element: Ith |
|
|
|
*(here->VBICtempEmitEIPtr) += +Ith_Vre; |
|
|
|
*(here->VBICtempSubsPtr) += -Ith_Vrs; |
|
|
|
*(here->VBICtempSubsSIPtr) += +Ith_Vrs; |
|
|
|
if (here->VBIC_excessPhase) { |
|
|
|
Ith_Vrxf = *(ckt->CKTstate0 + here->VBICith_Vrxf); |
|
|
|
*(here->VBICtempXf2Ptr) += +Ith_Vrxf; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
if (here->VBIC_excessPhase) { |
|
|
|
Itxf_Vrxf = *(ckt->CKTstate0 + here->VBICitxf_Vrxf); |
|
|
|
Ibc_Vrxf = *(ckt->CKTstate0 + here->VBICibc_Vrxf); |
|
|
|
Ixzf_Vbei = *(ckt->CKTstate0 + here->VBICixzf_Vbei); |
|
|
|
Ixzf_Vbci = *(ckt->CKTstate0 + here->VBICixzf_Vbci); |
|
|
|
Ixxf_Vrxf = *(ckt->CKTstate0 + here->VBICixxf_Vrxf); |
|
|
|
/* |
|
|
|
c Stamp element: Itxf |
|
|
|
*/ |
|
|
|
*(here->VBICcollCIXf2Ptr) += Itxf_Vrxf; |
|
|
|
*(here->VBICemitEIXf2Ptr) += -Itxf_Vrxf; |
|
|
|
/* |
|
|
|
c Stamp element: Ibc |
|
|
|
*/ |
|
|
|
*(here->VBICbaseBIXf2Ptr) += Ibc_Vrxf; |
|
|
|
*(here->VBICcollCIXf2Ptr) += -Ibc_Vrxf; |
|
|
|
/* |
|
|
|
c Stamp element: Ixzf, Branch: xf1-ground |
|
|
|
*/ |
|
|
|
*(here->VBICxf1BaseBIPtr) += +Ixzf_Vbei; |
|
|
|
*(here->VBICxf1EmitEIPtr) += -Ixzf_Vbei; |
|
|
|
*(here->VBICxf1BaseBIPtr) += +Ixzf_Vbci; |
|
|
|
*(here->VBICxf1CollCIPtr) += -Ixzf_Vbci; |
|
|
|
if (here->VBIC_selfheat) { |
|
|
|
Ixzf_Vrth = *(ckt->CKTstate0 + here->VBICixzf_Vrth); |
|
|
|
*(here->VBICxf1TempPtr) += Ixzf_Vrth; |
|
|
|
} |
|
|
|
/* |
|
|
|
c Stamp element: Ixxf, Branch: xf2-ground |
|
|
|
*/ |
|
|
|
*(here->VBICxf2Xf2Ptr) += +Ixxf_Vrxf; |
|
|
|
|
|
|
|
//Ixf1 |
|
|
|
*(here->VBICxf1BaseBIPtr) += +Ixf1_Vbei; |
|
|
|
*(here->VBICxf1EmitEIPtr) += -Ixf1_Vbei; |
|
|
|
*(here->VBICxf1BaseBIPtr) += +Ixf1_Vbci; |
|
|
|
*(here->VBICxf1CollCIPtr) += -Ixf1_Vbci; |
|
|
|
*(here->VBICxf1Xf2Ptr) += +Ixf1_Vxf2; |
|
|
|
*(here->VBICxf1Xf1Ptr) += +Ixf1_Vxf1; |
|
|
|
//Ixf2 |
|
|
|
*(here->VBICxf2BaseBIPtr) += +Ixf2_Vbei; |
|
|
|
*(here->VBICxf2EmitEIPtr) += -Ixf2_Vbei; |
|
|
|
*(here->VBICxf2BaseBIPtr) += +Ixf2_Vbci; |
|
|
|
*(here->VBICxf2CollCIPtr) += -Ixf2_Vbci; |
|
|
|
*(here->VBICxf2Xf2Ptr) += +Ixf2_Vxf2; |
|
|
|
*(here->VBICxf2Xf1Ptr) += +Ixf2_Vxf1; |
|
|
|
} |
|
|
|
|
|
|
|
/* |
|
|
|
@ -439,6 +421,8 @@ c The complex part |
|
|
|
XQbcp_Vbcp = *(ckt->CKTstate0 + here->VBICcqbcp) * ckt->CKTomega; |
|
|
|
XQbeo_Vbe = *(ckt->CKTstate0 + here->VBICcqbeo) * ckt->CKTomega; |
|
|
|
XQbco_Vbc = *(ckt->CKTstate0 + here->VBICcqbco) * ckt->CKTomega; |
|
|
|
XQxf1_Vxf1 = *(ckt->CKTstate0 + here->VBICcqxf1) * ckt->CKTomega; |
|
|
|
XQxf2_Vxf2 = *(ckt->CKTstate0 + here->VBICcqxf2) * ckt->CKTomega; |
|
|
|
/* |
|
|
|
c Stamp element: Qbe |
|
|
|
*/ |
|
|
|
@ -504,6 +488,13 @@ c Stamp element: Qbco |
|
|
|
*(here->VBICbaseCollPtr + 1) += -XQbco_Vbc; |
|
|
|
*(here->VBICcollBasePtr + 1) += -XQbco_Vbc; |
|
|
|
|
|
|
|
if (here->VBIC_excessPhase) { |
|
|
|
//Qxf1 |
|
|
|
*(here->VBICxf1Xf1Ptr + 1) += +XQxf1_Vxf1; |
|
|
|
//Qxf2 |
|
|
|
*(here->VBICxf2Xf2Ptr + 1) += +XQxf2_Vxf2; |
|
|
|
} |
|
|
|
|
|
|
|
if (here->VBIC_selfheat) { |
|
|
|
XQcth_Vrth = here->VBICcapcth * ckt->CKTomega; |
|
|
|
XQbe_Vrth = here->VBICcapqbeth * ckt->CKTomega; |
|
|
|
@ -527,24 +518,12 @@ c Stamp element: Qbco |
|
|
|
*(here->VBICbaseBPtempPtr + 1) += -XQbep_Vrth; |
|
|
|
*(here->VBICsubsSItempPtr + 1) += XQbcp_Vrth; |
|
|
|
*(here->VBICbaseBPtempPtr + 1) += -XQbcp_Vrth; |
|
|
|
} |
|
|
|
if (here->VBIC_excessPhase) { |
|
|
|
/* |
|
|
|
c Stamp element: Qcxf |
|
|
|
*/ |
|
|
|
XQcxf_Vcxf = here->VBICcapQcxf * ckt->CKTomega; |
|
|
|
*(here->VBICxf1Xf1Ptr + 1) += XQcxf_Vcxf; |
|
|
|
/* |
|
|
|
c Stamp element: L = TD/3 |
|
|
|
*/ |
|
|
|
Xl = here->VBICindInduct * ckt->CKTomega; |
|
|
|
|
|
|
|
*(here->VBICxf1IbrPtr) += 1; |
|
|
|
*(here->VBICxf2IbrPtr) -= 1; |
|
|
|
*(here->VBICibrXf1Ptr) += 1; |
|
|
|
*(here->VBICibrXf2Ptr) -= 1; |
|
|
|
*(here->VBICibrIbrPtr + 1) -= Xl; |
|
|
|
|
|
|
|
if (here->VBIC_excessPhase) { |
|
|
|
// Stamp element: Ixf1 f_xf1 = + |
|
|
|
*(here->VBICxf1TempPtr) += Ixf1_Vrth; |
|
|
|
// Stamp element: Ixf2 f_xf2 = + |
|
|
|
*(here->VBICxf2TempPtr) += Ixf2_Vrth; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
|