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

Circuit Device Definitions. More...

Namespaces

namespace  ACC
 
namespace  ADC
 
namespace  ADMSbsimcmg
 
namespace  ADMSHBT_X
 
namespace  ADMSPSP103VA
 
namespace  ADMSvbic
 
namespace  BJT
 
namespace  Bsrc
 
namespace  Capacitor
 
namespace  DAC
 
namespace  Digital
 
namespace  Diode
 
namespace  DiodePDE
 
namespace  ExternDevice
 
namespace  Faddeeva
 
namespace  Inductor
 
namespace  ISRC
 
namespace  JFET
 
namespace  LTRA
 
namespace  MESFET
 
namespace  MOSFET1
 
namespace  MOSFET2
 
namespace  MOSFET3
 
namespace  MOSFET6
 
namespace  MOSFET_B3
 
namespace  MOSFET_B3SOI
 
namespace  MOSFET_B4
 
namespace  MutIndLin
 
namespace  MutIndNonLin
 
namespace  MutIndNonLin2
 
namespace  Neuron
 
namespace  Neuron2
 
namespace  Neuron3
 
namespace  Neuron4
 
namespace  Neuron5
 
namespace  Neuron6
 
namespace  Neuron7
 
namespace  Neuron8
 
namespace  Neuron9
 
namespace  NeuronPop1
 
namespace  OpAmp
 
namespace  OutputMode
 
namespace  Resistor
 
namespace  Resistor3
 
namespace  ROM
 
namespace  RxnSet
 
namespace  SW
 
namespace  Synapse
 
namespace  Synapse2
 
namespace  Synapse3
 
namespace  Synapse4
 
namespace  ThermalResistor
 
namespace  TRA
 
namespace  TransLine
 
namespace  TwoDPDE
 
namespace  Units
 
namespace  VCCS
 
namespace  Vcvs
 
namespace  VDMOS
 
namespace  Vsrc
 
namespace  Xygra
 

Classes

class  CompositeParam
 CompositeParam is the base class for classes that wish to only manage the processing of parameter data. More...
 
struct  ModelGroupLeadTraits
 
struct  ModelGroupType_
 
struct  ModelGroupType_< M, ModelGroupLeadTraits >
 
class  DeviceTraits
 The DeviceTraits template describes the configuration of a device. More...
 
struct  FactoryBlock
 The FactoryBlock contains parameters needed by the device, instance and model creation functions. More...
 
class  Configuration
 Class Configuration contains device configuration data. More...
 
struct  ModelGroupTraits_
 
struct  ModelGroupTraits_< T, ModelGroupLeadTraits >
 
class  Config
 Config template derives from the Configuration class and provides the instance and model parameter decriptions. More...
 
struct  DeviceModelOp
 
struct  DeviceInstanceOp
 
class  Device
 The Device class is an interface for device implementations. More...
 
class  ModelBlock
 
class  InstanceBlock
 
struct  Depend
 
class  DeviceEntity
 
struct  DeviceEntityCmp
 
class  DeviceInstance
 
class  DeviceInterface
 
class  DeviceMaster
 DeviceMaster instantiates a device as described by the device traits T. More...
 
class  DeviceMgr
 
class  DeviceModel
 
class  DeviceOptions
 
class  DeviceSensitivities
 
class  DeviceState
 
class  DeviceSupport
 
struct  ExternalSimulationData
 
class  ExternData
 
class  interpolator
 
class  akima
 
class  cubicSpline
 
class  linear
 
class  MatrixLoadData
 
class  colData
 
class  valData
 
struct  ParamWarning
 
struct  ParamError
 
struct  UserWarning
 
struct  UserWarning0
 
struct  UserError
 
struct  UserError0
 
struct  UserFatal
 
struct  UserFatal0
 
struct  DevelFatal
 
struct  DevelFatal0
 
struct  NameLevelKey
 
struct  NameLevelLess
 
class  NumericalJacobian
 
class  Param
 
class  ParameterBase
 Base class for all parameters. More...
 
class  ParametricData
 Manages parameter binding for class C. More...
 
class  Entry
 Class Entry<T> defines the parameter member variable access for parameter member variable of type T. More...
 
class  Entry< void >
 Class Entry<void> defines the parameter binding value entry interface. More...
 
class  Descriptor
 Class Descriptor describes the parameters stored in the ParametricData parameter map. More...
 
class  ParametricData< void >
 Class ParametricData<void> manages the configuration information and the parameter binding map. More...
 
class  RateCalculator
 Abstract interface class for "rate calculator" strategy pattern. More...
 
class  SimpleRateCalculator
 Class for trivial, constant rate constant (independent of temperature) More...
 
