Qucs-core  0.0.18
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Data Fields | Private Member Functions | Private Attributes
cpwline Class Reference

#include <cpwline.h>

Inheritance diagram for cpwline:
qucs::circuit qucs::object qucs::integrator qucs::states< state_type_t >

Public Member Functions

 CREATOR (cpwline)
 
void initSP (void)
 placehoder for S-Parameter initialisation function More...
 
void calcSP (nr_double_t)
 
void calcNoiseSP (nr_double_t)
 
void initDC (void)
 
void initTR (void)
 
void initAC (void)
 
void calcAC (nr_double_t)
 
void calcNoiseAC (nr_double_t)
 
void saveCharacteristics (nr_double_t)
 
- Public Member Functions inherited from qucs::circuit
 circuit ()
 
 circuit (int)
 
 circuit (const circuit &)
 
 ~circuit ()
 
virtual void calcDC (void)
 
virtual void restartDC (void)
 
virtual void initNoiseSP (void)
 
virtual void initNoiseAC (void)
 
virtual void calcTR (nr_double_t)
 
virtual void initHB (void)
 
virtual void calcHB (nr_double_t)
 
virtual void initHB (int)
 
virtual void calcHB (int)
 
virtual void calcOperatingPoints (void)
 
virtual void saveOperatingPoints (void)
 
virtual void calcCharacteristics (nr_double_t)
 
void setNode (int, const char *, int intern=0)
 
nodegetNode (int)
 
void setType (int t)
 
int getType (void)
 
int getSize (void)
 Get the number of ports the circuit element has. More...
 
void setSize (int)
 Set the number of ports the circuit element has. More...
 
bool isEnabled (void)
 Reports if circuit element is enabled. More...
 
void setEnabled (bool e)
 Set a circuit element to be enabled or diabled. More...
 
bool isVariableSized (void)
 
void setVariableSized (bool v)
 
bool isProbe (void)
 
void setProbe (bool p)
 
void setNet (net *n)
 
netgetNet (void)
 
char * getSubcircuit (void)
 
void setSubcircuit (char *)
 
environmentgetEnv (void)
 
void setEnv (environment *e)
 
void setInternalVoltageSource (bool i)
 
bool isInternalVoltageSource (void)
 
void setVoltageSource (int s)
 
int getVoltageSource (void)
 
int getVoltageSources (void)
 
void setVoltageSources (int)
 
void voltageSource (int, int, int, nr_double_t value=0.0)
 
bool isVSource (void)
 
void setVSource (bool v)
 
bool isISource (void)
 
void setISource (bool i)
 
int getNoiseSources (void)
 
void setNoiseSources (int)
 
void transientCapacitance (int, int, int, nr_double_t, nr_double_t, nr_double_t)
 
void transientCapacitance (int, int, nr_double_t, nr_double_t, nr_double_t)
 
void transientCapacitanceQ (int, int, int, nr_double_t)
 
void transientCapacitanceQ (int, int, nr_double_t)
 
void transientCapacitanceC (int, int, int, int, nr_double_t, nr_double_t)
 
void transientCapacitanceC (int, int, nr_double_t, nr_double_t)
 
void transientCapacitanceC2V (int, int, int, nr_double_t, nr_double_t)
 
void transientCapacitanceC2Q (int, int, int, nr_double_t, nr_double_t)
 
void setDelta (nr_double_t *d)
 
nr_double_t * getDelta (void)
 
bool hasHistory (void)
 
void setHistory (bool h)
 
void initHistory (nr_double_t)
 
void deleteHistory (void)
 
void truncateHistory (nr_double_t)
 
void appendHistory (int, nr_double_t)
 
void applyHistory (history *)
 
nr_double_t getV (int, nr_double_t)
 
nr_double_t getV (int, int)
 
nr_double_t getJ (int, nr_double_t)
 
nr_double_t getHistoryAge (void)
 
void setHistoryAge (nr_double_t)
 
int getHistorySize (void)
 
nr_double_t getHistoryTFromIndex (int)
 
int getPort (void)
 
void setPort (int p)
 
int getInserted (void)
 
void setInserted (int i)
 
bool isOriginal (void)
 
void setOriginal (bool o)
 
substrategetSubstrate (void)
 
void setSubstrate (substrate *)
 
