Xyce
6.1
|
#include <N_DEV_DeviceEntity.h>
Public Member Functions | |
DeviceEntity (const char *const entity_type, const std::string &device_name, ParametricData< void > ¶metric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_path, int netlist_line) | |
virtual | ~DeviceEntity () |
virtual bool | processParams ()=0 |
virtual bool | processInstanceParams ()=0 |
virtual CompositeParam * | constructComposite (const std::string &composite_name, const std::string ¶m_name) |
bool | setDefaultParam (double val) |
double | getDefaultParam () |
bool | scaleParam (const std::string ¶mName, double val, double val0) |
bool | scaleParam (const std::string ¶mName, double val) |
bool | scaleDefaultParam (double val) |
bool | setParam (const std::string ¶mName, double val) |
bool | getParam (const std::string ¶mName, 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 > ¶ms) |
bool | given (const std::string ¶meter_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 DeviceOptions & | getDeviceOptions () const |
const SolverState & | getSolverState () const |
const NetlistLocation & | netlistLocation () const |
const ParameterMap & | getParameterMap () const |
![]() | |
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) |
Protected Attributes | |
std::vector< Depend > | dependentParams |
std::vector< int > | expVarGIDs |
std::vector< int > | expVarLIDs |
std::vector< std::string > | expVarNames |
std::vector< double > | expVarVals |
std::vector< double > | eVarVals |
Private Member Functions | |
DeviceEntity (const DeviceEntity &) | |
DeviceEntity & | operator= (const DeviceEntity &) |
void | escape (std::string &) const |
void | checkDepend (ParameterType::ExprAccess &) |
Private Attributes | |
const char *const | entityType_ |
std::string | name_ |
std::string | defaultParamName_ |
ParametricData< void > & | parametricData_ |
NetlistLocation | netlistLocation_ |
const SolverState & | solState_ |
const DeviceOptions & | devOptions_ |
Definition at line 97 of file N_DEV_DeviceEntity.h.
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 | ||
) |
Definition at line 75 of file N_DEV_DeviceEntity.C.
|
private |
|
virtual |
Definition at line 100 of file N_DEV_DeviceEntity.C.
|
private |
|
inlinevirtual |
Reimplemented in Xyce::Device::RxnSet::Model, Xyce::Device::TwoDPDE::Instance, Xyce::Device::Xygra::Instance, and Xyce::Device::DiodePDE::Instance.
Definition at line 120 of file N_DEV_DeviceEntity.h.
|
private |
double Xyce::Device::DeviceEntity::getDefaultParam | ( | ) |
Definition at line 348 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 173 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 178 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 158 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 163 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::getParam | ( | const std::string & | paramName, |
double & | result | ||
) |
Definition at line 283 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::getParamBreakpoints | ( | std::vector< Util::BreakPoint > & | breakPointTimes | ) |
Definition at line 692 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 193 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 183 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::given | ( | const std::string & | parameter_name | ) | const |
Definition at line 716 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 188 of file N_DEV_DeviceEntity.h.
|
private |
|
pure virtual |
Implemented in Xyce::Device::MOSFET_B3SOI::Model, Xyce::Device::MOSFET_B4::Model, Xyce::Device::MOSFET_B3::Model, Xyce::Device::VDMOS::Model, Xyce::Device::Neuron4::Model, Xyce::Device::MOSFET1::Model, Xyce::Device::ADMSHBT_X::Model, Xyce::Device::Neuron2::Model, Xyce::Device::ADMSPSP103VA::Model, Xyce::Device::TwoDPDE::Model, Xyce::Device::BJT::Model, Xyce::Device::DiodePDE::Model, Xyce::Device::MOSFET3::Model, Xyce::Device::MOSFET2::Model, Xyce::Device::MOSFET6::Model, Xyce::Device::ADMSvbic::Model, Xyce::Device::Neuron3::Model, Xyce::Device::ADMSbsimcmg::Model, Xyce::Device::Neuron::Model, Xyce::Device::JFET::Model, Xyce::Device::MESFET::Model, Xyce::Device::Neuron9::Model, Xyce::Device::Resistor::Model, Xyce::Device::TRA::Model, Xyce::Device::LTRA::Model, Xyce::Device::Neuron6::Model, Xyce::Device::MutIndLin::Model, Xyce::Device::Xygra::Model, Xyce::Device::RxnSet::Model, Xyce::Device::Neuron5::Model, Xyce::Device::Diode::Model, Xyce::Device::MutIndNonLin::Model, Xyce::Device::Resistor3::Model, Xyce::Device::Vsrc::Model, Xyce::Device::MutIndNonLin2::Model, Xyce::Device::Capacitor::Model, Xyce::Device::Digital::Model, Xyce::Device::Inductor::Model, Xyce::Device::Synapse3::Model, Xyce::Device::Neuron7::Model, Xyce::Device::Neuron8::Model, Xyce::Device::ROM::Model, Xyce::Device::SW::Model, Xyce::Device::ThermalResistor::Model, Xyce::Device::Bsrc::Model, Xyce::Device::Synapse4::Model, Xyce::Device::TransLine::Model, Xyce::Device::NeuronPop1::Model, Xyce::Device::DAC::Model, Xyce::Device::ACC::Model, Xyce::Device::Synapse::Model, Xyce::Device::Synapse2::Model, Xyce::Device::ISRC::Model, Xyce::Device::Vcvs::Model, Xyce::Device::ADC::Model, Xyce::Device::OpAmp::Model, Xyce::Device::VCCS::Model, Xyce::Device::DeviceInstance, and Xyce::Device::DeviceModel.
|
pure virtual |
Implemented in Xyce::Device::MOSFET_B3SOI::Model, Xyce::Device::MOSFET_B4::Model, Xyce::Device::MOSFET_B3::Model, Xyce::Device::VDMOS::Model, Xyce::Device::Neuron4::Model, Xyce::Device::MOSFET1::Model, Xyce::Device::ADMSHBT_X::Model, Xyce::Device::Neuron2::Model, Xyce::Device::ADMSPSP103VA::Model, Xyce::Device::TwoDPDE::Model, Xyce::Device::BJT::Model, Xyce::Device::DiodePDE::Model, Xyce::Device::MOSFET3::Model, Xyce::Device::MOSFET2::Model, Xyce::Device::MOSFET6::Model, Xyce::Device::ADMSvbic::Model, Xyce::Device::Neuron3::Model, Xyce::Device::ADMSbsimcmg::Model, Xyce::Device::Neuron::Model, Xyce::Device::JFET::Model, Xyce::Device::MESFET::Model, Xyce::Device::Neuron9::Model, Xyce::Device::Resistor::Model, Xyce::Device::MOSFET_B3SOI::Instance, Xyce::Device::MOSFET_B4::Instance, Xyce::Device::TRA::Model, Xyce::Device::LTRA::Model, Xyce::Device::Neuron6::Model, Xyce::Device::MutIndLin::Model, Xyce::Device::Xygra::Model, Xyce::Device::RxnSet::Model, Xyce::Device::Neuron5::Model, Xyce::Device::Diode::Model, Xyce::Device::MutIndNonLin::Model, Xyce::Device::MOSFET_B3::Instance, Xyce::Device::MutIndNonLin2::Model, Xyce::Device::Capacitor::Model, Xyce::Device::Resistor3::Model, Xyce::Device::Vsrc::Model, Xyce::Device::Digital::Model, Xyce::Device::Inductor::Model, Xyce::Device::Synapse3::Model, Xyce::Device::Neuron7::Model, Xyce::Device::Neuron8::Model, Xyce::Device::ROM::Model, Xyce::Device::SW::Model, Xyce::Device::ThermalResistor::Model, Xyce::Device::Bsrc::Model, Xyce::Device::Synapse4::Model, Xyce::Device::TransLine::Model, Xyce::Device::NeuronPop1::Model, Xyce::Device::DAC::Model, Xyce::Device::Synapse::Model, Xyce::Device::Synapse2::Model, Xyce::Device::ACC::Model, Xyce::Device::ISRC::Model, Xyce::Device::ADC::Model, Xyce::Device::Vcvs::Model, Xyce::Device::OpAmp::Model, Xyce::Device::VCCS::Model, Xyce::Device::MutIndLin::Instance, Xyce::Device::LTRA::Instance, Xyce::Device::Resistor::Instance, Xyce::Device::TransLine::Instance, Xyce::Device::Xygra::Instance, Xyce::Device::DeviceInstance, Xyce::Device::TwoDPDE::Instance, Xyce::Device::BJT::Instance, Xyce::Device::VDMOS::Instance, Xyce::Device::Synapse4::Instance, Xyce::Device::ADMSvbic::Instance, Xyce::Device::ADMSbsimcmg::Instance, Xyce::Device::ADMSHBT_X::Instance, Xyce::Device::ADMSPSP103VA::Instance, Xyce::Device::Synapse3::Instance, Xyce::Device::ThermalResistor::Instance, Xyce::Device::Synapse2::Instance, Xyce::Device::RxnSet::Instance, Xyce::Device::MESFET::Instance, Xyce::Device::Synapse::Instance, Xyce::Device::Digital::Instance, Xyce::Device::Diode::Instance, Xyce::Device::JFET::Instance, Xyce::Device::Neuron9::Instance, Xyce::Device::NeuronPop1::Instance, Xyce::Device::DiodePDE::Instance, Xyce::Device::Neuron::Instance, Xyce::Device::Neuron3::Instance, Xyce::Device::DeviceModel, Xyce::Device::MutIndNonLin::Instance, Xyce::Device::Neuron2::Instance, Xyce::Device::Neuron4::Instance, Xyce::Device::Neuron7::Instance, Xyce::Device::Neuron5::Instance, Xyce::Device::Neuron8::Instance, Xyce::Device::Bsrc::Instance, Xyce::Device::MutIndNonLin2::Instance, Xyce::Device::Neuron6::Instance, Xyce::Device::Capacitor::Instance, Xyce::Device::DAC::Instance, Xyce::Device::ISRC::Instance, Xyce::Device::MOSFET2::Instance, Xyce::Device::MOSFET3::Instance, Xyce::Device::MOSFET6::Instance, Xyce::Device::Resistor3::Instance, Xyce::Device::Inductor::Instance, Xyce::Device::ROM::Instance, Xyce::Device::MOSFET1::Instance, Xyce::Device::ADC::Instance, Xyce::Device::SW::Instance, Xyce::Device::TRA::Instance, Xyce::Device::Vsrc::Instance, and Xyce::Device::OpAmp::Instance.
bool Xyce::Device::DeviceEntity::scaleDefaultParam | ( | double | val | ) |
Definition at line 209 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::scaleParam | ( | const std::string & | paramName, |
double | val, | ||
double | val0 | ||
) |
Definition at line 122 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::scaleParam | ( | const std::string & | paramName, |
double | val | ||
) |
Definition at line 167 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::setDefaultParam | ( | double | val | ) |
Definition at line 330 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 168 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 145 of file N_DEV_DeviceEntity.h.
double Xyce::Device::DeviceEntity::setDependentParameter | ( | Util::Param & | par, |
double * | res, | ||
ParameterType::ExprAccess | depend | ||
) |
Definition at line 371 of file N_DEV_DeviceEntity.C.
double Xyce::Device::DeviceEntity::setDependentParameter | ( | Util::Param & | par, |
std::vector< double > * | res, | ||
int | ind, | ||
ParameterType::ExprAccess | depend | ||
) |
Definition at line 400 of file N_DEV_DeviceEntity.C.
void Xyce::Device::DeviceEntity::setDependentParameter | ( | Util::Param & | par, |
Depend & | dependentParam, | ||
ParameterType::ExprAccess | depend | ||
) |
Definition at line 429 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::setParam | ( | const std::string & | paramName, |
double | val | ||
) |
Definition at line 239 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 150 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::updateDependentParameters | ( | N_LAS_Vector & | vars | ) |
Definition at line 553 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::updateDependentParameters | ( | double | temp_tmp | ) |
Definition at line 662 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::updateDependentParameters | ( | ) |
Definition at line 632 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::updateGlobalParameters | ( | std::map< std::string, double > & | global_map | ) |
Definition at line 595 of file N_DEV_DeviceEntity.C.
|
private |
Definition at line 205 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 213 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 210 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 203 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 218 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 214 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 215 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 216 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 217 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 204 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 207 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 206 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 209 of file N_DEV_DeviceEntity.h.