Logo Search packages:      
Sourcecode: ktechlab version File versions  Download package

NonLinear Class Reference

#include <nonlinear.h>

Inheritance diagram for NonLinear:

Element BJT Diode

List of all members.


Detailed Description

Represents a non-linear circuit element (such as a diode).

Author:
David Saxton

Definition at line 20 of file nonlinear.h.


Public Types

enum  Type {
  Element_BJT, Element_Capacitance, Element_CCCS, Element_CCVS,
  Element_CurrentSignal, Element_CurrentSource, Element_Diode, Element_Inductance,
  Element_LogicIn, Element_LogicOut, Element_OpAmp, Element_Resistance,
  Element_VCCS, Element_VCVS, Element_VoltagePoint, Element_VoltageSignal,
  Element_VoltageSource
}

Public Member Functions

virtual void add_initial_dc ()=0
virtual void add_map ()
CBranch * cbranch (const uint num)
double cbranchCurrent (const int branch)
CNode * cnode (const uint num)
double cnodeVoltage (const int node)
void componentDeleted ()
ElementSetelementSet ()
void elementSetDeleted ()
virtual bool isNonLinear ()
virtual bool isReactive ()
int numCBranches ()
int numCNodes ()
void setCBranches (const int b0=noBranch, const int b1=noBranch, const int b2=noBranch, const int b3=noBranch)
void setCNodes (const int n0=noCNode, const int n1=noCNode, const int n2=noCNode, const int n3=noCNode)
virtual void setElementSet (ElementSet *c)
virtual Type type () const =0
virtual void update_dc ()=0
virtual void updateCurrents ()=0

Public Attributes

double m_cnodeI [8]
 Current flowing into the cnodes from the element.

Protected Member Functions

double & A_b (uint i, uint j)
double & A_c (uint i, uint j)
double & A_d (uint i, uint j)
double & A_g (uint i, uint j)
double & b_i (uint i)
double & b_v (uint i)
double diodeConductance (double v, double I_S, double Vte) const
double diodeCriticalVoltage (double I_S, double Vte) const
double diodeCurrent (double v, double I_S, double Vte) const
void diodeJunction (double v, double I_S, double Vte, double *I, double *g) const
double diodeVoltage (double v, double V_prev, double Vt, double V_crit) const
void resetCurrents ()
virtual bool updateStatus ()

Protected Attributes

bool b_status
int m_numCBranches
int m_numCNodes
Matrixp_A
Vectorp_b
CBranch * p_cbranch [4]
CNode * p_cnode [MAX_CNODES]
ElementSetp_eSet

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index