Xyce  6.1
Xyce::Device::BJT Namespace Reference

Classes

class  bjtInstanceSensitivity
 general sensitivity functor for all instance params. More...
 
class  bjtModelSensitivity
 general sensitivity functor for all model params. More...
 
class  Instance
 
class  Master
 
class  Model
 
struct  Traits
 

Typedefs

typedef Sacado::Fad::SFad< double, 1 > fadType
 

Functions

template<typename ScalarT >
ScalarT Xycemax (ScalarT f1, ScalarT f2)
 
template<typename ScalarT >
ScalarT Xycemin (ScalarT f1, ScalarT f2)
 
template<typename ScalarT >
bool updateTemperature ( const ScalarT &TEMP, const ScalarT &TNOM, const ScalarT &energyGap, const ScalarT &tempExpIS, const ScalarT &betaExp, const ScalarT &potBE, const ScalarT &depCapBE, const ScalarT &juncExpBE, const ScalarT &depCapBC, const ScalarT &juncExpBC, const ScalarT &depCapCoeff, const ScalarT &satCur, const ScalarT &betaF, const ScalarT &betaR, const ScalarT &c2, const ScalarT &c4, bool c2Given, bool c4Given, bool leakBECurrentGiven, bool leakBCCurrentGiven, const ScalarT &leakBEEmissionCoeff, const ScalarT &leakBCEmissionCoeff, const ScalarT &rollOffExp, const ScalarT &baseResist, const ScalarT &collectorResist, const ScalarT &emitterResist, const ScalarT &potBC, const ScalarT &rollOffF, const ScalarT &rollOffR, const ScalarT &earlyVoltF, const ScalarT &earlyVoltR, ScalarT &vt, ScalarT &leakBECurrent, ScalarT &leakBCCurrent, ScalarT &tBELeakCur, ScalarT &tBCLeakCur, ScalarT &tleakBEEmissionCoeff, ScalarT &tleakBCEmissionCoeff, ScalarT &tRollOffExp, ScalarT &tInvRollOffF, ScalarT &tInvRollOffR, ScalarT &tBaseResist, ScalarT &tCollectorResist, ScalarT &tEmitterResist, ScalarT &tBECap, ScalarT &tBEPot, ScalarT &tBCCap, ScalarT &tBCPot, ScalarT &tDepCap, ScalarT &tF1, ScalarT &tF4, ScalarT &tF5, ScalarT &tVCrit, ScalarT &tSatCur, ScalarT &tBetaF, ScalarT &tBetaR, ScalarT &tInvEarlyVoltF, ScalarT &tInvEarlyVoltR)
 
template<typename ScalarT >
bool processParams (bool leakBECurrentGiven, bool leakBCCurrentGiven, bool c2Given, bool c4Given, bool minBaseResistGiven, bool VAFgiven, bool IKFgiven, bool VARgiven, bool IKRgiven, bool VTFgiven, bool FCgiven, const ScalarT &c2, const ScalarT &c4, const ScalarT &satCur, const ScalarT &baseResist, const ScalarT &earlyVoltF, const ScalarT &rollOffF, const ScalarT &earlyVoltR, const ScalarT &rollOffR, const ScalarT &collectorResist, const ScalarT &emitterResist, const ScalarT &transTimeFVBC, const ScalarT &excessPhase, const ScalarT &transTimeF, const ScalarT &juncExpBE, const ScalarT &juncExpBC, ScalarT &leakBECurrent, ScalarT &leakBCCurrent, ScalarT &minBaseResist, ScalarT &invEarlyVoltF, ScalarT &invRollOffF, ScalarT &invEarlyVoltR, ScalarT &invRollOffR, ScalarT &collectorConduct, ScalarT &emitterConduct, ScalarT &transTimeVBCFac, ScalarT &excessPhaseFac, ScalarT &depCapCoeff, ScalarT &f2, ScalarT &f3, ScalarT &f6, ScalarT &f7)
 
