Xyce  6.1
Xyce::Device::Resistor::Model Class Reference

Resistor model class. More...

#include <N_DEV_Resistor.h>

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

Public Types

typedef std::vector< Instance * > InstanceVector
 

Public Member Functions

 Model (const Configuration &configuration, const ModelBlock &model_block, const FactoryBlock &factory_block)
 Construct a resistor model from a "model block" that was created by the netlist parser. More...
 
 ~Model ()
 Destroy this model. More...
 
void addInstance (Instance *instance)
 Add an instance to the list of instances associated with this model. More...
 
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
 Print instances associated with this model. More...
 
virtual bool processParams ()
 Process model parameters. More...
 
virtual bool processInstanceParams ()
 Process the instance parameters of instance owned by this model. More...
 
- Public Member Functions inherited from Xyce::Device::DeviceModel
 DeviceModel (const ModelBlock &model_block, ParametricData< void > &parametric_data, const FactoryBlock &factory_block)
 
virtual ~DeviceModel ()
 
const std::string & getName () const
 
void setModParams (const std::vector< Param > &params)
 
virtual std::ostream & printName (std::ostream &os) const
 
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 (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

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

Private Attributes

InstanceVector instanceContainer
 List of owned resistor instances. More...
 
double tempCoeff1
 First order temperature coefficient. More...
 
double tempCoeff2
 Second order temperature coefficient. More...
 
double sheetRes
 Sheet resistance. More...
 
double resistanceMultiplier
 resistance multiplier More...
 
double defWidth
 Default width. More...
 
double narrow
 Narrowing due to side etching. More...
 
double tnom
 Parameter measurement temperature. More...
 

Friends

class ParametricData< Model >
 Allow ParametricData to changes member values. More...
 
class Instance
 Don't force a lot of pointless getters. More...
 
class Traits
 
class Master
 Don't force a lot of pointless getters. More...
 

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< int > expVarGIDs
 
std::vector< int > expVarLIDs
 
std::vector< std::string > expVarNames
 
std::vector< double > expVarVals
 
std::vector< double > eVarVals
 

Detailed Description

Resistor model class.

Definition at line 332 of file N_DEV_Resistor.h.

Member Typedef Documentation

Definition at line 340 of file N_DEV_Resistor.h.

Constructor & Destructor Documentation

Xyce::Device::Resistor::Model::Model ( const Configuration configuration,
const ModelBlock model_block,
const FactoryBlock factory_block 
)

Construct a resistor model from a "model block" that was created by the netlist parser.

Parameters
configuration
model_block
factory_block
Author
Eric Keiter, SNL, Parallel Computational Sciences
Date
5/16/00

Definition at line 1001 of file N_DEV_Resistor.C.

Xyce::Device::Resistor::Model::~Model ( )

Destroy this model.

Also destroys all instances that use this model.

Author
Eric Keiter, SNL, Parallel Computational Sciences
Date
3/16/00

Definition at line 1046 of file N_DEV_Resistor.C.

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

Member Function Documentation

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

Add an instance to the list of instances associated with this model.

Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
8/12/2013

Definition at line 368 of file N_DEV_Resistor.h.

void Xyce::Device::Resistor::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 1111 of file N_DEV_Resistor.C.

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

Print instances associated with this model.

Used only for debugging

Parameters
osoutput stream
Returns
reference to output stream
Author
Eric Keiter, SNL, Parallel Computational Sciences
Date
4/03/00

Implements Xyce::Device::DeviceModel.

Definition at line 1075 of file N_DEV_Resistor.C.

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

Process the instance parameters of instance owned by this model.

This method simply loops over all instances associated with this model and calls their processParams method.

Returns
true
Author
Dave Shirely, PSSI
Date
03/23/06

Implements Xyce::Device::DeviceModel.

Definition at line 974 of file N_DEV_Resistor.C.

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

Process model parameters.

Returns
true on success
Author
Eric Keiter, SNL, Parallel Computational Sciences
Date
6/03/02

Implements Xyce::Device::DeviceModel.

Definition at line 950 of file N_DEV_Resistor.C.

Friends And Related Function Documentation

friend class Instance
friend

Don't force a lot of pointless getters.

Definition at line 335 of file N_DEV_Resistor.h.

friend class Master
friend

Don't force a lot of pointless getters.

Definition at line 337 of file N_DEV_Resistor.h.

friend class ParametricData< Model >
friend

Allow ParametricData to changes member values.

Definition at line 334 of file N_DEV_Resistor.h.

friend class Traits
friend

Definition at line 336 of file N_DEV_Resistor.h.

Member Data Documentation

double Xyce::Device::Resistor::Model::defWidth
private

Default width.

Definition at line 388 of file N_DEV_Resistor.h.

InstanceVector Xyce::Device::Resistor::Model::instanceContainer
private

List of owned resistor instances.

Definition at line 381 of file N_DEV_Resistor.h.

double Xyce::Device::Resistor::Model::narrow
private

Narrowing due to side etching.

Definition at line 389 of file N_DEV_Resistor.h.

double Xyce::Device::Resistor::Model::resistanceMultiplier
private

resistance multiplier

Definition at line 387 of file N_DEV_Resistor.h.

double Xyce::Device::Resistor::Model::sheetRes
private

Sheet resistance.

Definition at line 386 of file N_DEV_Resistor.h.

double Xyce::Device::Resistor::Model::tempCoeff1
private

First order temperature coefficient.

Definition at line 384 of file N_DEV_Resistor.h.

double Xyce::Device::Resistor::Model::tempCoeff2
private

Second order temperature coefficient.

Definition at line 385 of file N_DEV_Resistor.h.

double Xyce::Device::Resistor::Model::tnom
private

Parameter measurement temperature.

Definition at line 390 of file N_DEV_Resistor.h.


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