Xyce  6.1
Xyce::Device::DAC::Instance Class Reference

#include <N_DEV_DAC.h>

Inheritance diagram for Xyce::Device::DAC::Instance:
Collaboration diagram for Xyce::Device::DAC::Instance:

Public Member Functions

 Instance (const Configuration &configuration, const InstanceBlock &IB, Model &DACiter, 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 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 updateIntermediateVars ()
 
bool updatePrimaryState ()
 
bool updateSecondaryState ()
 
bool updateTVVEC (std::vector< std::pair< double, double > > const &newPairs)
 
bool getInstanceBreakPoints (std::vector< Util::BreakPoint > &breakPointTimes)
 
DeviceStategetInternalState ()
 
bool setInternalState (const DeviceState &state)
 
ModelgetModel ()
 
bool loadDAEQVector ()
 
bool loadDAEFVector ()
 
bool loadDAEdQdx ()
 
bool loadDAEdFdx ()
 
void varTypes (std::vector< char > &varTypeVec)
 
- Public Member Functions inherited from Xyce::Device::DeviceInstance
 DeviceInstance (const InstanceBlock &instance_block, ParametricData< void > &parametric_data, const FactoryBlock &factory_block)
 
virtual ~DeviceInstance ()
 
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 void registerStoreLIDs (const LocalIdVector &stoLIDVecRef)
 
virtual void registerBranchDataLIDs (const LocalIdVector &branchDataLIDVecRef)
 
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 void setupPointers ()
 
virtual const IdVectorgetDepSolnGIDVec ()
 
virtual const IndexPairVector & getIndexPairList ()
 
virtual bool updateSource ()
 
virtual bool processInstanceParams ()
 
virtual bool updateTemperature (const double &temp_tmp)
 
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 setIC ()
 
virtual bool plotfileFlag ()
 
virtual void loadErrorWeightMask ()
 
virtual void acceptStep ()
 
virtual bool loadDAEBVector ()
 
virtual int getNumNoiseSources () const
 
virtual void setupNoiseSources (Xyce::Analysis::NoiseData &noiseDataVec)
 
virtual void getNoiseSources (Xyce::Analysis::NoiseData &noiseDataVec)
 
const InstanceNamegetName () 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 bool loadDFDV (int iElectrode, Linear::Vector *dfdvPtr)
 
virtual bool calcConductance (int iElectrode, const Linear::Vector *dxdvPtr)
 
virtual bool outputPlotFiles ()
 
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 ()
 
bool getOrigFlag () const
 
void setOrigFlag (bool origFlag_local)
 
const IdVectorgetDevLIDs () const
 
const std::vector< IdVector > & getDevJacLIDs () const
 
const IdVectorgetStaLIDVec () const
 
bool getMergeRowColChecked () const
 
void setMergeRowColChecked (bool mergeRowColChecked_local)
 
const MatrixLoadDatagetMatrixLoadData () const
 
MatrixLoadDatagetMatrixLoadData ()
 
const ExternDatagetExternData () const
 
- Public Member Functions inherited from Xyce::Device::DeviceEntity
 DeviceEntity (ParametricData< void > &parametric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_filename, int netlist_line)
 
virtual ~DeviceEntity ()
 
virtual CompositeParamconstructComposite (const std::string &composite_name, const std::string &param_name)
 
bool setDefaultParam (double val, bool overrideOriginal=false)
 
double getDefaultParam () const
 
bool scaleParam (const std::string &paramName, double val, double val0)
 
bool scaleParam (const std::string &paramName, double val)
 
bool scaleDefaultParam (double val)
 
bool analyticSensitivityAvailable (const std::string &paramName)
 
bool getAnalyticSensitivity (const std::string &paramName, 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 &paramName, double val, bool overrideOriginal=false)
 
bool getParam (const std::string &paramName, double &result) const
 
bool getParamBreakpoints (std::vector< Util::BreakPoint > &)
 
bool updateDependentParameters (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 > &params)
 
bool given (const std::string &parameter_name) const
 
void setDefaultParamName (const std::string &default_param_name)
 
const std::vector< Depend > & getDependentParams ()
 
void addDependentParameter (const Depend &param)
 
const DeviceOptionsgetDeviceOptions () const
 
const SolverStategetSolverState () const
 
const NetlistLocation & netlistLocation () const
 
const ParameterMapgetParameterMap () const
 
- Public Member Functions inherited from Xyce::Device::ParameterBase
 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 &)
 