template<typename ScalarT >
void oldDAEExcessPhaseCalculation1 (const ScalarT &td, const ScalarT &qB, const ScalarT &iBE, bool dcopFlag, bool beginIntegrationFlag, double *currStaVec, double *lastStaVec, const int li_istateCEXBC)
 
template<>
void oldDAEExcessPhaseCalculation1 (const fadType &td, const fadType &qB, const fadType &iBE, bool dcopFlag, bool beginIntegrationFlag, double *currStaVec, double *lastStaVec, const int li_istateCEXBC)
 
template<>
void oldDAEExcessPhaseCalculation1 (const double &td, const double &qB, const double &iBE, bool dcopFlag, bool beginIntegrationFlag, double *currStaVec, double *lastStaVec, const int li_istateCEXBC)
 
template<typename ScalarT >
void oldDAEExcessPhaseCalculation2 (const ScalarT &td, const ScalarT &qB, const ScalarT &iBE, const ScalarT &gBE, const double dt0, const double dt1, bool dcopFlag, bool beginIntegrationFlag, double *nextStaVec, const double *currStaVec, const double *lastStaVec, const int li_istateCEXBC, ScalarT &iEX, ScalarT &gEX, ScalarT &iC_local)
 
template<>
void oldDAEExcessPhaseCalculation2 (const fadType &td, const fadType &qB, const fadType &iBE, const fadType &gBE, const double dt0, const double dt1, bool dcopFlag, bool beginIntegrationFlag, double *nextStaVec, const double *currStaVec, const double *lastStaVec, const int li_istateCEXBC, fadType &iEX, fadType &gEX, fadType &iC_local)
 
template<>
void oldDAEExcessPhaseCalculation2 (const double &td, const double &qB, const double &iBE, const double &gBE, const double dt0, const double dt1, bool dcopFlag, bool beginIntegrationFlag, double *nextStaVec, const double *currStaVec, const double *lastStaVec, const int li_istateCEXBC, double &iEX, double &gEX, double &iC_local)
 
template<typename ScalarT >
void auxDAECalculations (const ScalarT &i_fx, const ScalarT &td, const ScalarT &iBE, const ScalarT &iBEleak, const ScalarT &iBC, const ScalarT &iBCleak, const ScalarT &qB, const ScalarT &invqB, const ScalarT &tBetaF, const ScalarT &tBetaR, const ScalarT &gBC, const ScalarT &gBE, const ScalarT &dqBdvBp, const ScalarT &dqBdvCp, const ScalarT &dqBdvEp, bool dcopFlag, ScalarT &iCE, ScalarT &iC, ScalarT &iB, ScalarT &iE, ScalarT &diCEdvBp, ScalarT &diCEdvCp, ScalarT &diCEdvEp, ScalarT &diBEdvBp, ScalarT &diBEdvCp, ScalarT &diBEdvEp)
 