class  CaptureRateCalculator
 Rate constant calculator for Electron or Hole capture reaction. More...
 
class  EmissionRateCalculator
 Rate constant calculator for Electron or Hole emission reaction. More...
 
class  ComplexRateCalculator
 Rate constant calculator for a irreversible two-species complexing reaction. More...
 
class  DecomplexRateCalculator
 
class  Reaction
 
class  ReactionLexer
 
class  ReactionNetwork
 
class  Region
 
class  RegionData
 
class  SolverState
 
class  SourceInstance
 
class  SourceData
 
class  SinData
 
class  ExpData
 
class  ACData
 
class  PulseData
 
class  PWLinData
 
class  SFFMData
 
class  ConstData
 
class  SmoothPulseData
 
class  Specie
 
class  SpecieSource
 
class  TransportHelper
 
struct  DeviceModelBackInsertOp
 
struct  DeviceInstanceBackInsertOp
 
struct  DeviceInstanceNameOp
 
struct  type_compare_less
 
struct  deviceEntityHeader
 
struct  deviceHeader
 
struct  UglyDeviceModelOp
 
class  InductorInstanceData
 
class  XygraCoilData
 
class  MembraneCS
 
class  MembraneHH
 
class  MembraneModel
 
class  MembranePassive
 
class  MembraneUserDefined
 
class  BernouliSupport
 
class  DeviceInterfaceNode
 
class  inverse_fermi_one_half_N
 
class  DevicePDEInstance
 
class  DevicePDEModel
 
class  DopeInfo
 
class  MobInfo
 
class  MaterialSupport
 
class  PDE_2DMesh
 
class  mNode
 
class  mEdge
 
class  mCell
 
class  mLabel
 
class  mEdgeInfo
 
class  mNodeInfo
 
class  NADJ
 
class  MESHHEAD
 
class  XLATCONST
 
class  XLATLABEL
 
class  NODE
 
class  EDGE
 
class  TRI
 
class  EDGEINFO
 
class  NODEINFO
 
class  mInterpAreaHelp
 
class  mInterpEdgeHelp
 
class  PDE_Electrode
 
class  PDE_1DElectrode
 
class  PDE_2DElectrode
 
class  PDEMeshContainer
 
class  ScalingVars
 

Typedefs

typedef std::map< std::string,
std::vector< Param >
, LessNoCase > 
CompositeParamMap
 
typedef type_index EntityTypeId
 
typedef type_index ModelTypeId
 
typedef type_index InstanceTypeId
 
typedef std::map< std::string,
Descriptor *, LessNoCase > 
ParameterMap
 
typedef std::map< std::string,
CompositeParam * > 
CompositeMap
 
typedef std::map< EntityTypeId,
Device * > 
EntityTypeIdDeviceMap
 
typedef std::map< int, double > OriginalValueMap
 
typedef std::set< int > GivenValueSet
 
typedef std::map< std::string,
std::pair< DeviceModel
*, std::vector< DeviceInstance * > > > 
UglyMap
 
typedef void(* dl_register_t )()
 
typedef double(* FUNC )(double)
 

Enumerations

enum  CalcType {
  NOCALC,
  SIMPLECALC,
  CAPTURECALC,
  EMISSIONCALC,
  COMPLEXCALC,
  DECOMPLEXCALC
}
 
enum  meshType {
  INTERNAL,
  EXTERNAL,
  NUMTYPE
}
 

Functions

DeviceEntityfindDeviceEntity (EntityTypeIdDeviceMap::const_iterator begin, EntityTypeIdDeviceMap::const_iterator end, const std::string &entity_name)
 
void getDeviceInstances (const Device &device, std::back_insert_iterator< std::vector< DeviceInstance * > > it)
 
void getDeviceModels (const Device &device, std::back_insert_iterator< std::vector< DeviceModel * > > it)
 
void getDeviceNames (const Device &device, std::back_insert_iterator< std::vector< std::string > > it)
 
void getDeviceInstances (const DeviceModel &device_model, std::back_insert_iterator< std::vector< DeviceInstance * > > it)
 
bool hasSubcircuitInInstanceName (const InstanceBlock &instance_block)
 
std::string subcircuitNameFromInstanceName (const InstanceBlock &instance_block)
 
std::string modelNameFromInstanceName (const InstanceBlock &instance_block)
 
void populateParams (const ParameterMap &parameter_map, std::vector< Param > &param_list, CompositeParamMap &composite_param_map)
 
void setParameters (CompositeParam &composite_param, const std::string &pName, const Param &ndParam)
 
void setParameters (DeviceEntity &entity, std::vector< Param >::const_iterator begin, std::vector< Param >::const_iterator end, const DeviceOptions &device_options)
 
