Xyce  6.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Xyce::Device::ROM::Instance Class Reference

#include <N_DEV_ROM.h>

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

Public Member Functions

 Instance (const Configuration &configuration, const InstanceBlock &IB, Model &Citer, const FactoryBlock &factory_block)
 
 ~Instance ()
 
void registerLIDs (const std::vector< int > &intLIDVecRef, const std::vector< int > &extLIDVecRef)
 
void registerStateLIDs (const std::vector< int > &staLIDVecRef)
 
std::map< int, std::string > & getIntNameMap ()
 
const std::vector< std::vector
< int > > & 
jacobianStamp () const
 
void registerJacLIDs (const std::vector< std::vector< int > > &jacLIDVec)
 
bool processParams ()
 
bool updateTemperature (const double &temp_tmp)
 
bool updateIntermediateVars ()
 
bool updatePrimaryState ()
 
bool setIC ()
 
bool loadDeviceMask ()
 
bool loadDAEQVector ()
 
bool loadDAEFVector ()
 
bool loadDAEdQdx ()
 
bool loadDAEdFdx ()
 
void setupPointers ()
 
void varTypes (std::vector< char > &varTypeVec)
 
ModelgetModel ()
 
- Public Member Functions inherited from Xyce::Device::DeviceInstance
 DeviceInstance (const InstanceBlock &instance_block, ParametricData< void > &parametric_data, const FactoryBlock &factory_block)
 
virtual ~DeviceInstance ()
 
virtual void enableLeadCurrentCalc ()
 
virtual void registerGIDs (const std::list< index_pair > &intGIDListRef, const std::list< index_pair > &extGIDListRef)
 
virtual void registerStateGIDs (const std::list< index_pair > &staGIDListRef)
 
virtual void registerStoreGIDs (const std::list< index_pair > &stoGIDListRef)
 
virtual void registerStoreLIDs (const std::vector< int > &stoLIDVecRef)
 
virtual const std::vector
< std::string > & 
getDepSolnVars ()
 
virtual void registerDepSolnGIDs (const std::vector< std::vector< int > > &varList)
 
virtual const std::vector
< std::string > & 
getDepStateVars ()
 
virtual void registerDepStateGIDs (const std::vector< std::vector< int > > &varList)
 
virtual const std::vector
< std::string > & 
getDepStoreVars ()
 
virtual void registerDepStoreGIDs (const std::vector< std::vector< int > > &varList)
 
virtual void registerDepSolnLIDs (const std::vector< std::vector< int > > &depSolnLIDVecRef)
 
virtual void registerDepStateLIDs (const std::vector< std::vector< int > > &depStaLIDVecRef)
 
virtual void registerDepStoreLIDs (const std::vector< std::vector< int > > &depStoLIDVecRef)
 
virtual void registerGIDData (const std::vector< int > &counts, const std::vector< int > &GIDs, const std::vector< std::vector< int > > &jacGIDs)
 
virtual void getDepSolnGIDVec (std::vector< int > &depGIDVec)
 
virtual bool getIndexPairList (std::list< index_pair > &iplRef)
 
virtual bool getInstanceBreakPoints (std::vector< N_UTL_BreakPoint > &breakPointTimes)
 
virtual bool updateSource ()
 
virtual bool processInstanceParams ()
 
virtual bool isConverged ()
 
virtual bool testDAEMatrices (std::vector< std::string > &nameVec)
 
virtual bool loadTrivialDAE_FMatrixStamp ()
 
bool trivialStampLoader (N_LAS_Matrix *matPtr)
 
bool zeroMatrixDiagonal (N_LAS_Matrix *matPtr)
 
virtual bool updateSecondaryState ()
 
virtual bool plotfileFlag ()
 
virtual void acceptStep ()
 
int getNumIntVars () const
 
int getNumExtVars () const
 
int getNumStateVars () const
 
int getNumStoreVars () const
 
void setNumStoreVars (int num_store_vars)
 
virtual void getDevConMap (std::vector< int > &)
 
virtual DeviceStategetInternalState ()
 
virtual bool setInternalState (const DeviceState &state)
 
virtual bool loadDFDV (int iElectrode, N_LAS_Vector *dfdvPtr)
 
virtual bool calcConductance (int iElectrode, const N_LAS_Vector *dxdvPtr)
 