template<typename ScalarT >
bool updateIntermediateVars (const ScalarT &vBE, const ScalarT &vBC, const ScalarT &vBX, const ScalarT &vCS, const ScalarT &i_fx, const ScalarT &AREA, const ScalarT &tSatCur, const ScalarT &vt, const ScalarT &tleakBEEmissionCoeff, const ScalarT &tleakBCEmissionCoeff, const ScalarT &tBELeakCur, const ScalarT &tBCLeakCur, const ScalarT &tInvRollOffF, const ScalarT &tInvRollOffR, const ScalarT &tRollOffExp, const ScalarT &tInvEarlyVoltF, const ScalarT &tInvEarlyVoltR, const ScalarT &tBECap, const ScalarT &tBCCap, const ScalarT &tDepCap, const ScalarT &tBEPot, const ScalarT &tBCPot, const ScalarT &tF1, const ScalarT &tF4, const ScalarT &tF5, const double &gmin, const bool newExcessPhase, const bool dcopFlag, const bool tranopFlag, const bool acopFlag, const bool initTranFlag, const bool beginIntegrationFlag, const int newtonIter, const double pdt, const ScalarT &emissionCoeffF, const ScalarT &emissionCoeffR, const ScalarT &baseFracBCCap, const ScalarT &CJS, const ScalarT &depCapCoeff, const ScalarT &potBC, const ScalarT &transTimeF, const ScalarT &transTimeR, const ScalarT &transTimeBiasCoeffF, const ScalarT &transTimeVBCFac, const ScalarT &transTimeHighCurrF, const ScalarT &juncExpBE, const ScalarT &juncExpBC, const ScalarT &potSubst, const ScalarT &expSubst, const ScalarT &emitterConduct, const ScalarT &collectorConduct, const ScalarT &minBaseResist, const ScalarT &baseResist, const ScalarT &baseCurrHalfResist, const ScalarT &excessPhaseFac, const ScalarT &f2, const ScalarT &f3, const ScalarT &f6, const ScalarT &f7, const int level, double *nextStaVec, double *currStaVec, double *lastStaVec, const int li_istateCEXBC, const double dt0, const double dt1, ScalarT &iB, ScalarT &iC, ScalarT &iE, ScalarT &iBE, ScalarT &gBE, ScalarT &iBC, ScalarT &gBC, ScalarT &iCE, ScalarT &iBEleak, ScalarT &gBEleak, ScalarT &iBCleak, ScalarT &gBCleak, ScalarT &qB, ScalarT &invqB, ScalarT &iBEhighCurr, ScalarT &gBEhighCurr, ScalarT &capeqCB, ScalarT &geqCB, ScalarT &qBEdep, ScalarT &capBEdep, ScalarT &qBEdiff, ScalarT &capBEdiff, ScalarT &qBCdep, ScalarT &capBCdep, ScalarT &qBCdiff, ScalarT &capBCdiff, ScalarT &qBX, ScalarT &capBX, ScalarT &qCS, ScalarT &capCS, ScalarT &gEpr, ScalarT &gCpr, ScalarT &gX, ScalarT &diBrdvB, ScalarT &diBrdvCp, ScalarT &diBrdvEp, ScalarT &diBrdvBp, ScalarT &diCEdvEp, ScalarT &diCEdvCp, ScalarT &diCEdvBp, ScalarT &diBEdvBp, ScalarT &diBEdvCp, ScalarT &diBEdvEp, ScalarT &gBEtot, ScalarT &gBCtot, ScalarT &tBetaF, ScalarT &tBetaR)
 
void registerDevice ()
 

Variables

static bjtInstanceSensitivity bjtInstanceSens
 
static bjtModelSensitivity bjtModelSens
 

Typedef Documentation

typedef Sacado::Fad::SFad<double, 1> Xyce::Device::BJT::fadType

Definition at line 65 of file N_DEV_BJT.h.

Function Documentation

template<typename ScalarT >
void Xyce::Device::BJT::auxDAECalculations ( const ScalarT &  i_fx,
const ScalarT &  td,
const ScalarT &  iBE,
const ScalarT &  iBEleak,
const ScalarT &  iBC,
const ScalarT &  iBCleak,
const ScalarT &  qB,
const ScalarT &  invqB,
const ScalarT &  tBetaF,
const ScalarT &  tBetaR,
const ScalarT &  gBC,
const ScalarT &  gBE,
const ScalarT &  dqBdvBp,
const ScalarT &  dqBdvCp,
const ScalarT &  dqBdvEp,
bool  dcopFlag,
ScalarT &  iCE,
ScalarT &  iC,
ScalarT &  iB,
ScalarT &  iE,
ScalarT &  diCEdvBp,
ScalarT &  diCEdvCp,
ScalarT &  diCEdvEp,
ScalarT &  diBEdvBp,
ScalarT &  diBEdvCp,
ScalarT &  diBEdvEp 
)

Definition at line 5279 of file N_DEV_BJT.C.