std::ostream & printParameter (std::ostream &os, const DeviceEntity &entity, const std::string &name, const Descriptor &param)
 
std::ostream & printCompositeParameters (std::ostream &os, const CompositeParam &composite)
 
void duplicate_entity_warning (const DeviceEntity &entity)
 duplicate_entity_warning reports a duplication of entity names. More...
 
void instance_must_reference_model_error (const Device &device, const std::string &model_name, const std::string &netlist_path, int line_number)
 instance_must_reference_model_error reports that the type of instance requires that a model be specified More...
 
void could_not_find_model (const Device &device, const std::string &model_name, const std::string &instance_name, const std::string &netlist_path, int line_number)
 could_not_find_model reports that the model name is note defined More...
 
void duplicate_model_warning (const Device &device, const std::string &model_name, const std::string &netlist_path, int line_number)
 duplicate_model_warning reports that the model name is duplicated. More...
 
void setupIOName (const std::string &name, std::string &outputName)
 
std::ostream & operator<< (std::ostream &os, const Configuration &configuration)
 
std::ostream & laTexDevice (std::ostream &os, const std::string &name, const int level, const int type, const std::string &device_description, const ParametricData< void > &parameters, const OutputMode::Mode format)
 
void device_assertion_error (const DeviceEntity &device_entity, const std::type_info &type, const char *label)
 
template<class T >
void Assert (bool test, const T &device_instance, const char *label)
 
std::ostream & operator<< (std::ostream &os, const Xyce::Device::NameLevelKey &device_level_key)
 
void setParamValue (Param &param, const Param &from_param)
 
void setParam (Param &param, const std::string &tag, const Param &from_param)
 
template<class T >
std::ostream & printEntry (std::ostream &os, const Entry< T > &entry)
 Prints the entry default value to the output stream. More...
 
template<class T >
std::ostream & printEntry (std::ostream &os, const Entry< std::vector< T > > &entry)
 Prints the entry default values of a vectorized parameter. More...
 
template<>
std::ostream & printEntry (std::ostream &os, const Entry< std::string > &entry)
 Prints the entry default string value, within single quotes. More...
 
template<>
std::ostream & printEntry (std::ostream &os, const Entry< bool > &entry)
 Prints the entry default boolean value, printed as true or false. More...
 
template<>
std::ostream & printEntry (std::ostream &os, const Entry< CompositeMap > &entry)
 Prints the entry composite value as newline terminated list of colon separated name, value pairs. More...
 
void typeMismatch (const std::type_info &from_type, const std::type_info &to_type)
 Report casting error when attempting to cast from from_type to to_type. More...
 
void nonexistentParameter (const std::string &name, const std::type_info &entity_type)
 Report casting error when attempting to cast from from_type to to_type. More...
 
template<class T >
const Entry< T > & entry_cast (const Entry< void > &entry)
 Casts the entry to type T. More...
 
template<class T >
Entry< T > & entry_cast (Entry< void > &entry)
 Casts the entry to type T. More...
 
template<class T >
std::ostream & printEntry (std::ostream &os, const Entry< std::map< std::string, T > > &entry)
 Prints the entry default values of a map parameter. More...
 
template<class T >
const T & getDefaultValue (const Descriptor &descriptor)
 Gets the default value of the parameter. More...
 
template<class T >
void setDefaultValue (Descriptor &descriptor, const T &t)
 Sets the default value of the parameter. More...
 
template<class T >
const T & value (const ParameterBase &entity, const Descriptor &descriptor)
 Returns the value of the parameter for the entity. More...
 
template<class T >
T & value (ParameterBase &entity, const Descriptor &descriptor)
 Returns the value of the parameter for the entity. More...
 
template<class T , class U >
const T & getValue (const ParameterBase &entity, const Descriptor &descriptor)
 Gets the value of the parameter for the entity. More...
 
template<class T , class U >
void setValue (ParameterBase &entity, const Descriptor &descriptor, const T &value)
 Sets the value of the parameter. More...
 
void checkExprAccess (const std::string &name, ParameterType::ExprAccess &expr_access, const std::type_info &parameter_data_class)
 Report error if both MIN_CAP and MIN_RES have been specified. More...
 
void setDefaultParameters (ParameterBase &parameter_base, ParameterMap::const_iterator begin, ParameterMap::const_iterator end, const DeviceOptions &device_options)
 Set the default values for the parameter. More...
 
double getOriginalValue (ParameterBase &parameter_base, int serial_number)
 Retrieve a parameter's original value. More...
 
void setOriginalValue (ParameterBase &parameter_base, int serial_number, double value)
 Set a parameter's original value. More...
 
bool wasValueGiven (const ParameterBase &parameter_base, int serial_number)
 Return true if a value was provided for the device. More...
 
