Xyce
6.1
|
#include <N_DEV_Capacitor.h>
Public Member Functions | |
Instance (const Configuration &configuration, const InstanceBlock &instance_block, Model &model, const FactoryBlock &factory_block) | |
Construct a Capacitor model from a "model block" that was created by the netlist parser. More... | |
~Instance () | |
void | registerLIDs (const std::vector< int > &intLIDVecRef, const std::vector< int > &extLIDVecRef) |
Register local IDs. More... | |
void | registerStateLIDs (const std::vector< int > &staLIDVecRef) |
Register the local state IDs. More... | |
void | registerStoreLIDs (const std::vector< int > &stoLIDVecRef) |
Register the local store IDs. More... | |
std::map< int, std::string > & | getIntNameMap () |
Set up names for purely internal solution variables. More... | |
std::map< int, std::string > & | getStoreNameMap () |
Populates and returns the store name map. More... | |
const std::vector< std::vector < int > > & | jacobianStamp () const |
Return Jacobian stamp that informs topology of the layout of the resistor jacobian. More... | |
void | registerJacLIDs (const std::vector< std::vector< int > > &jacLIDVec) |
Register the Jacobian local IDs. More... | |
bool | processParams () |
Process parameters. More... | |
bool | updateTemperature (const double &temp_tmp) |
Update the parameters that depend on the temperature of the device. More... | |
bool | updateIntermediateVars () |
bool | updatePrimaryState () |
Update the state variables. More... | |
bool | setIC () |
bool | loadDAEQVector () |
Load the DAE Q vector. More... | |
bool | loadDAEFVector () |
Load the DAE F vector. More... | |
bool | loadDAEdQdx () |
Load the DAE the derivative of the Q vector with respect to the solution vector x, dFdx. More... | |
bool | loadDAEdFdx () |
Load the DAE the derivative of the F vector with respect to the solution vector x, dFdx. More... | |
void | setupPointers () |
Setup direct access pointer to solution matrix and vectors. More... | |
void | varTypes (std::vector< char > &varTypeVec) |
Model & | getModel () |
![]() | |
DeviceInstance (const InstanceBlock &instance_block, ParametricData< void > ¶metric_data, const FactoryBlock &factory_block) | |
virtual | ~DeviceInstance () |
virtual std::ostream & | printName (std::ostream &os) const |
virtual void | enableLeadCurrentCalc () |
virtual void | registerGIDs (const std::list< index_pair > &intGIDListRef, const std::list< index_pair > &extGIDListRef) |
virtual void | registerStateGIDs (const std::list< index_pair > &staGIDListRef) |
virtual void | registerStoreGIDs (const std::list< index_pair > &stoGIDListRef) |
virtual const std::vector < std::string > & | getDepSolnVars () |
virtual void | registerDepSolnGIDs (const std::vector< std::vector< int > > &varList) |
virtual const std::vector < std::string > & | getDepStateVars () |
virtual void | registerDepStateGIDs (const std::vector< std::vector< int > > &varList) |
virtual const std::vector < std::string > & | getDepStoreVars () |
virtual void | registerDepStoreGIDs (const std::vector< std::vector< int > > &varList) |
virtual void | registerDepSolnLIDs (const std::vector< std::vector< int > > &depSolnLIDVecRef) |
virtual void | registerDepStateLIDs (const std::vector< std::vector< int > > &depStaLIDVecRef) |
virtual void | registerDepStoreLIDs (const std::vector< std::vector< int > > &depStoLIDVecRef) |
virtual void | registerGIDData (const std::vector< int > &counts, const std::vector< int > &GIDs, const std::vector< std::vector< int > > &jacGIDs) |
virtual void | getDepSolnGIDVec (std::vector< int > &depGIDVec) |
virtual bool | getIndexPairList (std::list< index_pair > &iplRef) |
virtual bool | getInstanceBreakPoints (std::vector< Util::BreakPoint > &breakPointTimes) |
virtual bool | updateSource () |
virtual bool | processInstanceParams () |
virtual bool | isConverged () |
virtual bool | testDAEMatrices (std::vector< std::string > &nameVec) |
virtual bool | loadTrivialDAE_FMatrixStamp () |
bool | trivialStampLoader (N_LAS_Matrix *matPtr) |
bool | zeroMatrixDiagonal (N_LAS_Matrix *matPtr) |
virtual bool | updateSecondaryState () |
virtual bool | plotfileFlag () |
virtual bool | loadDeviceMask () |
virtual void | acceptStep () |
virtual bool | loadDAEBVector () |
const InstanceName & | getName () const |
int | getNumIntVars () const |
int | getNumExtVars () const |
int | getNumStateVars () const |
int | getNumStoreVars () const |
void | setNumStoreVars (int num_store_vars) |
virtual void | getDevConMap (std::vector< int > &) |
virtual DeviceState * | getInternalState () |
virtual bool | setInternalState (const DeviceState &state) |
virtual bool | loadDFDV (int iElectrode, N_LAS_Vector *dfdvPtr) |
virtual bool | calcConductance (int iElectrode, const N_LAS_Vector *dxdvPtr) |
virtual std::map< int, std::string > & | getStateNameMap () |
virtual bool | outputPlotFiles () |
virtual bool | enablePDEContinuation () |
virtual bool | disablePDEContinuation () |
virtual void | setPDEContinuationAlpha (double alpha) |
virtual void | setPDEContinuationBeta (double beta) |
virtual bool | setInitialGuess () |
virtual double | getMaxTimeStepSize () |
bool | getOrigFlag () const |
void | setOrigFlag (bool origFlag_local) |
const std::vector< int > & | getDevLIDs () const |
const std::vector< std::vector < int > > & | getDevJacLIDs () const |
const std::vector< int > & | getStaLIDVec () const |
bool | getMergeRowColChecked () const |
void | setMergeRowColChecked (bool mergeRowColChecked_local) |
const MatrixLoadData & | getMatrixLoadData () const |
MatrixLoadData & | getMatrixLoadData () |
const ExternData & | getExternData () const |
![]() | |
DeviceEntity (ParametricData< void > ¶metric_data, const SolverState &solver_state, const DeviceOptions &device_options, const std::string &netlist_path, int netlist_line) | |
virtual | ~DeviceEntity () |
virtual CompositeParam * | constructComposite (const std::string &composite_name, const std::string ¶m_name) |
bool | setDefaultParam (double val) |
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 | getParam (const std::string ¶mName, double &result) const |
bool | getParamBreakpoints (std::vector< Util::BreakPoint > &) |
bool | updateDependentParameters (N_LAS_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 |
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) |
Private Member Functions | |
Instance (const Instance &) | |
Instance & | operator= (const Instance &) |
Private Attributes | |
Model & | model_ |
Util::Expression * | expPtr |
int | expNumVars |
std::vector< double > | expVarDerivs |
double | C |
double | IC |
double | length |
double | width |
double | temp |
double | tempCoeff1 |
double | tempCoeff2 |
bool | tempCoeff1Given |
bool | tempCoeff2Given |
double | age |
age in hours More... | |
double | ageCoef |
degradation coeficient. More... | |
double | baseCap |
the baseline capacitance before aging More... | |
bool | tempGiven |
bool | ICGiven |
bool | solVarDepC |
double | q0 |
charge in the capacitor More... | |
double | vcap |
int | li_Pos |
int | li_Neg |
int | li_Bra |
for the "voltage source" when IC is specified More... | |
int | li_QState |
std::vector< int > | li_dQdXState |
std::vector< int > | li_dCdXState |
int | li_vcapState |
int | li_capState |
int | li_store_dev_i |
int | APosEquPosNodeOffset |
int | ANegEquPosNodeOffset |
int | APosEquNegNodeOffset |
int | ANegEquNegNodeOffset |
std::vector< int > | APosEquDepVarOffsets |
std::vector< int > | ANegEquDepVarOffsets |
int | ABraEquPosNodeOffset |
int | ABraEquNegNodeOffset |
int | ABraEquBraNodeOffset |
int | APosEquBraNodeOffset |
int | ANegEquBraNodeOffset |
double * | qPosEquPosNodePtr |
double * | qNegEquPosNodePtr |
double * | qPosEquNegNodePtr |
double * | qNegEquNegNodePtr |
double * | fBraEquPosNodePtr |
double * | fBraEquNegNodePtr |
double * | fBraEquBraNodePtr |
double * | fPosEquBraNodePtr |
double * | fNegEquBraNodePtr |
std::vector< double * > | qPosEquDepVarsPtrs |
std::vector< double * > | qNegEquDepVarsPtrs |
std::vector< std::vector< int > > | jacStamp |
std::vector< std::vector< int > > | jacStamp_IC |
Friends | |
class | ParametricData< Instance > |
class | Model |
class | Traits |
class | Master |
class | capSensitivity |
Additional Inherited Members | |
![]() | |
std::vector< int > & | cols |
std::vector< double > & | vals |
NumericalJacobian * | numJacPtr |
bool | psLoaded |
bool | ssLoaded |
bool | rhsLoaded |
bool | origFlag |
int | numIntVars |
int | numExtVars |
int | numStateVars |
int | numStoreVars |
int | numLeadCurrentStoreVars |
bool | loadLeadCurrent |
std::vector< int > | devConMap |
bool | mergeRowColChecked |
![]() | |
void | jacStampMap (std::vector< std::vector< int > > &stamp_parent, std::vector< int > &map_parent, std::vector< std::vector< int > > &map2_parent, std::vector< std::vector< int > > &stamp, std::vector< int > &map, std::vector< std::vector< int > > &map2, int from, int to, int original_size) |
void | jacStampMap_fixOrder (std::vector< std::vector< int > > &stamp_parent, std::vector< std::vector< int > > &map2_parent, std::vector< std::vector< int > > &stamp, std::vector< std::vector< int > > &map2) |
void | outputJacStamp (const std::vector< std::vector< int > > &jac) |
void | outputJacMaps (const std::vector< int > &jacMap, const std::vector< std::vector< int > > &jacMap2) |
![]() | |
const ExternData & | extData |
std::list< index_pair > | intGIDList |
std::list< index_pair > | extGIDList |
std::list< index_pair > | indexPairList |
std::list< index_pair > | staGIDList |
std::vector< int > | intLIDVec |
std::vector< int > | extLIDVec |
std::vector< int > | staLIDVec |
std::vector< int > | stoLIDVec |
std::vector< int > | devLIDs |
std::vector< std::vector< int > > | devJacLIDs |
std::map< int, std::string > | intNameMap |
std::map< int, std::string > | stateNameMap |
std::map< int, std::string > | storeNameMap |
DeviceSupport | devSupport |
Capacitor instance.
This class refers to a single instance of the capacitor device. It contains indicies into the matrix equation. See the comments for the Resistor::Instance class for more details.
Definition at line 112 of file N_DEV_Capacitor.h.
Xyce::Device::Capacitor::Instance::Instance | ( | const Configuration & | configuration, |
const InstanceBlock & | instance_block, | ||
Model & | model, | ||
const FactoryBlock & | factory_block | ||
) |
Construct a Capacitor model from a "model block" that was created by the netlist parser.
configuration | |
model_block | |
factory_block |
Unlike the resistor, the capacitor's jacobian stamp is set up directly in the constructor, and is not static. This is because the capacitor supports some options that the resistor does not:
Both of these require that the Jacobian stamp for the device be modified. Use of a static Jacobian stamp would prevent this flexibility, because the static stamp would be used by all capacitor devices, even those that do not make use of the options.
Since the setting of the Jacobian stamp in this otherwise simple device is so complex, we will document how it is set here.
In its simplest form, the charge on the capacitor is
. Thus, the current out of the positive node is
, and the current "out" of the negative node is
. In the Xyce formulation, we load
into the Q vector for the positive node, and
into the Q vector for the negative node; the time integator will later differentiate this to obtain the currents. Thus, the contribution to the Jacobian from the capacitor (with constant capacitance and no initial condition) will require loading the dQdx matrix with the derivatives of
with respect to the voltage nodes:
The jacobian stamp in this case is the same as the one defined by the resistor: it has two rows, one for the positive node equation and one for negative node equation, and two columns, one for the positive node and one for the negative. Column 0's value in each row is 0 to reflect that the first nonzero value of the jacobian row is the one corresponding to the positive node, and column 1's value is 1 to reflect that the second nonzero corresponds to the dependence on the negative node.
If an initial condition is present, however, the circuit at DC is the same as if there were only a voltage source across the positive and negative nodes, and in transient it is the same as the capacitor without the voltage source present. Thus, at DC the current out of the positive node would be equal to the voltage source branch current, and the current out of the negative node would be the negative of that. Since these quantities are not differentiated they would be placed in the F vector, no the Q vector. An extra equation, called the "branch equation" stipulates that the voltage drop between the positive and negative node be equal to the initial condition, so this element of the F vector would be loaded with . Therefore in DC the dFdx matrix would be loaded with:
The the first two rows are for the positive and negative node equations, and the third row is for the branch equation. The third column is for the branch current variable. At DC nothing would be loaded into either the Q vector or its derivative.
In transient, the loads into the Q vector are the same as without the initial condition. Xyce requires that a single jacobian stamp be used for both the dFdx and dQdx matrices, and does not allow this matrix to vary between DC and transient. Thus the dQdx matrix would be loaded with:
The dFdx matrix must be loaded with a single value to turn off the branch equation and prevent a singular Jacobian:
The net result of this modification is that now, irrespective of whether we are at DC or in transient, every element of the 3x3 matrix is potentially nonzero in one or the other of dFdx or dQdx, and therefore our jacobian stamp is also a dense 3x3 matrix, with each column's value equal to that column's number.
Finally, if the capacitance is solution-variable dependent, each of the rows for positive and negative nodes must be augmented with an additional column for each variable that the capacitance depends on. These rows are similarly dense, and each value of the jacobian stamp for each column is equal to its column number.
Definition at line 319 of file N_DEV_Capacitor.C.
Xyce::Device::Capacitor::Instance::~Instance | ( | ) |
Definition at line 617 of file N_DEV_Capacitor.C.
|
private |
|
virtual |
Set up names for purely internal solution variables.
The capacitor device's initial condition code is implemented as putting a DC voltage source of the given value across the capacitor, to assure that the circuit is completely consistent at the operating point with having that voltage across the capacitor.
In the event that an initial condition is given, there is an extra solution variable, the branch current of the voltage source. We give it name that is the name of this capacitor with "_branch" appended.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 812 of file N_DEV_Capacitor.C.
|
inline |
Definition at line 165 of file N_DEV_Capacitor.h.
|
virtual |
Populates and returns the store name map.
If the DeviceInstance::storeNameMap is empty, populate it.
For the purpose of lead currents, store vector elements must be given names that can be used to locate lead currents at print time. When a netlist attempts to print, say, "I(C1)" the output code looks for an entry in the store vector named C1:DEV_I.
This method does the assignment of names to store vector elements.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 849 of file N_DEV_Capacitor.C.
|
virtual |
Return Jacobian stamp that informs topology of the layout of the resistor jacobian.
The Jacobian stamp of the capacitor depends on whether an initial condition is given or not.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 885 of file N_DEV_Capacitor.C.
|
virtual |
Load the DAE the derivative of the F vector with respect to the solution vector x, dFdx.
Loads the contributions for a single capacitor instance to the dFdx matrix (the F contribution to the Jacobian).
This method uses the Jacobian LIDs (row offsets) that were stored by registerJacLIDs.
The capacitor only loads the dFdx matrix when an initial condition is given on the instance line for the device.
Implements Xyce::Device::DeviceInstance.
Definition at line 1515 of file N_DEV_Capacitor.C.
|
virtual |
Load the DAE the derivative of the Q vector with respect to the solution vector x, dFdx.
Loads the contributions for a single resistor instance to the dFdx matrix (the Q contribution to the Jacobian).
This method uses the Jacobian LIDs (row offsets) that were stored by registerJacLIDs.
Implements Xyce::Device::DeviceInstance.
Definition at line 1430 of file N_DEV_Capacitor.C.
|
virtual |
Load the DAE F vector.
The Xyce DAE formulation solves the differential-algebraic equations These are vector equations resulting from the modified nodal analysis of the circuit.
This method loads the F-vector contributions for a single capacitor instance.
In this method, the offsets defined in registerLIDs are used to store the device's F contributions into the F vector.
The only time a capacitor adds anything to the F vector is in the DC phase of a computation if and only if an initial condition is given on the capacitor instance line.
Implements Xyce::Device::DeviceInstance.
Definition at line 1345 of file N_DEV_Capacitor.C.
|
virtual |
Load the DAE Q vector.
The Xyce DAE formulation solves the differential-algebraic equations These are vector equations resulting from the modified nodal analysis of the circuit.
This method loads the Q-vector contributions for a single capacitor instance.
In this method, the offsets defined in registerLIDs are used to store the device's Q contributions into the Q vector.
The Q vector is used for devices that store charge or magnetic energy. The capacitor is such a device
Implements Xyce::Device::DeviceInstance.
Definition at line 1287 of file N_DEV_Capacitor.C.
|
virtual |
Process parameters.
In general, the processParams method is intended as a place for complex manipulation of parameters that must happen if temperature or other external changes happen.
The Capacitor device supports an "AGE" parameter and a degradation rate parameter that together determine how to modify the capacitance given on the instance line. Further, Xyce supports a "semiconductor capacitor" model which allows the user to specify the capacitance through a combination of model parameters (junction capacitance and junction sidewall capacitance) and instance parameters (length and width).
Both of these methods of capacitance value determination need to be done after the normal processing of netlist parameters. That processing is done here.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 199 of file N_DEV_Capacitor.C.
|
virtual |
Register the Jacobian local IDs.
jacLIDVec | Jacobian local Ids |
Having established local IDs for the solution variables, Topology must also assign local IDs for the elements of the Jacobian matrix.
For each non-zero element that was identified in the jacobianStamp, Topology will assign a Jacobian LID. The jacLIDVec will have the same structure as the JacStamp, but the values in the jacLIDVec will be offsets into the row of the sparse Jacobian matrix corresponding to the non-zero identified in the stamp.
These offsets are stored in this method for use later when we load the Jacobian.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 932 of file N_DEV_Capacitor.C.
|
virtual |
Register local IDs.
Register the local internal and external node IDs.
intLIDVecRef | internal local IDs from topology package |
extLIDVecRef | external local IDs from topology package |
Instantiation (calling the device constructor) of the device sets up variables numIntVars and numExtVars, the numbers of internal and external variables associated with the device. This information is then used by the Topology package to assign locations in the solution vector (and all other vectors of the same shape) for those variables. The "Local IDs" (LIDs) of these locations are provided by Topology so the device can know where to load its data.
This method saves the LIDs from Topology and associates each one with a particular local name for the internal or external variable. They are then used when we load the F and Q vectors.
The Capacitor device has no internal variables, so this method makes no use of the intLIDVecRef array.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 656 of file N_DEV_Capacitor.C.
|
virtual |
Register the local state IDs.
staLIDVecRef | State variable local IDs |
In general, devices may declare at construction that they require storage locations in the "state vector." Topology assigns locations in the state vector and returns "Local IDs" (LIDs) for devices to use for their state vector entries. If a device uses state vector entries, it uses the registerStateLIDs method to save the local IDs for later use.
The capacitor has at least one state variable (the charge) and as many as three (the charge plus state variables used to support the "voltage dependent capacitance" feature) plus the number of variables on whihc the capacitance depends.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 726 of file N_DEV_Capacitor.C.
|
virtual |
Register the local store IDs.
In addition to state vector, Xyce maintains a separate datastructure called a "store" vector. As with other such vectors, the device declares at construction time how many store vector entries it needs, and later Topology assigns locations for devices, returning LIDs.
These LIDs are stored in this method for later use.
The Capacitor device uses exactly one "store vector" element, where it keeps the "lead current" that may be used on .PRINT lines as "I(C1)" for the current through resistor R1.
stoLIDVecRef | Store variable local IDs |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 782 of file N_DEV_Capacitor.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 1544 of file N_DEV_Capacitor.C.
|
virtual |
Setup direct access pointer to solution matrix and vectors.
As an alternative to the row offsets defined in registerJacLIDs, it is also possible to obtain direct pointers of the Jacobian elements.
This method uses the offsets obtained in registerJacLIDs to retrieve the pointers.
In the resistor device the pointers to the matrix are only saved (and are only used for matrix access) if Xyce_NONPOINTER_MATRIX_LOAD is NOT defined at compile time. For some devices the use of pointers instead of array indexing can be a performance enhancement.
Use of pointers in this device is disabled by defining Xyce_NONPOINTER_MATRIX_LOAD at compile time. When disabled, array indexing with the offsets from registerJacLIDs is used in the matrix load methods.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 1027 of file N_DEV_Capacitor.C.
|
inlinevirtual |
Implements Xyce::Device::DeviceInstance.
Definition at line 147 of file N_DEV_Capacitor.h.
|
virtual |
Update the state variables.
The capacitor's state variables are used to store the charge on the capacitor. In the case of a constant capacitance the charge is , but the computation is much more complex if the capacitance is variable.
For solution-variable dependent cap in transient, we can't use the expression because the capacitance is actually dQ/dV, not Q/V. We must integrate CdV to get the charge. We approximate this by incrementally adding C'*deltaV as V changes. C' is the average capacitance between this and the previous step. Using the average assures charge conservation, at least when C is a function of vcap alone.
When C is not a function of vcap alone, we have additional derivative terms that must also be integrated for proper computation of all dQdx entries.
Implements Xyce::Device::DeviceInstance.
Definition at line 1101 of file N_DEV_Capacitor.C.
|
virtual |
Update the parameters that depend on the temperature of the device.
temp_tmp | temperature |
Xyce has a number of mechanisms that allow temperature to be changed after a device has been instantiated. These include .STEP loops over temperature. When temperature is changed, any device that has parameters that depend on temperature must be updated. That updating happens here.
The capacitor device supports temperature-dependent resistance through its TC1 (linear dependence) and TC2 (quadratic dependence) parameters. If these parameters are specified, the capacitance must be updated.
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 271 of file N_DEV_Capacitor.C.
|
virtual |
Reimplemented from Xyce::Device::DeviceInstance.
Definition at line 1582 of file N_DEV_Capacitor.C.
|
friend |
Definition at line 118 of file N_DEV_Capacitor.h.
|
friend |
Definition at line 117 of file N_DEV_Capacitor.h.
|
friend |
Definition at line 115 of file N_DEV_Capacitor.h.
|
friend |
Definition at line 114 of file N_DEV_Capacitor.h.
|
friend |
Definition at line 116 of file N_DEV_Capacitor.h.
|
private |
Definition at line 238 of file N_DEV_Capacitor.h.
|
private |
Definition at line 237 of file N_DEV_Capacitor.h.
|
private |
Definition at line 236 of file N_DEV_Capacitor.h.
|
private |
age in hours
Definition at line 199 of file N_DEV_Capacitor.h.
|
private |
degradation coeficient.
Definition at line 200 of file N_DEV_Capacitor.h.
|
private |
Definition at line 240 of file N_DEV_Capacitor.h.
|
private |
Definition at line 234 of file N_DEV_Capacitor.h.
|
private |
Definition at line 230 of file N_DEV_Capacitor.h.
|
private |
Definition at line 228 of file N_DEV_Capacitor.h.
|
private |
Definition at line 239 of file N_DEV_Capacitor.h.
|
private |
Definition at line 233 of file N_DEV_Capacitor.h.
|
private |
Definition at line 229 of file N_DEV_Capacitor.h.
|
private |
Definition at line 227 of file N_DEV_Capacitor.h.
|
private |
the baseline capacitance before aging
Definition at line 201 of file N_DEV_Capacitor.h.
|
private |
Definition at line 180 of file N_DEV_Capacitor.h.
|
private |
Definition at line 175 of file N_DEV_Capacitor.h.
|
private |
Definition at line 174 of file N_DEV_Capacitor.h.
|
private |
Definition at line 177 of file N_DEV_Capacitor.h.
|
private |
Definition at line 251 of file N_DEV_Capacitor.h.
|
private |
Definition at line 250 of file N_DEV_Capacitor.h.
|
private |
Definition at line 249 of file N_DEV_Capacitor.h.
|
private |
Definition at line 253 of file N_DEV_Capacitor.h.
|
private |
Definition at line 252 of file N_DEV_Capacitor.h.
|
private |
Definition at line 181 of file N_DEV_Capacitor.h.
|
private |
Definition at line 204 of file N_DEV_Capacitor.h.
|
private |
Definition at line 259 of file N_DEV_Capacitor.h.
|
private |
Definition at line 260 of file N_DEV_Capacitor.h.
|
private |
Definition at line 184 of file N_DEV_Capacitor.h.
|
private |
for the "voltage source" when IC is specified
Definition at line 215 of file N_DEV_Capacitor.h.
|
private |
Definition at line 222 of file N_DEV_Capacitor.h.
|
private |
Definition at line 220 of file N_DEV_Capacitor.h.
|
private |
Definition at line 219 of file N_DEV_Capacitor.h.
|
private |
Definition at line 214 of file N_DEV_Capacitor.h.
|
private |
Definition at line 213 of file N_DEV_Capacitor.h.
|
private |
Definition at line 217 of file N_DEV_Capacitor.h.
|
private |
Definition at line 224 of file N_DEV_Capacitor.h.
|
private |
Definition at line 221 of file N_DEV_Capacitor.h.
|
private |
Definition at line 171 of file N_DEV_Capacitor.h.
|
private |
charge in the capacitor
Definition at line 208 of file N_DEV_Capacitor.h.
|
private |
Definition at line 256 of file N_DEV_Capacitor.h.
|
private |
Definition at line 247 of file N_DEV_Capacitor.h.
|
private |
Definition at line 245 of file N_DEV_Capacitor.h.
|
private |
Definition at line 255 of file N_DEV_Capacitor.h.
|
private |
Definition at line 246 of file N_DEV_Capacitor.h.
|
private |
Definition at line 244 of file N_DEV_Capacitor.h.
|
private |
Definition at line 205 of file N_DEV_Capacitor.h.
|
private |
Definition at line 186 of file N_DEV_Capacitor.h.
|
private |
Definition at line 190 of file N_DEV_Capacitor.h.
|
private |
Definition at line 195 of file N_DEV_Capacitor.h.
|
private |
Definition at line 191 of file N_DEV_Capacitor.h.
|
private |
Definition at line 196 of file N_DEV_Capacitor.h.
|
private |
Definition at line 203 of file N_DEV_Capacitor.h.
|
private |
Definition at line 210 of file N_DEV_Capacitor.h.
|
private |
Definition at line 185 of file N_DEV_Capacitor.h.