template<typename ScalarT >
void Xyce::Device::BJT::oldDAEExcessPhaseCalculation1 ( const ScalarT &  td,
const ScalarT &  qB,
const ScalarT &  iBE,
bool  dcopFlag,
bool  beginIntegrationFlag,
double *  currStaVec,
double *  lastStaVec,
const int  li_istateCEXBC 
)

Definition at line 263 of file N_DEV_BJT.h.

template<>
void Xyce::Device::BJT::oldDAEExcessPhaseCalculation1 ( const fadType td,
const fadType qB,
const fadType iBE,
bool  dcopFlag,
bool  beginIntegrationFlag,
double *  currStaVec,
double *  lastStaVec,
const int  li_istateCEXBC 
)

Definition at line 5053 of file N_DEV_BJT.C.

template<>
void Xyce::Device::BJT::oldDAEExcessPhaseCalculation1 ( const double &  td,
const double &  qB,
const double &  iBE,
bool  dcopFlag,
bool  beginIntegrationFlag,
double *  currStaVec,
double *  lastStaVec,
const int  li_istateCEXBC 
)

Definition at line 5085 of file N_DEV_BJT.C.

template<typename ScalarT >
void Xyce::Device::BJT::oldDAEExcessPhaseCalculation2 ( const ScalarT &  td,
const ScalarT &  qB,
const ScalarT &  iBE,
const ScalarT &  gBE,
const double  dt0,
const double  dt1,
bool  dcopFlag,
bool  beginIntegrationFlag,
double *  nextStaVec,
const double *  currStaVec,
const double *  lastStaVec,
const int  li_istateCEXBC,
ScalarT &  iEX,
ScalarT &  gEX,
ScalarT &  iC_local 
)

Definition at line 302 of file N_DEV_BJT.h.

template<>
void Xyce::Device::BJT::oldDAEExcessPhaseCalculation2 ( const fadType td,
const fadType qB,
const fadType iBE,
const fadType gBE,
const double  dt0,
const double  dt1,
bool  dcopFlag,
bool  beginIntegrationFlag,
double *  nextStaVec,
const double *  currStaVec,
const double *  lastStaVec,
const int  li_istateCEXBC,
fadType iEX,
fadType gEX,
fadType iC_local 
)

Definition at line 5121 of file N_DEV_BJT.C.

template<>
void Xyce::Device::BJT::oldDAEExcessPhaseCalculation2 ( const double &  td,
const double &  qB,
const double &  iBE,
const double &  gBE,
const double  dt0,
const double  dt1,
bool  dcopFlag,
bool  beginIntegrationFlag,
double *  nextStaVec,
const double *  currStaVec,
const double *  lastStaVec,
const int  li_istateCEXBC,
double &  iEX,
double &  gEX,
double &  iC_local 
)

Definition at line 5202 of file N_DEV_BJT.C.

template<typename ScalarT >
bool Xyce::Device::BJT::processParams ( bool  leakBECurrentGiven,
bool  leakBCCurrentGiven,
bool  c2Given,
bool  c4Given,
bool  minBaseResistGiven,
bool  VAFgiven,
bool  IKFgiven,
bool  VARgiven,
bool  IKRgiven,
bool  VTFgiven,
bool  FCgiven,
const ScalarT &  c2,
const ScalarT &  c4,
const ScalarT &  satCur,
const ScalarT &  baseResist,
const ScalarT &  earlyVoltF,
const ScalarT &  rollOffF,
const ScalarT &  earlyVoltR,
const ScalarT &  rollOffR,
const ScalarT &  collectorResist,
const ScalarT &  emitterResist,
const ScalarT &  transTimeFVBC,
const ScalarT &  excessPhase,
const ScalarT &  transTimeF,
const ScalarT &  juncExpBE,
const ScalarT &  juncExpBC,
ScalarT &  leakBECurrent,
ScalarT &  leakBCCurrent,
ScalarT &  minBaseResist,
ScalarT &  invEarlyVoltF,
ScalarT &  invRollOffF,
ScalarT &  invEarlyVoltR,
ScalarT &  invRollOffR,
ScalarT &  collectorConduct,
ScalarT &  emitterConduct,
ScalarT &  transTimeVBCFac,
ScalarT &  excessPhaseFac,
ScalarT &  depCapCoeff,
ScalarT &  f2,
ScalarT &  f3,
ScalarT &  f6,
ScalarT &  f7 
)

