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

#include <N_DEV_Synapse3.h>

Inheritance diagram for Xyce::Device::Synapse3::Model:
Collaboration diagram for Xyce::Device::Synapse3::Model:

Public Member Functions

 Model (const Configuration &configuration, const ModelBlock &MB, const FactoryBlock &factory_block)
 
 ~Model ()
 
virtual void forEachInstance (DeviceInstanceOp &op) const
 Apply a device instance "op" to all instances associated with this model. More...
 
virtual std::ostream & printOutInstances (std::ostream &os) const
 
bool processParams ()
 processParams More...
 
bool processInstanceParams ()
 processInstanceParams More...
 
void addInstance (Instance *instance)
 
InstanceVectorgetInstanceVector ()
 
const InstanceVectorgetInstanceVector () const
 
- Public Member Functions inherited from Xyce::Device::DeviceModel
 DeviceModel (const ModelBlock &model_block, ParametricData< void > &parametric_data, const FactoryBlock &factory_block)
 
virtual ~DeviceModel ()
 
void setModParams (const std::vector< Param > &params)
 
virtual bool clearTemperatureData ()
 
void saveParams ()
 
bool interpolateTNOM (double)
 
bool interpolateDOSE (double)
 
void restoreParams ()
 
virtual bool getBinPrefixFlag ()
 
int getLevel () const
 
void setLevel (int level)
 
const std::string & getType () const
 
- 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 Types

typedef std::vector< Instance * > InstanceVector
 

Private Member Functions

 Model ()
 
 Model (const Model &)
 
Modeloperator= (const Model &)
 

Private Attributes

std::vector< Instance * > instanceContainer
 
double vThresh
 
double gMax
 
double delay
 
double eRev
 
double tau1
 
double tau2
 
double sParam
 
double rParam
 
double wMin
 
double wMax
 
double wInitialValue
 
double vL1tau1
 
double vL2tau2
 
double vL3tau3
 
double aLTD
 
double aLTP
 
double transmissionProbability
 
double tp
 
double factor
 

Friends

class ParametricData< Model >
 
class Instance
 
class Traits
 

Additional Inherited Members

- Static Public Member Functions inherited from Xyce::Device::DeviceModel
template<class T >
static void initThermalModel (ParametricData< T > &parametric_data)
 Add the parameter "TEMPMODEL" to the parametric_data. More...
 
template<class T >
static void initDoseModel (ParametricData< T > &parametric_data)
 Add the parameter "DOSEMODEL" to the parametric_data. More...
 
- Protected Attributes inherited from Xyce::Device::DeviceEntity
std::vector< DependdependentParams
 
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 228 of file N_DEV_Synapse3.h.

Member Typedef Documentation

Definition at line 230 of file N_DEV_Synapse3.h.

Constructor & Destructor Documentation

Xyce::Device::Synapse3::Model::Model ( const Configuration configuration,
const ModelBlock MB,
const FactoryBlock factory_block 
)

Definition at line 885 of file N_DEV_Synapse3.C.

Xyce::Device::Synapse3::Model::~Model ( )

Definition at line 921 of file N_DEV_Synapse3.C.

Xyce::Device::Synapse3::Model::Model ( )
private
Xyce::Device::Synapse3::Model::Model ( const Model )
private

Member Function Documentation

void Xyce::Device::Synapse3::Model::addInstance ( Instance instance)
inline

Definition at line 258 of file N_DEV_Synapse3.h.

void Xyce::Device::Synapse3::Model::forEachInstance ( DeviceInstanceOp op) const
virtual

Apply a device instance "op" to all instances associated with this model.

Parameters
[in]opOperator to apply to all instances.

Implements Xyce::Device::DeviceModel.

Definition at line 977 of file N_DEV_Synapse3.C.

InstanceVector& Xyce::Device::Synapse3::Model::getInstanceVector ( )
inline

Definition at line 263 of file N_DEV_Synapse3.h.

const InstanceVector& Xyce::Device::Synapse3::Model::getInstanceVector ( ) const
inline

Definition at line 268 of file N_DEV_Synapse3.h.

Model& Xyce::Device::Synapse3::Model::operator= ( const Model )
private
std::ostream & Xyce::Device::Synapse3::Model::printOutInstances ( std::ostream &  os) const
virtual

Implements Xyce::Device::DeviceModel.

Definition at line 941 of file N_DEV_Synapse3.C.

bool Xyce::Device::Synapse3::Model::processInstanceParams ( )
virtual

processInstanceParams

Returns
true if parameter processing was successful

Implements Xyce::Device::DeviceModel.

Definition at line 862 of file N_DEV_Synapse3.C.

bool Xyce::Device::Synapse3::Model::processParams ( )
virtual

processParams

Returns
true if parameter processing was successful

Implements Xyce::Device::DeviceModel.

Definition at line 841 of file N_DEV_Synapse3.C.

Friends And Related Function Documentation

friend class Instance
friend

Definition at line 233 of file N_DEV_Synapse3.h.

friend class ParametricData< Model >
friend

Definition at line 232 of file N_DEV_Synapse3.h.

friend class Traits
friend

Definition at line 234 of file N_DEV_Synapse3.h.

Member Data Documentation

double Xyce::Device::Synapse3::Model::aLTD
private

Definition at line 294 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::aLTP
private

Definition at line 295 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::delay
private

Definition at line 281 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::eRev
private

Definition at line 282 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::factor
private

Definition at line 300 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::gMax
private

Definition at line 280 of file N_DEV_Synapse3.h.

std::vector<Instance*> Xyce::Device::Synapse3::Model::instanceContainer
private

Definition at line 274 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::rParam
private

Definition at line 287 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::sParam
private

Definition at line 286 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::tau1
private

Definition at line 283 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::tau2
private

Definition at line 284 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::tp
private

Definition at line 299 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::transmissionProbability
private

Definition at line 296 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::vL1tau1
private

Definition at line 291 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::vL2tau2
private

Definition at line 292 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::vL3tau3
private

Definition at line 293 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::vThresh
private

Definition at line 279 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::wInitialValue
private

Definition at line 290 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::wMax
private

Definition at line 289 of file N_DEV_Synapse3.h.

double Xyce::Device::Synapse3::Model::wMin
private

Definition at line 288 of file N_DEV_Synapse3.h.


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