Xyce  6.1
Xyce::Device::Neuron7::Instance Class Reference

#include <N_DEV_Neuron7.h>

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

Public Member Functions

 Instance (const Configuration &configuration, const InstanceBlock &IB, Model &Miter, 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 updateTemperature (const double &temp_tmp)
 
bool updateIntermediateVars ()
 
bool updatePrimaryState ()
 
bool updateSecondaryState ()
 
bool setIC ()
 
void varTypes (std::vector< char > &varTypeVec)
 
bool loadDAEQVector ()
 
bool loadDAEFVector ()
 
void auxDAECalculations ()
 
bool loadDAEdQdx ()
 
bool loadDAEdFdx ()
 
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 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 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 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 DeviceStategetInternalState ()
 
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 ()
 
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)
 

Static Public Attributes

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

Private Member Functions

 Instance (const Instance &)
 
Instanceoperator= (const Instance &)
 

Private Attributes

Modelmodel_
 
double memCap
 
double Vt
 
double Vr
 
double Vpeak
 
double k
 
double a
 
double b
 
double c
 
double d
 
double uscale
 
double fallRate
 
bool memCapGiven
 
bool VtGiven
 
bool VrGiven
 
bool VpeakGiven
 
bool kGiven
 
bool aGiven
 
bool bGiven
 
bool cGiven
 
bool dGiven
 
bool uscaleGiven
 
bool fallRateGiven
 
double vEquFvalue
 
double vEquQvalue
 
double vEqudFdv
 
double vEqudFdu
 
double vEqudQdv
 
double uEquFvalue
 
double uEquQvalue
 
double uEqudFdv
 
double uEqudFdu
 
double uEqudQdu
 
bool resetting
 
double uPeak
 
int li_V
 
int li_U
 
int vEquVOffset
 
int vEquUOffset
 
int uEquVOffset
 
int uEquUOffset
 

Friends

class ParametricData< Instance >
 
class Model
 
class Traits
 

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_Neuron7.h.

Constructor & Destructor Documentation

Xyce::Device::Neuron7::Instance::Instance ( const Configuration configuration,
const InstanceBlock IB,
Model Miter,
const FactoryBlock factory_block 
)

Definition at line 223 of file N_DEV_Neuron7.C.

Xyce::Device::Neuron7::Instance::~Instance ( )

Definition at line 428 of file N_DEV_Neuron7.C.

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

Member Function Documentation

void Xyce::Device::Neuron7::Instance::auxDAECalculations ( )
Model& Xyce::Device::Neuron7::Instance::getModel ( )
inline

Definition at line 142 of file N_DEV_Neuron7.h.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 541 of file N_DEV_Neuron7.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 809 of file N_DEV_Neuron7.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 783 of file N_DEV_Neuron7.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 762 of file N_DEV_Neuron7.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 739 of file N_DEV_Neuron7.C.

void Xyce::Device::Neuron7::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 515 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 440 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 554 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 473 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 528 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 832 of file N_DEV_Neuron7.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 573 of file N_DEV_Neuron7.C.

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

Implements Xyce::Device::DeviceInstance.

Definition at line 700 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 717 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 459 of file N_DEV_Neuron7.C.

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

Reimplemented from Xyce::Device::DeviceInstance.

Definition at line 847 of file N_DEV_Neuron7.C.

Friends And Related Function Documentation

friend class Model
friend

Definition at line 90 of file N_DEV_Neuron7.h.

friend class ParametricData< Instance >
friend

Definition at line 89 of file N_DEV_Neuron7.h.

friend class Traits
friend

Definition at line 91 of file N_DEV_Neuron7.h.

Member Data Documentation

double Xyce::Device::Neuron7::Instance::a
private

Definition at line 156 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::aGiven
private

Definition at line 168 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::b
private

Definition at line 157 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::bGiven
private

Definition at line 169 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::c
private

Definition at line 158 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::cGiven
private

Definition at line 170 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::d
private

Definition at line 159 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::dGiven
private

Definition at line 171 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::fallRate
private

Definition at line 161 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::fallRateGiven
private

Definition at line 173 of file N_DEV_Neuron7.h.

std::vector< std::vector< int > > Xyce::Device::Neuron7::Instance::jacStamp
static

Definition at line 94 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::k
private

Definition at line 155 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::kGiven
private

Definition at line 167 of file N_DEV_Neuron7.h.

int Xyce::Device::Neuron7::Instance::li_U
private

Definition at line 201 of file N_DEV_Neuron7.h.

int Xyce::Device::Neuron7::Instance::li_V
private

Definition at line 200 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::memCap
private

Definition at line 151 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::memCapGiven
private

Definition at line 163 of file N_DEV_Neuron7.h.

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

Definition at line 148 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::resetting
private

Definition at line 196 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uEqudFdu
private

Definition at line 191 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uEqudFdv
private

Definition at line 190 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uEqudQdu
private

Definition at line 192 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uEquFvalue
private

Definition at line 188 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uEquQvalue
private

Definition at line 189 of file N_DEV_Neuron7.h.

int Xyce::Device::Neuron7::Instance::uEquUOffset
private

Definition at line 207 of file N_DEV_Neuron7.h.

int Xyce::Device::Neuron7::Instance::uEquVOffset
private

Definition at line 206 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uPeak
private

Definition at line 197 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::uscale
private

Definition at line 160 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::uscaleGiven
private

Definition at line 172 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::vEqudFdu
private

Definition at line 186 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::vEqudFdv
private

Definition at line 185 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::vEqudQdv
private

Definition at line 187 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::vEquFvalue
private

Definition at line 183 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::vEquQvalue
private

Definition at line 184 of file N_DEV_Neuron7.h.

int Xyce::Device::Neuron7::Instance::vEquUOffset
private

Definition at line 205 of file N_DEV_Neuron7.h.

int Xyce::Device::Neuron7::Instance::vEquVOffset
private

Definition at line 204 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::Vpeak
private

Definition at line 154 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::VpeakGiven
private

Definition at line 166 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::Vr
private

Definition at line 153 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::VrGiven
private

Definition at line 165 of file N_DEV_Neuron7.h.

double Xyce::Device::Neuron7::Instance::Vt
private

Definition at line 152 of file N_DEV_Neuron7.h.

bool Xyce::Device::Neuron7::Instance::VtGiven
private

Definition at line 164 of file N_DEV_Neuron7.h.


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