Definition at line 4925 of file N_DEV_BJT.C.

void Xyce::Device::BJT::registerDevice ( )

Definition at line 4728 of file N_DEV_BJT.C.

template<typename ScalarT >
bool Xyce::Device::BJT::updateIntermediateVars ( const ScalarT &  vBE,
const ScalarT &  vBC,
const ScalarT &  vBX,
const ScalarT &  vCS,
const ScalarT &  i_fx,
const ScalarT &  AREA,
const ScalarT &  tSatCur,
const ScalarT &  vt,
const ScalarT &  tleakBEEmissionCoeff,
const ScalarT &  tleakBCEmissionCoeff,
const ScalarT &  tBELeakCur,
const ScalarT &  tBCLeakCur,
const ScalarT &  tInvRollOffF,
const ScalarT &  tInvRollOffR,
const ScalarT &  tRollOffExp,
const ScalarT &  tInvEarlyVoltF,
const ScalarT &  tInvEarlyVoltR,
const ScalarT &  tBECap,
const ScalarT &  tBCCap,
const ScalarT &  tDepCap,
const ScalarT &  tBEPot,
const ScalarT &  tBCPot,
const ScalarT &  tF1,
const ScalarT &  tF4,
const ScalarT &  tF5,
const double &  gmin,
const bool  newExcessPhase,
const bool  dcopFlag,
const bool  tranopFlag,
const bool  acopFlag,
const bool  initTranFlag,
const bool  beginIntegrationFlag,
const int  newtonIter,
const double  pdt,
const ScalarT &  emissionCoeffF,
const ScalarT &  emissionCoeffR,
const ScalarT &  baseFracBCCap,
const ScalarT &  CJS,
const ScalarT &  depCapCoeff,
const ScalarT &  potBC,
const ScalarT &  transTimeF,
const ScalarT &  transTimeR,
const ScalarT &  transTimeBiasCoeffF,
const ScalarT &  transTimeVBCFac,
const ScalarT &  transTimeHighCurrF,
const ScalarT &  juncExpBE,
const ScalarT &  juncExpBC,
const ScalarT &  potSubst,
const ScalarT &  expSubst,
const ScalarT &  emitterConduct,
const ScalarT &  collectorConduct,
const ScalarT &  minBaseResist,
const ScalarT &  baseResist,
const ScalarT &  baseCurrHalfResist,
const ScalarT &  excessPhaseFac,
const ScalarT &  f2,
const ScalarT &  f3,
const ScalarT &  f6,
const ScalarT &  f7,
const int  level,
double *  nextStaVec,
double *  currStaVec,
double *  lastStaVec,
const int  li_istateCEXBC,
const double  dt0,
const double  dt1,
ScalarT &  iB,
ScalarT &  iC,
ScalarT &  iE,
ScalarT &  iBE,
ScalarT &  gBE,
ScalarT &  iBC,
ScalarT &  gBC,
ScalarT &  iCE,
ScalarT &  iBEleak,
ScalarT &  gBEleak,
ScalarT &  iBCleak,
ScalarT &  gBCleak,
ScalarT &  qB,
ScalarT &  invqB,
ScalarT &  iBEhighCurr,
ScalarT &  gBEhighCurr,
ScalarT &  capeqCB,
ScalarT &  geqCB,
ScalarT &  qBEdep,
ScalarT &  capBEdep,
ScalarT &  qBEdiff,
ScalarT &  capBEdiff,
ScalarT &  qBCdep,
ScalarT &  capBCdep,
ScalarT &  qBCdiff,
ScalarT &  capBCdiff,
ScalarT &  qBX,
ScalarT &  capBX,
ScalarT &  qCS,
ScalarT &  capCS,
ScalarT &  gEpr,
ScalarT &  gCpr,
ScalarT &  gX,
ScalarT &  diBrdvB,
ScalarT &  diBrdvCp,
ScalarT &  diBrdvEp,
ScalarT &  diBrdvBp,
ScalarT &  diCEdvEp,
ScalarT &  diCEdvCp,
ScalarT &  diCEdvBp,
ScalarT &  diBEdvBp,
ScalarT &  diBEdvCp,
ScalarT &  diBEdvEp,
ScalarT &  gBEtot,
ScalarT &  gBCtot,
ScalarT &  tBetaF,
ScalarT &  tBetaR 
)