nr_complex_t getS (int, int)
 
nr_complex_t getN (int, int)
 
nr_complex_t getY (int, int)
 
nr_complex_t getB (int, int)
 
nr_complex_t getC (int, int)
 
nr_complex_t getD (int, int)
 
nr_complex_t getQV (int, int)
 
nr_complex_t getGV (int)
 
nr_complex_t getCV (int)
 
nr_complex_t getE (int)
 
nr_complex_t getI (int)
 
nr_complex_t getJ (int)
 
nr_complex_t getV (int)
 
nr_complex_t getQ (int)
 
nr_double_t getG (int, int)
 
void setS (int, int, nr_complex_t)
 
void setN (int, int, nr_complex_t)
 
void setY (int, int, nr_complex_t)
 
void setB (int, int, nr_complex_t)
 
void setC (int, int, nr_complex_t)
 
void setD (int, int, nr_complex_t)
 
void setQV (int, int, nr_complex_t)
 
void setGV (int, nr_complex_t)
 
void setCV (int, nr_complex_t)
 
void setE (int, nr_complex_t)
 
void setI (int, nr_complex_t)
 
void setJ (int, nr_complex_t)
 
void setV (int, nr_complex_t)
 
void setQ (int, nr_complex_t)
 
void setG (int, int, nr_double_t)
 
void clearB (void)
 
void clearC (void)
 
void clearD (void)
 
void clearE (void)
 
void clearI (void)
 
void clearJ (void)
 
void clearV (void)
 
void clearY (void)
 
void addY (int, int, nr_complex_t)
 
void addY (int, int, nr_double_t)
 
void addI (int, nr_complex_t)
 
void addI (int, nr_double_t)
 
void addOperatingPoint (const char *, nr_double_t)
 
nr_double_t getOperatingPoint (const char *)
 
void setOperatingPoint (const char *, nr_double_t)
 
int hasOperatingPoint (char *)
 
valuelist< operatingpoint > & getOperatingPoints (void)
 
void addCharacteristic (const char *, nr_double_t)
 
nr_double_t getCharacteristic (char *)
 
void setCharacteristic (const char *, nr_double_t)
 
int hasCharacteristic (char *)
 
valuelist< characteristic > & getCharacteristics (void)
 
void setNonLinear (bool l)
 
bool isNonLinear (void)
 
void print (void)
 
void setInternalNode (int, const char *)
 
void allocMatrixS (void)
 
void allocMatrixN (int sources=0)
 
void allocMatrixMNA (void)
 
void freeMatrixMNA (void)
 
void allocMatrixHB (void)
 
void freeMatrixHB (void)
 
void setMatrixS (matrix)
 
matrix getMatrixS (void)
 
void setMatrixN (matrix)
 
matrix getMatrixN (void)
 
void setMatrixY (matrix)
 
matrix getMatrixY (void)
 
- Public Member Functions inherited from qucs::object
 object ()
 
 object (const char *)
 
 object (const object &)
 
virtual ~object ()
 
objectgetNext (void)
 
void setNext (object *o)
 
objectgetPrev (void)
 
void setPrev (object *o)
 
void setName (const char *)
 
char * getName (void)
 
void addProperty (property *)
 
propertyaddProperty (const char *, const char *)
 
propertyaddProperty (const char *, nr_double_t)
 
propertyaddProperty (const char *, variable *)
 
void setProperty (const char *, char *)
 
void setProperty (const char *, nr_double_t)
 
void setScaledProperty (const char *, nr_double_t)
 
void setProperty (const char *, variable *)
 
vectorgetPropertyVector (const char *)
 
char * getPropertyString (const char *)
 
char * getPropertyReference (const char *)
 
nr_double_t getPropertyDouble (const char *)
 
nr_double_t getScaledProperty (const char *)
 
int getPropertyInteger (const char *)
 
bool hasProperty (const char *)
 
bool isPropertyGiven (const char *)
 
void copyProperties (property *)
 
void deleteProperties (void)
 
int countProperties (void)
 
char * propertyList (void)
 
 object ()
 
 object (const char *)
 
 object (const object &)
 
virtual ~object ()
 
objectgetNext (void)
 
void setNext (object *o)
 
objectgetPrev (void)
 
void setPrev (object *o)
 
void setName (const char *)
 