void setValueGiven (ParameterBase &parameter_base, int serial_number, bool value)
 Set the given value state of a parameter. More...
 
bool isTempParam (const std::string &name)
 Returns true if the name is TNOM or TEMP. More...
 
std::ostream & print (std::ostream &os, const Device &device)
 
std::ostream & printDotOpOutput (std::ostream &os, const Device &device)
 
std::ostream & operator<< (std::ostream &os, const ReactionNetwork &rn)
 
void registerDevices ()
 
void registerPlugin (const char *so_path)
 
std::ostream & operator<< (std::ostream &os, const SpecieSource &ds)
 
std::ostream & operator<< (std::ostream &os, const ModelBlock &mb)
 
std::ostream & operator<< (std::ostream &os, const InstanceBlock &ib)
 
void setVoltageLimiterFlag (bool flagVal)
 
std::ostream & operator<< (std::ostream &os, const DeviceOptions &devOp)
 
std::ostream & operator<< (std::ostream &os, const DeviceState &ds)
 
std::ostream & printTypeName (std::ostream &os, const std::type_info &type)
 
std::ostream & outputParameterMap (std::ostream &os, const ParameterMap &parameter_map)
 
std::ostream & outputDescriptor (std::ostream &os, const Descriptor &descriptor)
 
std::ostream & operator<< (std::ostream &os, const deviceEntityHeader &x)
 
std::ostream & operator<< (std::ostream &os, const deviceHeader &x)
 
void registerDL (const char *so_path, const char *function_key=0)
 
std::ostream & operator<< (std::ostream &os, const SolverState &ss)
 
void registerOpenDevices ()
 
void registerADMSDevices ()
 
void registerNeuronDevices ()
 
std::ostream & operator<< (std::ostream &os, const DopeInfo &di)
 
double sq (double x)
 
std::ostream & operator<< (std::ostream &os, const PDE_2DElectrode &el)
 
void registerTCADDevices ()
 

Variables

const char * instanceEntityType = "instance"
 
const char * modelEntityType = "model"
 
std::map< const std::type_info
*, std::string,
type_compare_less
s_typeInfoNameMap
 

Detailed Description

Circuit Device Definitions.

All Open Source devices are defined in the device class. Each device type is defined in its own namespace which holds the device model class, instance class, master class, traits and associated functions. Device Development Overview describes the contents of each device namespace and how to write a new device.

Typedef Documentation

typedef std::map< std::string, CompositeParam * > Xyce::Device::CompositeMap

Definition at line 139 of file N_DEV_fwd.h.

typedef std::map<std::string, std::vector<Param>, LessNoCase> Xyce::Device::CompositeParamMap

Definition at line 66 of file N_DEV_DeviceEntity.h.

typedef void(* Xyce::Device::dl_register_t)()

Definition at line 110 of file Core/src/N_DEV_RegisterDevices.C.

typedef type_index Xyce::Device::EntityTypeId

Definition at line 134 of file N_DEV_fwd.h.

Definition at line 141 of file N_DEV_fwd.h.

typedef double(* Xyce::Device::FUNC)(double)

Definition at line 160 of file N_DEV_BernouliSupport.h.

typedef std::set<int> Xyce::Device::GivenValueSet

Definition at line 134 of file N_DEV_Pars.h.

typedef type_index Xyce::Device::InstanceTypeId

Definition at line 136 of file N_DEV_fwd.h.

typedef type_index Xyce::Device::ModelTypeId

Definition at line 135 of file N_DEV_fwd.h.

typedef std::map<int, double> Xyce::Device::OriginalValueMap

Definition at line 133 of file N_DEV_Pars.h.

typedef std::map< std::string, Descriptor *, LessNoCase > Xyce::Device::ParameterMap

Definition at line 138 of file N_DEV_fwd.h.

typedef std::map<std::string, std::pair<DeviceModel *, std::vector<DeviceInstance *> > > Xyce::Device::UglyMap

Definition at line 95 of file N_DEV_Print.C.

Enumeration Type Documentation

Enumerator
NOCALC 
SIMPLECALC 
CAPTURECALC 
EMISSIONCALC 
COMPLEXCALC 
DECOMPLEXCALC 

Definition at line 61 of file N_DEV_RateConstantCalculators.h.

Enumerator
INTERNAL 
EXTERNAL 
NUMTYPE 

Definition at line 107 of file N_DEV_PDE_2DMesh.h.

Function Documentation

template<class T >
void Xyce::Device::Assert ( bool  test,
const T &  device_instance,
const char *  label 
)

Definition at line 121 of file N_DEV_Message.h.