Definition at line 5383 of file N_DEV_BJT.C.

template<typename ScalarT >
bool Xyce::Device::BJT::updateTemperature ( const ScalarT &  TEMP,
const ScalarT &  TNOM,
const ScalarT &  energyGap,
const ScalarT &  tempExpIS,
const ScalarT &  betaExp,
const ScalarT &  potBE,
const ScalarT &  depCapBE,
const ScalarT &  juncExpBE,
const ScalarT &  depCapBC,
const ScalarT &  juncExpBC,
const ScalarT &  depCapCoeff,
const ScalarT &  satCur,
const ScalarT &  betaF,
const ScalarT &  betaR,
const ScalarT &  c2,
const ScalarT &  c4,
bool  c2Given,
bool  c4Given,
bool  leakBECurrentGiven,
bool  leakBCCurrentGiven,
const ScalarT &  leakBEEmissionCoeff,
const ScalarT &  leakBCEmissionCoeff,
const ScalarT &  rollOffExp,
const ScalarT &  baseResist,
const ScalarT &  collectorResist,
const ScalarT &  emitterResist,
const ScalarT &  potBC,
const ScalarT &  rollOffF,
const ScalarT &  rollOffR,
const ScalarT &  earlyVoltF,
const ScalarT &  earlyVoltR,
ScalarT &  vt,
ScalarT &  leakBECurrent,
ScalarT &  leakBCCurrent,
ScalarT &  tBELeakCur,
ScalarT &  tBCLeakCur,
ScalarT &  tleakBEEmissionCoeff,
ScalarT &  tleakBCEmissionCoeff,
ScalarT &  tRollOffExp,
ScalarT &  tInvRollOffF,
ScalarT &  tInvRollOffR,
ScalarT &  tBaseResist,
ScalarT &  tCollectorResist,
ScalarT &  tEmitterResist,
ScalarT &  tBECap,
ScalarT &  tBEPot,
ScalarT &  tBCCap,
ScalarT &  tBCPot,
ScalarT &  tDepCap,
ScalarT &  tF1,
ScalarT &  tF4,
ScalarT &  tF5,
ScalarT &  tVCrit,
ScalarT &  tSatCur,
ScalarT &  tBetaF,
ScalarT &  tBetaR,
ScalarT &  tInvEarlyVoltF,
ScalarT &  tInvEarlyVoltR 
)

Definition at line 4744 of file N_DEV_BJT.C.

template<typename ScalarT >
ScalarT Xyce::Device::BJT::Xycemax ( ScalarT  f1,
ScalarT  f2 
)
inline

Definition at line 70 of file N_DEV_BJT.h.

template<typename ScalarT >
ScalarT Xyce::Device::BJT::Xycemin ( ScalarT  f1,
ScalarT  f2 
)
inline

Definition at line 73 of file N_DEV_BJT.h.

Variable Documentation

bjtInstanceSensitivity Xyce::Device::BJT::bjtInstanceSens
static

Definition at line 117 of file N_DEV_BJT.h.

bjtModelSensitivity Xyce::Device::BJT::bjtModelSens
static

Definition at line 118 of file N_DEV_BJT.h.