Xyce
6.1
|
#include <N_DEV_Diode.h>
Public Member Functions | |
Instance (const Configuration &configuration, const InstanceBlock &instance_block, Model &model, const FactoryBlock &factory_block) | |
~Instance () | |
void | registerLIDs (const std::vector< int > &intLIDVecRef, const std::vector< int > &extLIDVecRef) |
void | registerStateLIDs (const std::vector< int > &staLIDVecRef) |
void | registerStoreLIDs (const std::vector< int > &stoLIDVecRef) |
void | registerBranchDataLIDs (const std::vector< int > &branchLIDVecRef) |
In addition to state vector, Xyce maintains a separate datastructure called a "branch data" vector. More... | |
void | loadNodeSymbols (Util::SymbolTable &symbol_table) const |
Populates and returns the store name map. More... | |
const std::vector< std::vector< int > > & | jacobianStamp () const |
void | registerJacLIDs (const std::vector< std::vector< int > > &jacLIDVec) |
bool | processParams () |
bool | updateTemperature (const double &temp=-999.0) |
bool | lambertWCurrent (double Isat, double Vte, double RS) |
bool | lambertWBreakdownCurrent (double Isat, double Vte, double RS) |
bool | lambertWLinearReverseBias (double Isat, double Vte, double RS) |
bool | updateIntermediateVars () |
bool | updatePrimaryState () |
int | getNumNoiseSources () const |
void | setupNoiseSources (Xyce::Analysis::NoiseData &noiseData) |
void | getNoiseSources (Xyce::Analysis::NoiseData &noiseData) |
bool | loadDAEQVector () |
bool | loadDAEFVector () |
bool | loadDAEdQdx () |
bool | loadDAEdFdx () |
void | setupPointers () |
Model & | getModel () |
![]() | |
DeviceInstance (const InstanceBlock &instance_block, ParametricData< void > ¶metric_data, const FactoryBlock &factory_block) | |
virtual | ~DeviceInstance () |
virtual bool | isLinearDevice () const |
virtual std::ostream & | printName (std::ostream &os) const |
virtual void | enableLeadCurrentCalc () |
virtual void | registerGIDs (const IndexPairVector &intGIDListRef, const IndexPairVector &extGIDListRef) |
virtual void | registerStateGIDs (const IndexPairVector &staGIDListRef) |
virtual void | registerStoreGIDs (const IndexPairVector &stoGIDListRef) |
virtual const std::vector< std::string > & | getDepSolnVars () |
virtual void | registerDepSolnGIDs (const std::vector< IdVector > &varList) |
virtual const std::vector< std::string > & | getDepStateVars () |
virtual void | registerDepStateGIDs (const std::vector< IdVector > &varList) |
virtual const std::vector< std::string > & | getDepStoreVars () |
virtual void | registerDepStoreGIDs (const std::vector< IdVector > &varList) |
virtual const std::vector< std::string > & | getDepLeadCurrentVars () |
virtual void | registerDepLeadCurrentGIDs (const std::vector< IdVector > &varList) |
virtual void | registerDepSolnLIDs (const std::vector< IdVector > &depSolnLIDVecRef) |
virtual void | registerDepStateLIDs (const std::vector< IdVector > &depStaLIDVecRef) |
virtual void | registerDepStoreLIDs (const std::vector< IdVector > &depStoLIDVecRef) |
virtual void | registerGIDData (const std::vector< int > &counts, const IdVector &GIDs, const JacobianStamp &jacGIDs) |
virtual const IdVector & | getDepSolnGIDVec () |
virtual const IndexPairVector & | getIndexPairList () |
virtual bool | getInstanceBreakPoints (std::vector< Util::BreakPoint > &breakPointTimes) |
virtual bool | updateSource () |
virtual bool | processInstanceParams () |
virtual bool | isConverged () |
virtual bool | testDAEMatrices (const std::vector< const std::string * > &nameVec) |
virtual bool | loadTrivialDAE_FMatrixStamp () |
bool | trivialStampLoader (Linear::Matrix *matPtr) |
bool | zeroMatrixDiagonal (Linear::Matrix *matPtr) |
virtual bool | updateSecondaryState () |
virtual bool | setIC () |
virtual bool | plotfileFlag () |
virtual void | loadErrorWeightMask () |
virtual void | acceptStep () |
virtual bool | loadDAEBVector () |
const InstanceName & | getName () const |
int | getNumIntVars () const |
int | getNumExtVars () const |
int | getNumStateVars () const |
int | getNumStoreVars () const |
int | getNumBranchDataVars () const |
void | setNumStoreVars (int num_store_vars) |
void | setNumBranchDataVars (int num_branch_data_vars) |
virtual const std::vector< int > & | getDevConMap () |
virtual DeviceState * | getInternalState () |
virtual bool | setInternalState (const DeviceState &state) |
virtual bool | loadDFDV (int iElectrode, Linear::Vector *dfdvPtr) |
virtual bool | calcConductance (int iElectrode, const Linear::Vector *dxdvPtr) |
virtual bool | outputPlotFiles (bool force_final_output) |
virtual bool | enablePDEContinuation (int &max_PDE_continuation_steps) |
virtual bool | disablePDEContinuation () |
virtual void | setPDEContinuationAlpha (double alpha) |
virtual void | setPDEContinuationBeta (double beta) |
virtual bool | setInitialGuess () |
virtual double | getMaxTimeStepSize () |
virtual void | varTypes (std::vector< char > &varTypeVec) |
bool | getOrigFlag () const |
void | setOrigFlag (bool origFlag_local) |
const IdVector & | getDevLIDs () const |
const std::vector< IdVector > & | getDevJacLIDs () const |
const IdVector & | getStaLIDVec () const |
bool | getMergeRowColChecked () const |
void | setMergeRowColChecked (bool mergeRowColChecked_local) |
const MatrixLoadData & | getMatrixLoadData () const |
MatrixLoadData & | getMatrixLoadData () |
const ExternData & | getExternData () const |
![]() | |
DeviceEntity (ParametricData< void > ¶metric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_filename, int netlist_line) | |
virtual | ~DeviceEntity () |
virtual CompositeParam * | constructComposite (const std::string &composite_name, const std::string ¶m_name) |
bool | setDefaultParam (double val, bool overrideOriginal=false) |
double | getDefaultParam () const |
bool | scaleParam (const std::string ¶mName, double val, double val0) |
bool | scaleParam (const std::string ¶mName, double val) |
bool | scaleDefaultParam (double val) |
bool | analyticSensitivityAvailable (const std::string ¶mName) |
bool | analyticSensitivityAvailableDefaultParam () |
bool | getAnalyticSensitivity (const std::string ¶mName, std::vector< double > &dfdpVec, std::vector< double > &dqdpVec, std::vector< double > &dbdpVec, std::vector< int > &FindicesVec, std::vector< int > &QindicesVec, std::vector< int > &BindicesVec) |
bool | getAnalyticSensitivityDefaultParam (std::vector< double > &dfdpVec, std::vector< double > &dqdpVec, std::vector< double > &dbdpVec, std::vector< int > &FindicesVec, std::vector< int > &QindicesVec, std::vector< int > &BindicesVec) |
bool | setParam (const std::string ¶mName, double val, bool overrideOriginal=false) |
bool | getParam (const std::string ¶mName, double &result) const |
bool | findParam (const std::string ¶m_name) const |
bool | getParamBreakpoints (std::vector< Util::BreakPoint > &) |
bool | updateDependentParameters (const Linear::Vector &vars) |
bool | updateDependentParameters (double temp_tmp) |
bool | updateGlobalParameters (GlobalParameterMap &) |
bool | updateDependentParameters () |
double | setDependentParameter (Util::Param &, double *, ParameterType::ExprAccess) |
double | setDependentParameter (Util::Param &, std::vector< double > *, int, ParameterType::ExprAccess) |
void | setDependentParameter (Util::Param &par, Depend &dependentParam, ParameterType::ExprAccess depend) |
void | setDefaultParams () |
void | setParams (const std::vector< Param > ¶ms) |
bool | given (const std::string ¶meter_name) const |
void | setDefaultParamName (const std::string &default_param_name) |
const std::vector< Depend > & | getDependentParams () |
void | addDependentParameter (const Depend ¶m) |
const DeviceOptions & | getDeviceOptions () const |
const SolverState & | getSolverState () const |
const NetlistLocation & | netlistLocation () const |
const ParameterMap & | getParameterMap () const |
![]() | |
ParameterBase () | |
virtual | ~ParameterBase () |
double | getOriginalValue (int serial_number) |
void | setOriginalValue (int serial_number, double value) |
bool | wasValueGiven (int serial_number) const |
void | setValueGiven (int serial_number, bool value) |
Private Member Functions | |
Instance (const Instance &) | |
Instance & | operator= (const Instance &) |
Static Private Attributes | |
static std::vector< std::vector< int > > | jacStamp_RS |
static std::vector< std::vector< int > > | jacStamp |
static std::vector< int > | jacMap_RS |
static std::vector< int > | jacMap |
static std::vector< std::vector< int > > | jacMap2_RS |
static std::vector< std::vector< int > > | jacMap2 |
Friends | |
class | ParametricData< Instance > |
class | Model |
class | Traits |
class | Master |
class | diodeSensitivity |
Additional Inherited Members | |
![]() | |
std::vector< int > & | cols |
std::vector< double > & | vals |
NumericalJacobian * | numJacPtr |
bool | psLoaded |
bool | ssLoaded |
bool | rhsLoaded |
bool | origFlag |
int | numIntVars |
int | numExtVars |
int | numStateVars |
int | numStoreVars |
int | numLeadCurrentVars |
int | numLeadCurrentStoreVars |
bool | loadLeadCurrent |
int | numBranchDataVars |
int | numBranchDataVarsIfAllocated |
std::vector< int > | devConMap |
bool | mergeRowColChecked |
![]() | |
void | jacStampMap (const JacobianStamp &stamp_parent, IdVector &map_parent, JacobianStamp &map2_parent, JacobianStamp &stamp, IdVector &map, JacobianStamp &map2, int from, int to, int original_size) |
void | jacStampMap_fixOrder (const JacobianStamp &stamp_parent, JacobianStamp &map2_parent, JacobianStamp &stamp, JacobianStamp &map2) |
void | outputJacStamp (const JacobianStamp &jac) |
void | outputJacMaps (const std::vector< int > &jacMap, const JacobianStamp &jacMap2) |
![]() | |
const ExternData & | extData |
IndexPairVector | indexPairList |
IndexPairVector | intGIDList |
IndexPairVector | extGIDList |
IndexPairVector | staGIDList |
IdVector | intLIDVec |
IdVector | extLIDVec |
IdVector | staLIDVec |
IdVector | stoLIDVec |
IdVector | devLIDs |
devLIDs is a combined LID vector, containing int, ext, and expVar ID's. More... | |
JacobianStamp | devJacLIDs |
DeviceSupport | devSupport |
![]() | |
std::vector< int > | expVarGIDs |
std::vector< int > | expVarLIDs |
std::vector< std::string > | expVarNames |
std::vector< double > | expVarVals |
std::vector< double > | eVarVals |
Definition at line 279 of file N_DEV_Diode.h.
Xyce::Device::Diode::Instance::Instance | ( | const Configuration & | configuration, |
const InstanceBlock & | instance_block, | ||
Model & | model, | ||
const FactoryBlock & | factory_block | ||
) |
Definition at line 346 of file N_DEV_Diode.C.
Xyce::Device::Diode::Instance::~Instance | ( | ) |
Definition at line 468 of file N_DEV_Diode.C.
|
private |
|
inline |
Definition at line 336 of file N_DEV_Diode.h.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 961 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 915 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 641 of file N_DEV_Diode.C.
bool Xyce::Device::Diode::Instance::lambertWBreakdownCurrent | ( | double | Isat, |
double | Vte, | ||
double | RS | ||
) |
Definition at line 1773 of file N_DEV_Diode.C.
bool Xyce::Device::Diode::Instance::lambertWCurrent | ( | double | Isat, |
double | Vte, | ||
double | RS | ||
) |
Definition at line 1644 of file N_DEV_Diode.C.
bool Xyce::Device::Diode::Instance::lambertWLinearReverseBias | ( | double | Isat, |
double | Vte, | ||
double | RS | ||
) |
Definition at line 1720 of file N_DEV_Diode.C.
|
virtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 868 of file N_DEV_Diode.C.
|
virtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 837 of file N_DEV_Diode.C.
|
virtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 780 of file N_DEV_Diode.C.
|
virtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 733 of file N_DEV_Diode.C.
|
virtual |
Populates and returns the store name map.
Implements Xyce::Device::DeviceInstance.
Definition at line 548 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 324 of file N_DEV_Diode.C.
|
virtual |
In addition to state vector, Xyce maintains a separate datastructure called a "branch data" vector.
As with other such vectors, the device declares at construction time how many branch vector entries it needs, and later Topology assigns locations for devices, returning LIDs.
These LIDs are stored in this method for later use.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 622 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 657 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 481 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 570 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 586 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 928 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 694 of file N_DEV_Diode.C.
|
virtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 986 of file N_DEV_Diode.C.
|
virtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 898 of file N_DEV_Diode.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 1418 of file N_DEV_Diode.C.
|
friend |
Definition at line 284 of file N_DEV_Diode.h.
|
friend |
Definition at line 283 of file N_DEV_Diode.h.
|
friend |
Definition at line 282 of file N_DEV_Diode.h.
|
friend |
Definition at line 281 of file N_DEV_Diode.h.
|
friend |
Definition at line 283 of file N_DEV_Diode.h.
|
private |
Definition at line 415 of file N_DEV_Diode.h.
|
private |
Definition at line 416 of file N_DEV_Diode.h.
|
private |
Definition at line 413 of file N_DEV_Diode.h.
|
private |
Definition at line 414 of file N_DEV_Diode.h.
|
private |
Definition at line 418 of file N_DEV_Diode.h.
|
private |
Definition at line 417 of file N_DEV_Diode.h.
|
private |
Definition at line 419 of file N_DEV_Diode.h.
|
private |
Definition at line 355 of file N_DEV_Diode.h.
|
private |
Definition at line 443 of file N_DEV_Diode.h.
|
private |
Definition at line 376 of file N_DEV_Diode.h.
|
private |
Definition at line 425 of file N_DEV_Diode.h.
|
private |
Definition at line 426 of file N_DEV_Diode.h.
|
private |
Definition at line 423 of file N_DEV_Diode.h.
|
private |
Definition at line 424 of file N_DEV_Diode.h.
|
private |
Definition at line 428 of file N_DEV_Diode.h.
|
private |
Definition at line 427 of file N_DEV_Diode.h.
|
private |
Definition at line 429 of file N_DEV_Diode.h.
|
private |
Definition at line 377 of file N_DEV_Diode.h.
|
private |
Definition at line 375 of file N_DEV_Diode.h.
|
private |
Definition at line 380 of file N_DEV_Diode.h.
|
private |
Definition at line 396 of file N_DEV_Diode.h.
|
private |
Definition at line 379 of file N_DEV_Diode.h.
|
private |
Definition at line 374 of file N_DEV_Diode.h.
|
private |
Definition at line 356 of file N_DEV_Diode.h.
|
private |
Definition at line 359 of file N_DEV_Diode.h.
|
staticprivate |
Definition at line 346 of file N_DEV_Diode.h.
|
staticprivate |
Definition at line 349 of file N_DEV_Diode.h.
|
staticprivate |
Definition at line 348 of file N_DEV_Diode.h.
|
staticprivate |
Definition at line 345 of file N_DEV_Diode.h.
|
staticprivate |
Definition at line 343 of file N_DEV_Diode.h.
|
staticprivate |
Definition at line 342 of file N_DEV_Diode.h.
|
private |
Definition at line 358 of file N_DEV_Diode.h.
|
private |
Index for Lead Current and junction voltage (for power calculations)
Definition at line 406 of file N_DEV_Diode.h.
|
private |
Definition at line 409 of file N_DEV_Diode.h.
|
private |
Definition at line 408 of file N_DEV_Diode.h.
|
private |
Definition at line 410 of file N_DEV_Diode.h.
|
private |
Definition at line 405 of file N_DEV_Diode.h.
|
private |
Definition at line 402 of file N_DEV_Diode.h.
|
private |
Definition at line 352 of file N_DEV_Diode.h.
|
private |
Definition at line 354 of file N_DEV_Diode.h.
|
private |
Definition at line 395 of file N_DEV_Diode.h.
|
private |
Definition at line 378 of file N_DEV_Diode.h.
|
private |
Definition at line 433 of file N_DEV_Diode.h.
|
private |
Definition at line 434 of file N_DEV_Diode.h.
|
private |
Definition at line 431 of file N_DEV_Diode.h.
|
private |
Definition at line 432 of file N_DEV_Diode.h.
|
private |
Definition at line 436 of file N_DEV_Diode.h.
|
private |
Definition at line 435 of file N_DEV_Diode.h.
|
private |
Definition at line 437 of file N_DEV_Diode.h.
|
private |
Definition at line 367 of file N_DEV_Diode.h.
|
private |
Definition at line 371 of file N_DEV_Diode.h.
|
private |
Definition at line 363 of file N_DEV_Diode.h.
|
private |
Definition at line 357 of file N_DEV_Diode.h.
|
private |
Definition at line 442 of file N_DEV_Diode.h.
|
private |
Definition at line 366 of file N_DEV_Diode.h.
|
private |
Definition at line 369 of file N_DEV_Diode.h.
|
private |
Definition at line 372 of file N_DEV_Diode.h.
|
private |
Definition at line 362 of file N_DEV_Diode.h.
|
private |
Definition at line 361 of file N_DEV_Diode.h.
|
private |
Definition at line 370 of file N_DEV_Diode.h.
|
private |
Definition at line 364 of file N_DEV_Diode.h.
|
private |
Definition at line 368 of file N_DEV_Diode.h.
|
private |
Definition at line 365 of file N_DEV_Diode.h.
|
private |
Definition at line 386 of file N_DEV_Diode.h.
|
private |
Definition at line 388 of file N_DEV_Diode.h.
|
private |
Definition at line 389 of file N_DEV_Diode.h.
|
private |
Definition at line 390 of file N_DEV_Diode.h.
|
private |
Definition at line 385 of file N_DEV_Diode.h.
|
private |
Definition at line 384 of file N_DEV_Diode.h.
|
private |
Definition at line 383 of file N_DEV_Diode.h.