Template Class CircuitNode

Inheritance Relationships

Base Type

Class Documentation

template<typename ScalarT, typename IdxT>
class CircuitNode : public GridKit::Model::Evaluator<ScalarT, IdxT>

Circuit node representing a connection point.

Public Functions

inline virtual int initialize()

Initialize node variables.

inline virtual int tagDifferentiable()

Node variables are algebraic.

inline virtual int setAbsoluteTolerance(RealT rel_tol)

Compute the absolute tolerance for each variable in the model.

This represents a “noise” level close to zero for which pure relative error cannot be used.

Parameters:

rel_tol – The relative tolerance which can be used to pick the absolute tolerance.

Template Parameters:
  • ScalarT – Scalar data type

  • IdxT – Index data type

Returns:

int 0 if successful, non-zero otherwise.

inline virtual int evaluateResidual()

Node does not compute residuals, so here we just reset residual values.

Warning

This implementation assumes node residuals are always evaluated before component model residuals.

inline virtual bool hasJacobian() final

Is the Jacobian defined. Used in IDA to determine wether DQ is used or not.

Returns:

true

Returns:

false

inline virtual int evaluateJacobian()

There is no Jacobian for node variables.

inline virtual VectorT &absoluteTolerance() final

Get the absolute tolerance for each variable in the model.

Returns:

a reference to the absolute tolerance vector.

Pre:

setAbsoluteTolerance must have been called first.

inline virtual const VectorT &absoluteTolerance() const final

Get the absolute tolerance for each variable in the model.

Returns:

a const reference to the absolute tolerance vector.

Pre:

setAbsoluteTolerance must have been called first.