void Xyce::Device::checkExprAccess ( const std::string &  name,
ParameterType::ExprAccess expr_access,
const std::type_info &  parameter_data_class 
)

Report error if both MIN_CAP and MIN_RES have been specified.

Parameters
nameParameter name
expr_accessParameter expr access to verify
parameter_data_classTypeinfo to display name of class on error

Definition at line 167 of file N_DEV_Pars.C.

void Xyce::Device::could_not_find_model ( const Device &  device,
const std::string &  model_name,
const std::string &  instance_name,
const std::string &  netlist_path,
int  line_number 
)

could_not_find_model reports that the model name is note defined

Parameters
deviceconst reference to the device
model_nameconst reference to the model name
instance_nameconst reference to the instance name
netlist_pathconst reference to the netlist path
line_numberline number in the netlist path
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Tue Feb 4 10:18:05 2014

Definition at line 105 of file N_DEV_DeviceMaster.C.

void Xyce::Device::device_assertion_error ( const DeviceEntity &  device_entity,
const std::type_info &  type,
const char *  label 
)

Definition at line 229 of file N_DEV_Message.C.

void Xyce::Device::duplicate_entity_warning ( const DeviceEntity &  entity)

duplicate_entity_warning reports a duplication of entity names.

Currently models and devices can share a name and the current implementation of entityMap_ results in lost information.

Parameters
entityconst reference to the entity that is being added
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Tue Feb 4 10:12:14 2014

Definition at line 71 of file N_DEV_DeviceMaster.C.

void Xyce::Device::duplicate_model_warning ( const Device &  device,
const std::string &  model_name,
const std::string &  netlist_path,
int  line_number 
)

duplicate_model_warning reports that the model name is duplicated.

Parameters
deviceconst reference to the device
model_nameconst reference to the model name
netlist_pathconst reference to the netlist path
line_numberline number in the netlist path
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Tue Feb 4 10:18:41 2014

Definition at line 122 of file N_DEV_DeviceMaster.C.

template<class T >
const Entry<T>& Xyce::Device::entry_cast ( const Entry< void > &  entry)

Casts the entry to type T.

If the entry if not of the specified type, typeMismatch() is called to emit a fatal error.

Template Parameters
Ttype to cast to
Parameters
entryentry to cast
Returns
const reference to Entry<T>
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Thu Jul 25 13:21:09 2013

Definition at line 463 of file N_DEV_Pars.h.

template<class T >
Entry<T>& Xyce::Device::entry_cast ( Entry< void > &  entry)

Casts the entry to type T.

If the entry if not of the specified type, typeMismatch() is called to emit a fatal error.

Template Parameters
Ttype to cast to
Parameters
entryentry to cast
Returns
reference to Entry<T>
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Thu Jul 25 13:21:09 2013

Definition at line 485 of file N_DEV_Pars.h.

DeviceEntity * Xyce::Device::findDeviceEntity ( EntityTypeIdDeviceMap::const_iterator  begin,
EntityTypeIdDeviceMap::const_iterator  end,
const std::string &  entity_name 
)

Definition at line 60 of file N_DEV_Algorithm.C.

template<class T >
const T& Xyce::Device::getDefaultValue ( const Descriptor &  descriptor)
inline

Gets the default value of the parameter.

Parameters
descriptordescriptor of the parameter
Returns
const reference to the default value of the entry of the descriptor
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:37:33 2013

Definition at line 1091 of file N_DEV_Pars.h.

void Xyce::Device::getDeviceInstances ( const Device &  device,
std::back_insert_iterator< std::vector< DeviceInstance * > >  it 
)

Definition at line 107 of file N_DEV_Algorithm.C.

void Xyce::Device::getDeviceInstances ( const DeviceModel &  device_model,
std::back_insert_iterator< std::vector< DeviceInstance * > >  it 
)

Definition at line 113 of file N_DEV_Algorithm.C.

void Xyce::Device::getDeviceModels ( const Device &  device,
std::back_insert_iterator< std::vector< DeviceModel * > >  it 
)

Definition at line 86 of file N_DEV_Algorithm.C.

void Xyce::Device::getDeviceNames ( const Device &  device,
std::back_insert_iterator< std::vector< std::string > >  it 
)

Definition at line 134 of file N_DEV_Algorithm.C.

double Xyce::Device::getOriginalValue ( ParameterBase &  parameter_base,
int  serial_number 
)
inline

Retrieve a parameter's original value.

Parameters
parameter_basedevice entity holding parameter
serial_numberentity's serial number
Returns
original value of the parameter
Date
Tue Aug 6 13:51:16 2013
Author
David G. Baur Raytheon Sandia National Laboratories 1355

Definition at line 1581 of file N_DEV_Pars.h.