Instanceoperator= (const Instance &)
 
bool updateVoltage (double)
 

Private Attributes

Modelmodel_
 
std::string file
 
std::vector< std::pair< double, double > > TVVEC
 
int numTVpairs_
 
double v_pos
 
double v_neg
 
double i_bra
 
double vDrop
 
double voltage_
 
int loc_
 
int li_Pos
 
int li_Neg
 
int li_Bra
 
int ABraEquPosNodeOffset
 
int ABraEquNegNodeOffset
 
int APosEquBraVarOffset
 
int ANegEquBraVarOffset
 

Static Private Attributes

static std::vector< std::vector< int > > jacStamp
 

Friends

class ParametricData< Instance >
 
class Model
 
class Traits
 
class Master
 

Additional Inherited Members

- Public Attributes inherited from Xyce::Device::DeviceInstance
std::vector< int > & cols
 
std::vector< double > & vals
 
NumericalJacobiannumJacPtr
 
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
 
- Protected Member Functions inherited from Xyce::Device::DeviceInstance
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)
 
- Protected Attributes inherited from Xyce::Device::DeviceInstance
const ExternDataextData
 
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
 
- Protected Attributes inherited from Xyce::Device::DeviceEntity
std::vector< int > expVarGIDs
 
std::vector< int > expVarLIDs
 
std::vector< std::string > expVarNames
 
std::vector< double > expVarVals
 
std::vector< double > eVarVals
 

Detailed Description

Definition at line 87 of file N_DEV_DAC.h.

Constructor & Destructor Documentation

Xyce::Device::DAC::Instance::Instance ( const Configuration configuration,
const InstanceBlock IB,
Model DACiter,
const FactoryBlock factory_block 
)

Definition at line 143 of file N_DEV_DAC.C.

Xyce::Device::DAC::Instance::~Instance ( )

Definition at line 207 of file N_DEV_DAC.C.

Xyce::Device::DAC::Instance::Instance ( const Instance )
private

Member Function Documentation

bool Xyce::Device::DAC::Instance::getInstanceBreakPoints ( std::vector< Util::BreakPoint > &  breakPointTimes)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 629 of file N_DEV_DAC.C.

DeviceState * Xyce::Device::DAC::Instance::getInternalState ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 687 of file N_DEV_DAC.C.

Model& Xyce::Device::DAC::Instance::getModel ( )
inline

Definition at line 133 of file N_DEV_DAC.h.

const std::vector< std::vector< int > > & Xyce::Device::DAC::Instance::jacobianStamp ( ) const
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 293 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::loadDAEdFdx ( )
virtual

Implements Xyce::Device::DeviceInstance.

Definition at line 602 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::loadDAEdQdx ( )
inlinevirtual

Implements Xyce::Device::DeviceInstance.

Definition at line 143 of file N_DEV_DAC.h.

bool Xyce::Device::DAC::Instance::loadDAEFVector ( )
virtual

Implements Xyce::Device::DeviceInstance.

Definition at line 575 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::loadDAEQVector ( )
inlinevirtual

Implements Xyce::Device::DeviceInstance.

Definition at line 140 of file N_DEV_DAC.h.

void Xyce::Device::DAC::Instance::loadNodeSymbols ( Util::SymbolTable &  symbol_table) const
virtual

Populates and returns the store name map.

If the DeviceInstance::storeNameMap is empty, populate it.

For the purpose of lead currents, store vector elements must be given names that can be used to locate lead currents at print time. When a netlist attempts to print, say, "I(R1)" the output code looks for an entry in the store vector named R1:DEV_I.