char * getName (void)
 
void addProperty (property *)
 
propertyaddProperty (const char *, const char *)
 
propertyaddProperty (const char *, nr_double_t)
 
propertyaddProperty (const char *, variable *)
 
void setProperty (const char *, char *)
 
void setProperty (const char *, nr_double_t)
 
void setScaledProperty (const char *, nr_double_t)
 
void setProperty (const char *, variable *)
 
vectorgetPropertyVector (const char *)
 
char * getPropertyString (const char *)
 
char * getPropertyReference (const char *)
 
nr_double_t getPropertyDouble (const char *)
 
nr_double_t getScaledProperty (const char *)
 
int getPropertyInteger (const char *)
 
bool hasProperty (const char *)
 
bool isPropertyGiven (const char *)
 
void copyProperties (property *)
 
void deleteProperties (void)
 
int countProperties (void)
 
char * propertyList (void)
 
- Public Member Functions inherited from qucs::integrator
 integrator ()
 
 integrator (const integrator &)
 
 ~integrator ()
 
void setIntegration (integrate_func_t f)
 
void setConductance (conductor_func_t f)
 
void integrate (int, nr_double_t, nr_double_t &, nr_double_t &)
 
void conductor (nr_double_t, nr_double_t &)
 
void setOrder (int o)
 
int getOrder (void)
 
void setMode (int s)
 
int getMode (void)
 
void setCoefficients (nr_double_t *c)
 
nr_double_t * getCoefficients (void)
 
- Public Member Functions inherited from qucs::states< state_type_t >
 states ()
 
 states (const states &)
 
 ~states ()
 
state_type_t getState (int, int n=0)
 
void setState (int, state_type_t, int n=0)
 
void initStates (void)
 
void clearStates (void)
 
int getStates (void)
 
void setStates (int n)
 
void nextState (void)
 
void prevState (void)
 
void fillState (int, state_type_t)
 
void saveState (int, state_type_t *)
 
void inputState (int, state_type_t *)
 

Static Public Member Functions

static void ellipke (nr_double_t, nr_double_t &, nr_double_t &)
 
static nr_double_t ellipk (nr_double_t)
 
static nr_double_t ellipa (nr_double_t)
 
static void analyseQuasiStatic (nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, int, nr_double_t &, nr_double_t &)
 
static void analyseDispersion (nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t, nr_double_t &, nr_double_t &)
 
- Static Public Member Functions inherited from qucs::circuit
static char * createInternal (const char *, const char *)
 

Data Fields

 CLIN
 
 PROP_COMPONENT
 
 PROP_NO_SUBSTRATE
 
 PROP_LINEAR
 

Private Member Functions

void calcAB (nr_double_t, nr_double_t &, nr_double_t &, nr_double_t &)
 
void initPropagation (void)
 

Private Attributes

nr_double_t sr_er
 
nr_double_t sr_er0
 
nr_double_t zl_factor
 
nr_double_t ac_factor
 
nr_double_t ad_factor
 
nr_double_t bt_factor
 
nr_double_t fte
 
nr_double_t G
 
nr_double_t len
 
nr_double_t tand
 
nr_double_t rho
 
nr_double_t Zl
 
nr_double_t Er
 

Additional Inherited Members

- Public Types inherited from qucs::integrator
typedef void(* integrate_func_t )(integrator *, int, nr_double_t, nr_double_t &, nr_double_t &)
 
typedef void(* conductor_func_t )(integrator *, nr_double_t, nr_double_t &)
 
- Static Public Attributes inherited from qucs::circuit
static const nr_double_t z0 = 50.0
 
- Protected Attributes inherited from qucs::circuit
int type
 
int pol
 

Detailed Description

Definition at line 439 of file cpwline.cpp.

Member Function Documentation

void cpwline::analyseDispersion ( nr_double_t  W,
nr_double_t  s,
nr_double_t  h,
nr_double_t  er,
nr_double_t  ZlEff,
nr_double_t  ErEff,
nr_double_t  frequency,
nr_double_t &  ZlEffFreq,
nr_double_t &  ErEffFreq 
)
static

Definition at line 349 of file cpwline.cpp.