template<class T , class U >
const T& Xyce::Device::getValue ( const ParameterBase &  entity,
const Descriptor &  descriptor 
)
inline

Gets the value of the parameter for the entity.

Parameters
entitydevice class or device instance
descriptordescriptor of the parameter
Returns
const reference to the value of the entry of the descriptor
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:39:40 2013

Definition at line 1166 of file N_DEV_Pars.h.

bool Xyce::Device::hasSubcircuitInInstanceName ( const InstanceBlock &  instance_block)

Definition at line 59 of file N_DEV_DeviceBlock.C.

void Xyce::Device::instance_must_reference_model_error ( const Device &  device,
const std::string &  model_name,
const std::string &  netlist_path,
int  line_number 
)

instance_must_reference_model_error reports that the type of instance requires that a model be specified

Parameters
deviceconst reference to the device
model_nameconst reference to the model name
netlist_pathconst reference to the netlist path
line_numberline number in the netlist path
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Tue Feb 4 10:16:23 2014

Definition at line 88 of file N_DEV_DeviceMaster.C.

bool Xyce::Device::isTempParam ( const std::string &  name)
inline

Returns true if the name is TNOM or TEMP.

Parameters
nameparameter name
Returns
true if the name is TNOM or TEMP
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Thu Feb 6 16:52:26 2014

Definition at line 1644 of file N_DEV_Pars.h.

std::ostream & Xyce::Device::laTexDevice ( std::ostream &  os,
const std::string &  name,
const int  level,
const int  type,
const std::string &  device_description,
const ParametricData< void > &  parameters,
const OutputMode::Mode  format 
)

Definition at line 308 of file N_DEV_LaTexDoc.C.

std::string Xyce::Device::modelNameFromInstanceName ( const InstanceBlock &  instance_block)

Definition at line 71 of file N_DEV_DeviceBlock.C.

void Xyce::Device::nonexistentParameter ( const std::string &  name,
const std::type_info &  entity_type 
)

Report casting error when attempting to cast from from_type to to_type.

Parameters
nameparameter name
entity_typeentity

Definition at line 128 of file N_DEV_Pars.C.

std::ostream & Xyce::Device::operator<< ( std::ostream &  os,
const Configuration &  configuration 
)

Definition at line 128 of file N_DEV_Dump.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const deviceEntityHeader &  x 
)

Definition at line 72 of file N_DEV_Message.C.

std::ostream & Xyce::Device::operator<< ( std::ostream &  os,
const Xyce::Device::NameLevelKey device_level_key 
)

Definition at line 54 of file N_DEV_NameLevelKey.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const SpecieSource &  ds 
)
inline

Definition at line 92 of file N_DEV_SpecieSource.h.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const DopeInfo &  di 
)
inline

Definition at line 154 of file N_DEV_DopeInfo.h.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const SolverState &  ss 
)

Definition at line 155 of file N_DEV_SolverState.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const DeviceState &  ds 
)

Definition at line 157 of file N_DEV_DeviceState.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const deviceHeader &  x 
)

Definition at line 170 of file N_DEV_Message.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const ModelBlock &  mb 
)

Definition at line 184 of file N_DEV_DeviceBlock.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const DeviceOptions &  devOp 
)

Definition at line 499 of file N_DEV_DeviceOptions.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const InstanceBlock &  ib 
)

Definition at line 560 of file N_DEV_DeviceBlock.C.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const ReactionNetwork &  rn 
)
inline

Definition at line 722 of file N_DEV_ReactionNetwork.h.

std::ostream& Xyce::Device::operator<< ( std::ostream &  os,
const PDE_2DElectrode &  el 
)
inline

Definition at line 881 of file N_DEV_PDE_2DMesh.h.

std::ostream& Xyce::Device::outputDescriptor ( std::ostream &  os,
const Descriptor &  descriptor 
)

Definition at line 93 of file N_DEV_Dump.C.

std::ostream & Xyce::Device::outputParameterMap ( std::ostream &  os,
const ParameterMap &  parameter_map 
)

Definition at line 117 of file N_DEV_Dump.C.

void Xyce::Device::populateParams ( const ParameterMap &  parameter_map,
std::vector< Param > &  param_list,
CompositeParamMap &  composite_param_map 
)

Definition at line 1136 of file N_DEV_DeviceEntity.C.

std::ostream & Xyce::Device::print ( std::ostream &  os,
const Device &  device 
)

Definition at line 74 of file N_DEV_Print.C.

std::ostream & Xyce::Device::printCompositeParameters ( std::ostream &  os,
const CompositeParam &  composite 
)

Definition at line 1377 of file N_DEV_DeviceEntity.C.

std::ostream & Xyce::Device::printDotOpOutput ( std::ostream &  os,
const Device &  device 
)