This method does the assignment of names to various vector elements.

Author
David G. Baur
Date
12/18/2014

Implements Xyce::Device::DeviceInstance.

Definition at line 280 of file N_DEV_DAC.C.

Instance& Xyce::Device::DAC::Instance::operator= ( const Instance )
private
bool Xyce::Device::DAC::Instance::processParams ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 129 of file N_DEV_DAC.C.

void Xyce::Device::DAC::Instance::registerJacLIDs ( const std::vector< std::vector< int > > &  jacLIDVec)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 306 of file N_DEV_DAC.C.

void Xyce::Device::DAC::Instance::registerLIDs ( const std::vector< int > &  intLIDVecRef,
const std::vector< int > &  extLIDVecRef 
)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 219 of file N_DEV_DAC.C.

void Xyce::Device::DAC::Instance::registerStateLIDs ( const std::vector< int > &  staLIDVecRef)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 267 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::setInternalState ( const DeviceState state)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 716 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::updateIntermediateVars ( )
virtual

Implements Xyce::Device::DeviceInstance.

Definition at line 322 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::updatePrimaryState ( )
virtual

Implements Xyce::Device::DeviceInstance.

Definition at line 347 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::updateSecondaryState ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 362 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::updateTVVEC ( std::vector< std::pair< double, double > > const &  newPairs)

Definition at line 377 of file N_DEV_DAC.C.

bool Xyce::Device::DAC::Instance::updateVoltage ( double  time)
private

Definition at line 508 of file N_DEV_DAC.C.

void Xyce::Device::DAC::Instance::varTypes ( std::vector< char > &  varTypeVec)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 753 of file N_DEV_DAC.C.

Friends And Related Function Documentation

friend class Master
friend

Definition at line 91 of file N_DEV_DAC.h.

friend class Model
friend

Definition at line 90 of file N_DEV_DAC.h.

friend class ParametricData< Instance >
friend

Definition at line 89 of file N_DEV_DAC.h.

friend class Traits
friend

Definition at line 91 of file N_DEV_DAC.h.

Member Data Documentation

int Xyce::Device::DAC::Instance::ABraEquNegNodeOffset
private

Definition at line 188 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::ABraEquPosNodeOffset
private

Definition at line 185 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::ANegEquBraVarOffset
private

Definition at line 194 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::APosEquBraVarOffset
private

Definition at line 191 of file N_DEV_DAC.h.

std::string Xyce::Device::DAC::Instance::file
private

Definition at line 158 of file N_DEV_DAC.h.

double Xyce::Device::DAC::Instance::i_bra
private

Definition at line 170 of file N_DEV_DAC.h.

std::vector< std::vector< int > > Xyce::Device::DAC::Instance::jacStamp
staticprivate

Definition at line 153 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::li_Bra
private

Definition at line 182 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::li_Neg
private

Definition at line 181 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::li_Pos
private

Definition at line 180 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::loc_
private

Definition at line 173 of file N_DEV_DAC.h.

Model& Xyce::Device::DAC::Instance::model_
private

Definition at line 155 of file N_DEV_DAC.h.

int Xyce::Device::DAC::Instance::numTVpairs_
private

Definition at line 167 of file N_DEV_DAC.h.

std::vector< std::pair<double, double> > Xyce::Device::DAC::Instance::TVVEC
private

Definition at line 161 of file N_DEV_DAC.h.

double Xyce::Device::DAC::Instance::v_neg
private

Definition at line 169 of file N_DEV_DAC.h.

double Xyce::Device::DAC::Instance::v_pos
private

Definition at line 168 of file N_DEV_DAC.h.

double Xyce::Device::DAC::Instance::vDrop
private

Definition at line 171 of file N_DEV_DAC.h.

double Xyce::Device::DAC::Instance::voltage_
private

Definition at line 172 of file N_DEV_DAC.h.


The documentation for this class was generated from the following files: