Xyce
6.1
|
#include <N_DEV_DeviceEntity.h>
Public Member Functions | |
DeviceEntity (ParametricData< void > ¶metric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_filename, 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, bool overrideOriginal=false) |
double | getDefaultParam () const |
bool | scaleParam (const std::string ¶mName, double val, double val0) |
bool | scaleParam (const std::string ¶mName, double val) |
bool | scaleDefaultParam (double val) |
bool | analyticSensitivityAvailable (const std::string ¶mName) |
bool | getAnalyticSensitivity (const std::string ¶mName, 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 ¶mName, double val, bool overrideOriginal=false) |
bool | getParam (const std::string ¶mName, 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 > ¶ms) |
bool | given (const std::string ¶meter_name) const |
virtual std::ostream & | printName (std::ostream &os) const =0 |
void | setDefaultParamName (const std::string &default_param_name) |
const std::vector< Depend > & | getDependentParams () |
void | addDependentParameter (const Depend ¶m) |
const DeviceOptions & | getDeviceOptions () const |
const SolverState & | getSolverState () const |
const NetlistLocation & | netlistLocation () const |
const ParameterMap & | getParameterMap () const |
![]() | |
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) |
Protected Attributes | |
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 &) | |
No copying. More... | |
DeviceEntity & | operator= (const DeviceEntity &) |
No assignment. More... | |
void | escape (std::string &) const |
void | checkDepend (ParameterType::ExprAccess &) |
Private Attributes | |
std::string | defaultParamName_ |
ParametricData< void > & | parametricData_ |
NetlistLocation | netlistLocation_ |
const SolverState & | solState_ |
Globals & | globals_ |
const DeviceOptions & | devOptions_ |
std::vector< Depend > | dependentParams_ |
Definition at line 95 of file N_DEV_DeviceEntity.h.
Xyce::Device::DeviceEntity::DeviceEntity | ( | ParametricData< void > & | parametric_data, |
const SolverState & | solver_state, | ||
const DeviceOptions & | device_options, | ||
const std::string & | netlist_filename, | ||
int | netlist_line | ||
) |
Definition at line 84 of file N_DEV_DeviceEntity.C.
|
private |
No copying.
|
virtual |
Definition at line 106 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 175 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::analyticSensitivityAvailable | ( | const std::string & | paramName | ) |
Definition at line 232 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 116 of file N_DEV_DeviceEntity.h.
|
private |
bool Xyce::Device::DeviceEntity::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 | ||
) |
Definition at line 253 of file N_DEV_DeviceEntity.C.
double Xyce::Device::DeviceEntity::getDefaultParam | ( | ) | const |
Definition at line 419 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 170 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 179 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::getParam | ( | const std::string & | paramName, |
double & | result | ||
) | const |
Definition at line 352 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::getParamBreakpoints | ( | std::vector< Util::BreakPoint > & | breakPointTimes | ) |
Definition at line 763 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 194 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 184 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::given | ( | const std::string & | parameter_name | ) | const |
Definition at line 787 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 189 of file N_DEV_DeviceEntity.h.
|
private |
No assignment.
|
pure virtual |
Implemented in Xyce::Device::DeviceModel, and Xyce::Device::DeviceInstance.
|
pure virtual |
Implemented in Xyce::Device::ADMSbsimcmg::Model, Xyce::Device::ADMSPSP103VA::Model, Xyce::Device::ADMSbsim6::Model, Xyce::Device::ADMSbjt504va::Model, Xyce::Device::MOSFET_B3SOI::Model, Xyce::Device::ADMSvbic::Model, Xyce::Device::ADMSHBT_X::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::Neuron2::Model, Xyce::Device::DiodePDE::Model, Xyce::Device::TwoDPDE::Model, Xyce::Device::BJT::Model, Xyce::Device::MOSFET3::Model, Xyce::Device::MOSFET2::Model, Xyce::Device::MOSFET6::Model, Xyce::Device::Diode::Model, Xyce::Device::Neuron3::Model, Xyce::Device::JFET::Model, Xyce::Device::Neuron::Model, Xyce::Device::MESFET::Model, Xyce::Device::Neuron9::Model, Xyce::Device::Resistor::Model, Xyce::Device::TRA::Model, Xyce::Device::MemristorTEAM::Model, Xyce::Device::LTRA::Model, Xyce::Device::MutIndLin::Model, Xyce::Device::Neuron6::Model, Xyce::Device::Vsrc::Model, Xyce::Device::RxnSet::Model, Xyce::Device::Xygra::Model, Xyce::Device::Capacitor::Model, Xyce::Device::Inductor::Model, Xyce::Device::Neuron5::Model, Xyce::Device::PowerGrid::Model, Xyce::Device::MutIndNonLin::Model, Xyce::Device::Resistor3::Model, Xyce::Device::Digital::Model, Xyce::Device::MutIndNonLin2::Model, Xyce::Device::PowerGridBranch::Model, Xyce::Device::Synapse3::Model, Xyce::Device::PowerGridTransformer::Model, Xyce::Device::PowerGridBusShunt::Model, Xyce::Device::ROM::Model, Xyce::Device::SW::Model, Xyce::Device::ThermalResistor::Model, Xyce::Device::Neuron7::Model, Xyce::Device::Neuron8::Model, Xyce::Device::Bsrc::Model, Xyce::Device::Synapse4::Model, Xyce::Device::TransLine::Model, Xyce::Device::NeuronPop1::Model, Xyce::Device::PowerGridGenBus::Model, Xyce::Device::DAC::Model, Xyce::Device::ACC::Model, Xyce::Device::Synapse::Model, Xyce::Device::Synapse2::Model, Xyce::Device::ISRC::Model, Xyce::Device::ADC::Model, Xyce::Device::Vcvs::Model, Xyce::Device::OpAmp::Model, Xyce::Device::VCCS::Model, Xyce::Device::DeviceInstance, and Xyce::Device::DeviceModel.
|
pure virtual |
Implemented in Xyce::Device::ADMSbsimcmg::Model, Xyce::Device::ADMSPSP103VA::Model, Xyce::Device::ADMSbsimcmg::Instance, Xyce::Device::ADMSPSP103VA::Instance, Xyce::Device::ADMSbsim6::Model, Xyce::Device::ADMSbsim6::Instance, Xyce::Device::ADMSbjt504va::Model, Xyce::Device::MOSFET_B3SOI::Model, Xyce::Device::ADMSvbic::Model, Xyce::Device::ADMSHBT_X::Model, Xyce::Device::MOSFET_B4::Model, Xyce::Device::ADMSbjt504va::Instance, Xyce::Device::ADMSvbic::Instance, Xyce::Device::MOSFET_B3::Model, Xyce::Device::ADMSHBT_X::Instance, Xyce::Device::VDMOS::Model, Xyce::Device::Neuron4::Model, Xyce::Device::MOSFET1::Model, Xyce::Device::Neuron2::Model, Xyce::Device::DiodePDE::Model, Xyce::Device::TwoDPDE::Model, Xyce::Device::BJT::Model, Xyce::Device::MOSFET3::Model, Xyce::Device::MOSFET2::Model, Xyce::Device::MOSFET6::Model, Xyce::Device::Diode::Model, Xyce::Device::Neuron3::Model, Xyce::Device::JFET::Model, Xyce::Device::Neuron::Model, Xyce::Device::MESFET::Model, Xyce::Device::Neuron9::Model, Xyce::Device::Resistor::Model, Xyce::Device::MOSFET_B4::Instance, Xyce::Device::MOSFET_B3SOI::Instance, Xyce::Device::TRA::Model, Xyce::Device::MemristorTEAM::Model, Xyce::Device::LTRA::Model, Xyce::Device::Diode::Instance, Xyce::Device::MutIndLin::Model, Xyce::Device::Neuron6::Model, Xyce::Device::RxnSet::Model, Xyce::Device::Vsrc::Model, Xyce::Device::Xygra::Model, Xyce::Device::Capacitor::Model, Xyce::Device::Inductor::Model, Xyce::Device::Neuron5::Model, Xyce::Device::MutIndNonLin::Model, Xyce::Device::PowerGrid::Model, Xyce::Device::Digital::Model, Xyce::Device::MutIndNonLin2::Model, Xyce::Device::MOSFET_B3::Instance, Xyce::Device::Resistor3::Model, Xyce::Device::Synapse3::Model, Xyce::Device::PowerGridBranch::Model, Xyce::Device::ROM::Model, Xyce::Device::SW::Model, Xyce::Device::PowerGridTransformer::Model, Xyce::Device::ThermalResistor::Model, Xyce::Device::Neuron7::Model, Xyce::Device::PowerGridBusShunt::Model, Xyce::Device::Neuron8::Model, Xyce::Device::Bsrc::Model, Xyce::Device::Synapse4::Model, Xyce::Device::TransLine::Model, Xyce::Device::NeuronPop1::Model, Xyce::Device::PowerGridGenBus::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::MemristorTEAM::Instance, Xyce::Device::Resistor::Instance, Xyce::Device::DeviceInstance, Xyce::Device::LTRA::Instance, Xyce::Device::TransLine::Instance, Xyce::Device::Xygra::Instance, Xyce::Device::Capacitor::Instance, Xyce::Device::Inductor::Instance, Xyce::Device::TwoDPDE::Instance, Xyce::Device::Vsrc::Instance, Xyce::Device::VDMOS::Instance, Xyce::Device::Synapse4::Instance, Xyce::Device::DeviceModel, Xyce::Device::RxnSet::Instance, Xyce::Device::ThermalResistor::Instance, Xyce::Device::Synapse2::Instance, Xyce::Device::Synapse3::Instance, Xyce::Device::BJT::Instance, Xyce::Device::Synapse::Instance, Xyce::Device::Digital::Instance, Xyce::Device::MESFET::Instance, Xyce::Device::DiodePDE::Instance, Xyce::Device::JFET::Instance, Xyce::Device::NeuronPop1::Instance, Xyce::Device::MutIndNonLin2::Instance, Xyce::Device::MutIndNonLin::Instance, Xyce::Device::Neuron9::Instance, Xyce::Device::Bsrc::Instance, Xyce::Device::Neuron::Instance, Xyce::Device::Neuron3::Instance, Xyce::Device::Neuron6::Instance, Xyce::Device::DAC::Instance, Xyce::Device::Resistor3::Instance, Xyce::Device::Neuron2::Instance, Xyce::Device::Neuron4::Instance, Xyce::Device::Neuron7::Instance, Xyce::Device::MOSFET2::Instance, Xyce::Device::MOSFET3::Instance, Xyce::Device::Neuron5::Instance, Xyce::Device::Neuron8::Instance, Xyce::Device::ISRC::Instance, Xyce::Device::MOSFET6::Instance, Xyce::Device::ROM::Instance, Xyce::Device::ADC::Instance, Xyce::Device::MOSFET1::Instance, Xyce::Device::OpAmp::Instance, Xyce::Device::SW::Instance, and Xyce::Device::TRA::Instance.
bool Xyce::Device::DeviceEntity::scaleDefaultParam | ( | double | val | ) |
Definition at line 213 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::scaleParam | ( | const std::string & | paramName, |
double | val, | ||
double | val0 | ||
) |
Definition at line 126 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::scaleParam | ( | const std::string & | paramName, |
double | val | ||
) |
Definition at line 171 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::setDefaultParam | ( | double | val, |
bool | overrideOriginal = false |
||
) |
Definition at line 401 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 165 of file N_DEV_DeviceEntity.h.
|
inline |
Definition at line 150 of file N_DEV_DeviceEntity.h.
double Xyce::Device::DeviceEntity::setDependentParameter | ( | Util::Param & | par, |
double * | res, | ||
ParameterType::ExprAccess | depend | ||
) |
Definition at line 442 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 471 of file N_DEV_DeviceEntity.C.
void Xyce::Device::DeviceEntity::setDependentParameter | ( | Util::Param & | par, |
Depend & | dependentParam, | ||
ParameterType::ExprAccess | depend | ||
) |
Definition at line 500 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::setParam | ( | const std::string & | paramName, |
double | val, | ||
bool | overrideOriginal = false |
||
) |
Definition at line 293 of file N_DEV_DeviceEntity.C.
|
inline |
Definition at line 155 of file N_DEV_DeviceEntity.h.
bool Xyce::Device::DeviceEntity::updateDependentParameters | ( | Linear::Vector & | vars | ) |
Definition at line 625 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::updateDependentParameters | ( | double | temp_tmp | ) |
Definition at line 733 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::updateDependentParameters | ( | ) |
Definition at line 703 of file N_DEV_DeviceEntity.C.
bool Xyce::Device::DeviceEntity::updateGlobalParameters | ( | GlobalParameterMap & | global_map | ) |
Definition at line 666 of file N_DEV_DeviceEntity.C.
|
private |
Definition at line 204 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 212 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 211 of file N_DEV_DeviceEntity.h.
|
protected |
Definition at line 219 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.
|
protected |
Definition at line 218 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 209 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 206 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 205 of file N_DEV_DeviceEntity.h.
|
private |
Definition at line 208 of file N_DEV_DeviceEntity.h.