Definition at line 135 of file N_DEV_Print.C.

template<class T >
std::ostream & Xyce::Device::printEntry ( std::ostream &  os,
const Entry< T > &  entry 
)
inline

Prints the entry default value to the output stream.

Parameters
osoutput stream
entryentry to print
Returns
reference to the output stream
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:32:26 2013

Definition at line 975 of file N_DEV_Pars.h.

template<class T >
std::ostream & Xyce::Device::printEntry ( std::ostream &  os,
const Entry< std::vector< T > > &  entry 
)
inline

Prints the entry default values of a vectorized parameter.

Parameters
osoutput stream
entryentry to print
Returns
reference to the output stream
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:33:24 2013

Definition at line 994 of file N_DEV_Pars.h.

template<>
std::ostream & Xyce::Device::printEntry ( std::ostream &  os,
const Entry< std::string > &  entry 
)
inline

Prints the entry default string value, within single quotes.

Parameters
osoutput stream
entryentry to print
Returns
reference to the output stream
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:34:18 2013

Definition at line 1034 of file N_DEV_Pars.h.

template<>
std::ostream & Xyce::Device::printEntry ( std::ostream &  os,
const Entry< bool > &  entry 
)
inline

Prints the entry default boolean value, printed as true or false.

Parameters
osoutput stream
entryentry to print
Returns
reference to the output stream
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:34:18 2013

Definition at line 1053 of file N_DEV_Pars.h.

template<>
std::ostream & Xyce::Device::printEntry ( std::ostream &  os,
const Entry< CompositeMap > &  entry 
)
inline

Prints the entry composite value as newline terminated list of colon separated name, value pairs.

Parameters
osoutput stream
entryentry to print
Returns
reference to the output stream
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:34:18 2013

Definition at line 1072 of file N_DEV_Pars.h.

template<class T >
std::ostream& Xyce::Device::printEntry ( std::ostream &  os,
const Entry< std::map< std::string, T > > &  entry 
)
inline

Prints the entry default values of a map parameter.

Parameters
osoutput stream
entryentry to print
Returns
reference to the output stream
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Thu Feb 6 16:37:16 2014

Definition at line 1014 of file N_DEV_Pars.h.

std::ostream & Xyce::Device::printParameter ( std::ostream &  os,
const DeviceEntity &  entity,
const std::string &  name,
const Descriptor &  param 
)

Definition at line 1292 of file N_DEV_DeviceEntity.C.

std::ostream& Xyce::Device::printTypeName ( std::ostream &  os,
const std::type_info &  type 
)

Definition at line 71 of file N_DEV_Dump.C.

void Xyce::Device::registerADMSDevices ( )

Definition at line 59 of file N_DEV_RegisterADMSDevices.C.

void Xyce::Device::registerDevices ( )

Definition at line 76 of file Core/src/N_DEV_RegisterDevices.C.

void Xyce::Device::registerDL ( const char *  so_path,
const char *  function_key = 0 
)

Definition at line 112 of file Core/src/N_DEV_RegisterDevices.C.

void Xyce::Device::registerNeuronDevices ( )

Definition at line 69 of file N_DEV_RegisterNeuronDevices.C.

void Xyce::Device::registerOpenDevices ( )

Definition at line 96 of file N_DEV_RegisterOpenDevices.C.

void Xyce::Device::registerPlugin ( const char *  so_path)

Definition at line 105 of file Core/src/N_DEV_RegisterDevices.C.

void Xyce::Device::registerTCADDevices ( )

Definition at line 57 of file N_DEV_RegisterTCADDevices.C.

void Xyce::Device::setDefaultParameters ( ParameterBase &  parameter_base,
ParameterMap::const_iterator  begin,
ParameterMap::const_iterator  end,
const DeviceOptions &  device_options 
)

Set the default values for the parameter.

Iterates over parameters of parameter_base object, setting parameter_base members variables to the default value provided when the addPar() function created the parameter descrption.

Note that any values provided in the objects constructor that are defined as parameters have their initialized value replaced with the default value given in the addPar() call

Parameters
parameter_base
begin
end
device_options
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Thu Feb 6 16:51:00 2014
Parameters
parameter_baseDeviceEntity or CompositeParam
beginBegin iterator of parameter descriptions
endEnd iterator of parameters descriptions
device_optionsDevice options

Definition at line 75 of file N_DEV_Pars.C.

template<class T >
void Xyce::Device::setDefaultValue ( Descriptor &  descriptor,
const T &  t 
)
inline

Sets the default value of the parameter.

Parameters
descriptordescriptor of the parameter
tdefault value
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:38:49 2013

Definition at line 1108 of file N_DEV_Pars.h.

