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

#include <N_DEV_MutIndNonLin.h>

Inheritance diagram for Xyce::Device::MutIndNonLin::Model:
Collaboration diagram for Xyce::Device::MutIndNonLin::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 A
 
double Alpha
 
double Area
 
double BetaH
 
double BetaM
 
double C
 
double DeltaVScaling
 
double Gap
 
double Kirr
 
double Ms
 
double LevelIgnored
 
double PackIgnored
 
double Path
 
double tempCoeff1
 
double tempCoeff2
 
double tnom
 
double pZeroTol
 
double HCgsFactor
 
double BCgsFactor
 
double mVarScaling
 
double rVarScaling
 
double mEqScaling
 
double rEqScaling
 
int outputStateVars
 
int factorMS
 
int BHSiUnits
 
bool tc1Given
 
bool tc2Given
 
bool tnomGiven
 
bool UseConstantDeltaVScaling
 

Friends

class ParametricData< Model >
 
class Instance
 
class Traits
 
class Master
 

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 254 of file N_DEV_MutIndNonLin.h.

Member Typedef Documentation

Definition at line 256 of file N_DEV_MutIndNonLin.h.

Constructor & Destructor Documentation

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

Definition at line 1874 of file N_DEV_MutIndNonLin.C.

Xyce::Device::MutIndNonLin::Model::~Model ( )

Definition at line 1952 of file N_DEV_MutIndNonLin.C.

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

Member Function Documentation

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

Definition at line 285 of file N_DEV_MutIndNonLin.h.

void Xyce::Device::MutIndNonLin::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 2012 of file N_DEV_MutIndNonLin.C.

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

Definition at line 290 of file N_DEV_MutIndNonLin.h.

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

Definition at line 295 of file N_DEV_MutIndNonLin.h.

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

Implements Xyce::Device::DeviceModel.

Definition at line 1974 of file N_DEV_MutIndNonLin.C.

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

processInstanceParams

Returns
true if parameter processing was successful

Implements Xyce::Device::DeviceModel.

Definition at line 1852 of file N_DEV_MutIndNonLin.C.

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

processParams

Returns
true if parameter processing was successful

Implements Xyce::Device::DeviceModel.

Definition at line 1839 of file N_DEV_MutIndNonLin.C.

Friends And Related Function Documentation

friend class Instance
friend

Definition at line 259 of file N_DEV_MutIndNonLin.h.

friend class Master
friend

Definition at line 260 of file N_DEV_MutIndNonLin.h.

friend class ParametricData< Model >
friend

Definition at line 258 of file N_DEV_MutIndNonLin.h.

friend class Traits
friend

Definition at line 260 of file N_DEV_MutIndNonLin.h.

Member Data Documentation

double Xyce::Device::MutIndNonLin::Model::A
private

Definition at line 305 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::Alpha
private

Definition at line 306 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::Area
private

Definition at line 307 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::BCgsFactor
private

Definition at line 323 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::BetaH
private

Definition at line 308 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::BetaM
private

Definition at line 309 of file N_DEV_MutIndNonLin.h.

int Xyce::Device::MutIndNonLin::Model::BHSiUnits
private

Definition at line 330 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::C
private

Definition at line 310 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::DeltaVScaling
private

Definition at line 311 of file N_DEV_MutIndNonLin.h.

int Xyce::Device::MutIndNonLin::Model::factorMS
private

Definition at line 329 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::Gap
private

Definition at line 312 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::HCgsFactor
private

Definition at line 322 of file N_DEV_MutIndNonLin.h.

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

Definition at line 301 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::Kirr
private

Definition at line 313 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::LevelIgnored
private

Definition at line 315 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::mEqScaling
private

Definition at line 326 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::Ms
private

Definition at line 314 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::mVarScaling
private

Definition at line 324 of file N_DEV_MutIndNonLin.h.

int Xyce::Device::MutIndNonLin::Model::outputStateVars
private

Definition at line 328 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::PackIgnored
private

Definition at line 316 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::Path
private

Definition at line 317 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::pZeroTol
private

Definition at line 321 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::rEqScaling
private

Definition at line 327 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::rVarScaling
private

Definition at line 325 of file N_DEV_MutIndNonLin.h.

bool Xyce::Device::MutIndNonLin::Model::tc1Given
private

Definition at line 334 of file N_DEV_MutIndNonLin.h.

bool Xyce::Device::MutIndNonLin::Model::tc2Given
private

Definition at line 335 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::tempCoeff1
private

Definition at line 318 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::tempCoeff2
private

Definition at line 319 of file N_DEV_MutIndNonLin.h.

double Xyce::Device::MutIndNonLin::Model::tnom
private

Definition at line 320 of file N_DEV_MutIndNonLin.h.

bool Xyce::Device::MutIndNonLin::Model::tnomGiven
private

Definition at line 336 of file N_DEV_MutIndNonLin.h.

bool Xyce::Device::MutIndNonLin::Model::UseConstantDeltaVScaling
private

Definition at line 337 of file N_DEV_MutIndNonLin.h.


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