void cpwline::analyseQuasiStatic ( nr_double_t  W,
nr_double_t  s,
nr_double_t  h,
nr_double_t  t,
nr_double_t  er,
int  backMetal,
nr_double_t &  ZlEff,
nr_double_t &  ErEff 
)
static

Definition at line 287 of file cpwline.cpp.

void cpwline::calcAB ( nr_double_t  f,
nr_double_t &  zl,
nr_double_t &  al,
nr_double_t &  bt 
)
private

Definition at line 232 of file cpwline.cpp.

void cpwline::calcAC ( nr_double_t  frequency)
virtual

Reimplemented from qucs::circuit.

Definition at line 403 of file cpwline.cpp.

void cpwline::calcNoiseAC ( nr_double_t  )
virtual

Reimplemented from qucs::circuit.

Definition at line 420 of file cpwline.cpp.

void cpwline::calcNoiseSP ( nr_double_t  )
virtual

Reimplemented from qucs::circuit.

Definition at line 376 of file cpwline.cpp.

void cpwline::calcSP ( nr_double_t  frequency)
virtual

Reimplemented from qucs::circuit.

Definition at line 264 of file cpwline.cpp.

cpwline::CREATOR ( cpwline  )
nr_double_t cpwline::ellipa ( nr_double_t  k)
static

Definition at line 103 of file cpwline.cpp.

nr_double_t cpwline::ellipk ( nr_double_t  k)
static

Definition at line 95 of file cpwline.cpp.

void cpwline::ellipke ( nr_double_t  arg,
nr_double_t &  k,
nr_double_t &  e 
)
static

K(k)

The function computes the complete elliptic integral of first kind K() and the second kind E() using the arithmetic-geometric mean algorithm (AGM) by Abramowitz and Stegun.

Todo:
move to common math

Definition at line 48 of file cpwline.cpp.

void cpwline::initAC ( void  )
virtual

Reimplemented from qucs::circuit.

Definition at line 397 of file cpwline.cpp.

void cpwline::initDC ( void  )
virtual

Reimplemented from qucs::circuit.

Definition at line 384 of file cpwline.cpp.

void cpwline::initPropagation ( void  )
private

Definition at line 122 of file cpwline.cpp.

void cpwline::initSP ( void  )
virtual

placehoder for S-Parameter initialisation function

Virtual function intended to be overridden by the inheiriting circuit element's S-Parameter initialisation function. initSP is called before commencing the simulation to set up the S-Parameter matrix.

Reimplemented from qucs::circuit.

Definition at line 115 of file cpwline.cpp.

void cpwline::initTR ( void  )
virtual

Reimplemented from qucs::circuit.

Definition at line 393 of file cpwline.cpp.

void cpwline::saveCharacteristics ( nr_double_t  )
virtual

Reimplemented from qucs::circuit.

Definition at line 259 of file cpwline.cpp.

Field Documentation

nr_double_t cpwline::ac_factor
private

Definition at line 62 of file cpwline.h.

nr_double_t cpwline::ad_factor
private

Definition at line 63 of file cpwline.h.

nr_double_t cpwline::bt_factor
private

Definition at line 64 of file cpwline.h.

cpwline::CLIN

Definition at line 440 of file cpwline.cpp.

nr_double_t cpwline::Er
private

Definition at line 67 of file cpwline.h.

nr_double_t cpwline::fte
private

Definition at line 65 of file cpwline.h.

nr_double_t cpwline::G
private

Definition at line 65 of file cpwline.h.

nr_double_t cpwline::len
private

Definition at line 66 of file cpwline.h.

cpwline::PROP_COMPONENT

Definition at line 440 of file cpwline.cpp.

cpwline::PROP_LINEAR

Definition at line 440 of file cpwline.cpp.

cpwline::PROP_NO_SUBSTRATE

Definition at line 440 of file cpwline.cpp.

nr_double_t cpwline::rho
private

Definition at line 66 of file cpwline.h.

nr_double_t cpwline::sr_er
private

Definition at line 59 of file cpwline.h.

nr_double_t cpwline::sr_er0
private

Definition at line 60 of file cpwline.h.

nr_double_t cpwline::tand
private

Definition at line 66 of file cpwline.h.

nr_double_t cpwline::Zl
private

Definition at line 67 of file cpwline.h.

nr_double_t cpwline::zl_factor
private

Definition at line 61 of file cpwline.h.


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