void Xyce::Device::setOriginalValue ( ParameterBase &  parameter_base,
int  serial_number,
double  value 
)
inline

Set a parameter's original value.

Parameters
parameter_basedevice entity or composite holding parameter
serial_numberentity's serial number
valuevalue to be stored
Date
Tue Aug 6 13:53:29 2013
Author
David G. Baur Raytheon Sandia National Laboratories 1355

Definition at line 1596 of file N_DEV_Pars.h.

void Xyce::Device::setParam ( Param &  param,
const std::string &  tag,
const Param &  from_param 
)
inline

Definition at line 142 of file N_DEV_Param.h.

void Xyce::Device::setParameters ( CompositeParam &  composite_param,
const std::string &  pName,
const Param &  ndParam 
)

Definition at line 1063 of file N_DEV_DeviceEntity.C.

void Xyce::Device::setParameters ( DeviceEntity &  entity,
std::vector< Param >::const_iterator  begin,
std::vector< Param >::const_iterator  end,
const DeviceOptions &  device_options 
)

Definition at line 734 of file N_DEV_DeviceEntity.C.

void Xyce::Device::setParamValue ( Param &  param,
const Param &  from_param 
)
inline

Definition at line 137 of file N_DEV_Param.h.

void Xyce::Device::setupIOName ( const std::string &  name,
std::string &  outputName 
)

Definition at line 5318 of file N_DEV_DeviceMgr.C.

template<class T , class U >
void Xyce::Device::setValue ( ParameterBase &  entity,
const Descriptor &  descriptor,
const T &  value 
)
inline

Sets the value of the parameter.

Parameters
entitydevice class or device instance
descriptordescriptor of the parameter
valuevalue
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:42:13 2013

Definition at line 1184 of file N_DEV_Pars.h.

void Xyce::Device::setValueGiven ( ParameterBase &  parameter_base,
int  serial_number,
bool  value 
)
inline

Set the given value state of a parameter.

Parameters
parameter_basedevice entity or composite holding parameter
serial_numberserial number of parameter
valuetrue if the value was given
Date
Tue Aug 6 13:55:34 2013
Author
David G. Baur Raytheon Sandia National Laboratories 1355

Definition at line 1629 of file N_DEV_Pars.h.

void Xyce::Device::setVoltageLimiterFlag ( bool  flagVal)
double Xyce::Device::sq ( double  x)
inline

Definition at line 868 of file N_DEV_PDE_2DMesh.h.

std::string Xyce::Device::subcircuitNameFromInstanceName ( const InstanceBlock &  instance_block)

Definition at line 64 of file N_DEV_DeviceBlock.C.

void Xyce::Device::typeMismatch ( const std::type_info &  from_type,
const std::type_info &  to_type 
)

Report casting error when attempting to cast from from_type to to_type.

Parameters
from_typeTypeinfo casting from
to_typeTypeinfo casting to

Definition at line 147 of file N_DEV_Pars.C.

template<class T >
const T& Xyce::Device::value ( const ParameterBase &  entity,
const Descriptor &  descriptor 
)
inline

Returns the value of the parameter for the entity.

Parameters
entitydevice class or device instance
descriptordescriptor of the parameter
Returns
const reference to the value of the entry of the descriptor
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:39:40 2013

Definition at line 1127 of file N_DEV_Pars.h.

template<class T >
T& Xyce::Device::value ( ParameterBase &  entity,
const Descriptor &  descriptor 
)
inline

Returns the value of the parameter for the entity.

Parameters
entitydevice class or device instance
descriptordescriptor of the parameter
Returns
reference to the value of the entry of the descriptor
Author
David G. Baur Raytheon Sandia National Laboratories 1355
Date
Fri Aug 9 15:39:40 2013

Definition at line 1146 of file N_DEV_Pars.h.

bool Xyce::Device::wasValueGiven ( const ParameterBase &  parameter_base,
int  serial_number 
)
inline

Return true if a value was provided for the device.

Parameters
parameter_basedevice entity or composite holding parameter
serial_numberserial number of parameter
Returns
true if a value was provided for the device
Date
Tue Aug 6 13:54:25 2013
Author
David G. Baur Raytheon Sandia National Laboratories 1355

Definition at line 1613 of file N_DEV_Pars.h.

Variable Documentation

const char* Xyce::Device::instanceEntityType = "instance"

Definition at line 66 of file N_DEV_DeviceInstance.C.

const char* Xyce::Device::modelEntityType = "model"

Definition at line 66 of file N_DEV_DeviceModel.C.

std::map<const std::type_info *, std::string, type_compare_less> Xyce::Device::s_typeInfoNameMap

Definition at line 69 of file N_DEV_Dump.C.