virtual std::map< int,
std::string > & 
getStateNameMap ()
 
virtual std::map< int,
std::string > & 
getStoreNameMap ()
 
void spiceInternalName (std::string &tmpname)
 
virtual bool outputPlotFiles ()
 
virtual bool enablePDEContinuation ()
 
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 std::vector< int > & getDevLIDs () const
 
const std::vector< std::vector
< int > > & 
getDevJacLIDs () const
 
const std::vector< int > & getStaLIDVec () const
 
bool getMergeRowColChecked () const
 
void setMergeRowColChecked (bool mergeRowColChecked_local)
 
const MatrixLoadDatagetMatrixLoadData () const
 
MatrixLoadDatagetMatrixLoadData ()
 
- Public Member Functions inherited from Xyce::Device::DeviceEntity
 DeviceEntity (const char *const entity_type, const std::string &device_name, ParametricData< void > &parametric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_path, int netlist_line)
 
virtual ~DeviceEntity ()
 
virtual CompositeParamconstructComposite (const std::string &composite_name, const std::string &param_name)
 
bool setDefaultParam (double val)
 
double getDefaultParam ()
 
bool scaleParam (const std::string &paramName, double val, double val0)
 
bool scaleParam (const std::string &paramName, double val)
 
bool scaleDefaultParam (double val)
 
bool setParam (const std::string &paramName, double val)
 
bool getParam (const std::string &paramName, double &result)
 
bool getParamBreakpoints (std::vector< Util::BreakPoint > &)
 
bool updateDependentParameters (N_LAS_Vector &vars)
 
bool updateDependentParameters (double temp_tmp)
 
bool updateGlobalParameters (std::map< std::string, double > &)
 
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
 
const char * getEntityType () const
 
const std::string & getName () const
 
void setDefaultParamName (const std::string &default_param_name)
 
const std::vector< Depend > & getDependentParams ()
 
const DeviceOptionsgetDeviceOptions () const
 
const SolverStategetSolverState () const
 
const NetlistLocation & netlistLocation () const
 
const ParameterMapgetParameterMap () const
 
- Public Member Functions inherited from Xyce::Device::ParameterBase
 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 &)
 

Private Attributes

Modelmodel_
 
bool isCSparse
 
bool isGSparse
 
bool maskROMVars
 
int usePortDesc
 
int numROMVars
 
std::string baseFileName
 
std::vector< double > Chat
 
std::vector< int > Chat_colIdx
 
std::vector< int > Chat_rowPtr
 
std::vector< double > Ghat
 
std::vector< int > Ghat_colIdx
 
std::vector< int > Ghat_rowPtr
 
std::vector< int > CG_colIdx
 
std::vector< int > CG_rowPtr
 
std::vector< double > Bhat
 
std::vector< double > Lhat
 
std::vector< double > Qhat
 
std::vector< double > Fhat
 
std::vector< double > i_ip
 
std::vector< double > Jstamp
 
std::vector< double > Fstamp
 
std::vector< double > G2
 
std::vector< double > C2
 
std::vector< double > A2
 
std::vector< double > A2last
 
std::vector< double > G2p
 
std::vector< double > Gp2
 
std::vector< double > A2sol
 
double dt
 
double dt_last
 
double alph
 
double alph_last
 
double coef
 
double coefLast
 
double currentOrder
 
double usedOrder
 
int lastTimeStepNumber
 
std::vector< int > ipiv_A2
 
std::vector< int > li_ROM
 
std::vector< int > li_state
 
std::vector< int > AEqu_up_NodeOffset
 
std::vector< int > AEqu_ip_NodeOffset
 
std::vector< std::vector< int > > AEqu_NodeOffset
 
std::vector< int > ROMEqu_Lt_NodeOffset
 
std::vector< int > ROMEqu_B_NodeOffset
 
std::vector< int > ROMEqu_GpC_NodeOffset
 
std::vector< int > ROMEqu_C_NodeOffset
 
std::vector< int > ROMEqu_G_NodeOffset
 
std::vector< double * > fEqu_up_NodePtr
 
std::vector< double * > fEqu_ip_NodePtr
 
std::vector< double * > fEqu_un_NodePtr
 
std::vector< double * > qROMEqu_Chat_VarsPtrs
 
