Xyce  6.1
N_DEV_Diode.h File Reference
#include <Sacado.hpp>
#include <N_DEV_Configuration.h>
#include <N_DEV_DeviceMaster.h>
#include <N_DEV_DeviceBlock.h>
#include <N_DEV_DeviceInstance.h>
#include <N_DEV_DeviceModel.h>
#include <N_DEV_Param.h>
Include dependency graph for N_DEV_Diode.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Xyce::Device::Diode::diodeSensitivity
 general sensitivity functor for all params. More...
 
struct  Xyce::Device::Diode::Traits
 
class  Xyce::Device::Diode::Instance
 
class  Xyce::Device::Diode::Model
 
class  Xyce::Device::Diode::Master
 

Namespaces

 Xyce
 Pure virtual class to augment a linear system.
 
 Xyce::Device
 Circuit Device Definitions.
 
 Xyce::Device::Diode
 

Typedefs

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

Functions

template<typename ScalarT >
ScalarT Xyce::Device::Diode::Xycemax (ScalarT f1, ScalarT f2)
 
template<typename ScalarT >
ScalarT Xyce::Device::Diode::Xycemin (ScalarT f1, ScalarT f2)
 
template<typename ScalarT >
bool Xyce::Device::Diode::processParams (ScalarT &M, ScalarT &EG, ScalarT &FC, const ScalarT &RS, ScalarT &COND, ScalarT &F2, ScalarT &F3)
 
template<typename ScalarT >
bool Xyce::Device::Diode::updateTemperature (ScalarT &Temp, ScalarT &tJctCap, ScalarT &tJctPot, ScalarT &tDepCap, ScalarT &tF1, ScalarT &tSatCur, ScalarT &tSatCurR, ScalarT &tVcrit, ScalarT &tRS, ScalarT &tCOND, ScalarT &tIRF, ScalarT &tIKF, ScalarT &tBrkdwnV, const ScalarT &TNOM, const ScalarT &VJ, const ScalarT &CJO, const ScalarT &M, const ScalarT &N, const ScalarT &IS, const ScalarT &EG, const ScalarT &XTI, const ScalarT &RS, const ScalarT &COND, const ScalarT &IRF, const ScalarT &NR, const ScalarT &IKF, const ScalarT &TIKF, const ScalarT &ISR, const ScalarT &IBV, const ScalarT &BV, const bool &BVGiven, const ScalarT &TBV1, const ScalarT &TBV2, const ScalarT &TRS1, const ScalarT &TRS2, const ScalarT &FC, const int level)
 
template<typename ScalarT >
bool Xyce::Device::Diode::updateIntermediateVars (const ScalarT &Vp, const ScalarT &Vpp, const ScalarT &Vn, const ScalarT &Vd, const ScalarT &Temp, const ScalarT &tJctCap, const ScalarT &tJctPot, const ScalarT &tDepCap, const ScalarT &tF1, const ScalarT &tSatCur, const ScalarT &tSatCurR, const ScalarT &tVcrit, const ScalarT &tRS, const ScalarT &tCOND, const ScalarT &tIRF, const ScalarT &tIKF, const ScalarT &tBrkdwnV, const ScalarT &Area, const int &lambertWFlag, const double &gmin, const ScalarT M, const ScalarT BV, const ScalarT IBV, const ScalarT NBV, const ScalarT IBVL, const ScalarT NBVL, const ScalarT N, const ScalarT NR, const ScalarT TT, const ScalarT F2, const ScalarT F3, const int level, ScalarT &Id, ScalarT &Gd, ScalarT &Qd, ScalarT &Cd, ScalarT &Gspr)
 
template<typename ScalarT >
bool Xyce::Device::Diode::applyLimiters (DeviceSupport &devSupport, const ScalarT &Vp, const ScalarT &Vpp, const ScalarT &Vn, const ScalarT &tVcrit, ScalarT &Vd, ScalarT &Vd_orig, ScalarT &Vd_old, const ScalarT &currVd_old, const ScalarT &nextVd_old, const double InitCond, const bool InitCondGiven, const bool BVGiven, const int off, bool &origFlag, const bool dotICapplies, const int &newtonIter, const bool initJctFlag, const bool voltageLimiterFlag, const bool dcopFlag, const bool locaEnabledFlag)
 
void Xyce::Device::Diode::registerDevice ()
 

Variables

static diodeSensitivity Xyce::Device::Diode::diodeSens