std::vector< double * > fROMEqu_Ghat_VarsPtrs
 
std::vector< double * > fROMEqu_Lhat_VarsPtrs
 
std::vector< double * > fROMEqu_Bhat_VarsPtrs
 
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 numLeadCurrentStoreVars
 
bool loadLeadCurrent
 
std::vector< int > devConMap
 
bool mergeRowColChecked
 
- Protected Member Functions inherited from Xyce::Device::DeviceInstance
void jacStampMap (std::vector< std::vector< int > > &stamp_parent, std::vector< int > &map_parent, std::vector< std::vector< int > > &map2_parent, std::vector< std::vector< int > > &stamp, std::vector< int > &map, std::vector< std::vector< int > > &map2, int from, int to, int original_size)
 
void jacStampMap_fixOrder (std::vector< std::vector< int > > &stamp_parent, std::vector< std::vector< int > > &map2_parent, std::vector< std::vector< int > > &stamp, std::vector< std::vector< int > > &map2)
 
void outputJacStamp (const std::vector< std::vector< int > > &jac)
 
void outputJacMaps (const std::vector< int > &jacMap, const std::vector< std::vector< int > > &jacMap2)
 
- Protected Attributes inherited from Xyce::Device::DeviceInstance
const ExternDataextData
 
std::list< index_pair > intGIDList
 
std::list< index_pair > extGIDList
 
std::list< index_pair > indexPairList
 
std::list< index_pair > staGIDList
 
std::vector< int > intLIDVec
 
std::vector< int > extLIDVec
 
std::vector< int > staLIDVec
 
std::vector< int > stoLIDVec
 
std::vector< int > devLIDs
 
std::vector< std::vector< int > > devJacLIDs
 
std::map< int, std::string > intNameMap
 
std::map< int, std::string > stateNameMap
 
std::map< int, std::string > storeNameMap
 
DeviceSupport devSupport
 

Detailed Description

Definition at line 85 of file N_DEV_ROM.h.

Constructor & Destructor Documentation

Xyce::Device::ROM::Instance::Instance ( const Configuration configuration,
const InstanceBlock IB,
Model Citer,
const FactoryBlock factory_block 
)

Definition at line 139 of file N_DEV_ROM.C.

Xyce::Device::ROM::Instance::~Instance ( )

Definition at line 643 of file N_DEV_ROM.C.

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

Member Function Documentation

std::map< int, std::string > & Xyce::Device::ROM::Instance::getIntNameMap ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 732 of file N_DEV_ROM.C.

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

Definition at line 142 of file N_DEV_ROM.h.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 767 of file N_DEV_ROM.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 1187 of file N_DEV_ROM.C.

bool Xyce::Device::ROM::Instance::loadDAEdQdx ( )
virtual

Implements Xyce::Device::DeviceInstance.

Definition at line 1148 of file N_DEV_ROM.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 1115 of file N_DEV_ROM.C.

bool Xyce::Device::ROM::Instance::loadDAEQVector ( )
virtual

Implements Xyce::Device::DeviceInstance.

Definition at line 1093 of file N_DEV_ROM.C.

bool Xyce::Device::ROM::Instance::loadDeviceMask ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 1064 of file N_DEV_ROM.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 113 of file N_DEV_ROM.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 780 of file N_DEV_ROM.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 657 of file N_DEV_ROM.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 711 of file N_DEV_ROM.C.

bool Xyce::Device::ROM::Instance::setIC ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 1250 of file N_DEV_ROM.C.

void Xyce::Device::ROM::Instance::setupPointers ( )
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 919 of file N_DEV_ROM.C.

bool Xyce::Device::ROM::Instance::updateIntermediateVars ( )
inlinevirtual

Implements Xyce::Device::DeviceInstance.

Definition at line 120 of file N_DEV_ROM.h.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 1009 of file N_DEV_ROM.C.

bool Xyce::Device::ROM::Instance::updateTemperature ( const double &  temp_tmp)
virtual

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 126 of file N_DEV_ROM.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 1263 of file N_DEV_ROM.C.

Friends And Related Function Documentation

friend class Master
friend

Definition at line 89 of file N_DEV_ROM.h.

friend class Model
friend

Definition at line 88 of file N_DEV_ROM.h.

friend class ParametricData< Instance >
friend

Definition at line 87 of file N_DEV_ROM.h.

friend class Traits
friend

Definition at line 89 of file N_DEV_ROM.h.

Member Data Documentation

std::vector<double> Xyce::Device::ROM::Instance::A2
private

Definition at line 176 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::A2last
private

Definition at line 177 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::A2sol
private

Definition at line 180 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::AEqu_ip_NodeOffset
private

Definition at line 192 of file N_DEV_ROM.h.

std::vector< std::vector<int> > Xyce::Device::ROM::Instance::AEqu_NodeOffset
private

Definition at line 193 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::AEqu_up_NodeOffset
private

Definition at line 191 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::alph
private

Definition at line 181 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::alph_last
private

Definition at line 181 of file N_DEV_ROM.h.

std::string Xyce::Device::ROM::Instance::baseFileName
private

Definition at line 159 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Bhat
private

Definition at line 165 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::C2
private

Definition at line 175 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::CG_colIdx
private

Definition at line 164 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::CG_rowPtr
private

Definition at line 164 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Chat
private

Definition at line 160 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::Chat_colIdx
private

Definition at line 161 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::Chat_rowPtr
private

Definition at line 161 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::coef
private

Definition at line 181 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::coefLast
private

Definition at line 181 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::currentOrder
private

Definition at line 182 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::dt
private

Definition at line 181 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::dt_last
private

Definition at line 181 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::fEqu_ip_NodePtr
private

Definition at line 203 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::fEqu_un_NodePtr
private

Definition at line 204 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::fEqu_up_NodePtr
private

Definition at line 202 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Fhat
private

Definition at line 168 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::fROMEqu_Bhat_VarsPtrs
private

Definition at line 209 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::fROMEqu_Ghat_VarsPtrs
private

Definition at line 207 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::fROMEqu_Lhat_VarsPtrs
private

Definition at line 208 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Fstamp
private

Definition at line 173 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::G2
private

Definition at line 174 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::G2p
private

Definition at line 178 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Ghat
private

Definition at line 162 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::Ghat_colIdx
private

Definition at line 163 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::Ghat_rowPtr
private

Definition at line 163 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Gp2
private

Definition at line 179 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::i_ip
private

Definition at line 169 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::ipiv_A2
private

Definition at line 184 of file N_DEV_ROM.h.

bool Xyce::Device::ROM::Instance::isCSparse
private

Definition at line 152 of file N_DEV_ROM.h.

bool Xyce::Device::ROM::Instance::isGSparse
private

Definition at line 153 of file N_DEV_ROM.h.

std::vector< std::vector<int> > Xyce::Device::ROM::Instance::jacStamp
private

Definition at line 211 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Jstamp
private

Definition at line 172 of file N_DEV_ROM.h.

int Xyce::Device::ROM::Instance::lastTimeStepNumber
private

Definition at line 183 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Lhat
private

Definition at line 166 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::li_ROM
private

Definition at line 187 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::li_state
private

Definition at line 188 of file N_DEV_ROM.h.

bool Xyce::Device::ROM::Instance::maskROMVars
private

Definition at line 156 of file N_DEV_ROM.h.

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

Definition at line 149 of file N_DEV_ROM.h.

int Xyce::Device::ROM::Instance::numROMVars
private

Definition at line 158 of file N_DEV_ROM.h.

std::vector<double> Xyce::Device::ROM::Instance::Qhat
private

Definition at line 167 of file N_DEV_ROM.h.

std::vector<double *> Xyce::Device::ROM::Instance::qROMEqu_Chat_VarsPtrs
private

Definition at line 206 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::ROMEqu_B_NodeOffset
private

Definition at line 195 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::ROMEqu_C_NodeOffset
private

Definition at line 198 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::ROMEqu_G_NodeOffset
private

Definition at line 199 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::ROMEqu_GpC_NodeOffset
private

Definition at line 196 of file N_DEV_ROM.h.

std::vector<int> Xyce::Device::ROM::Instance::ROMEqu_Lt_NodeOffset
private

Definition at line 194 of file N_DEV_ROM.h.

double Xyce::Device::ROM::Instance::usedOrder
private

Definition at line 182 of file N_DEV_ROM.h.

int Xyce::Device::ROM::Instance::usePortDesc
private

Definition at line 157 of file N_DEV_ROM.h.


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