Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

device Class Reference

The superclass for all device classes. More...

#include <device.h>

Inheritance diagram for device::

nport attenuator branch circuit circulator connection current_sink data_ptr_nport deembed generator hybrid180 hybrid90 inst_circuit power_divider reduced_nport sdata_interp series_tee simple_nport slot_antenna spimp time_delay transconductance transformer trl_base twin_slot_antenna voltage_source yterm zterm List of all members.

Public Methods

 device ()
 Constructor assigns a unique id by using devcount. More...

 device (const device &)
 Copy constructor assigns a unique id by using devcount. More...

device& operator= (const device &)
 Can't use default assigment operator, since id is const. More...

virtual ~device ()

Public Attributes

const unsigned long id
 A unique serial number or id tag for this device instance. More...


Static Public Attributes

parameter T = 300 * Kelvin
 Global temperature. More...

parameter f = 0.0
 Global frequency. More...

parameter Z0 = 50 * Ohm
 Global normalization impedance. More...


Protected Attributes

state_tag last_state
 Keep track of the last operating state where this device was calculated. More...


Static Private Attributes

unsigned long devcount = 0
 Counter of total number of devices created. More...


Detailed Description

The superclass for all device classes.

The main duties of class device are to:

(1) hold the global state variables:

(2) set a unique id tag for each device created.

class device is an abstract class. It will never be instantiated directly.

Definition at line 63 of file device.h.


Constructor & Destructor Documentation

device::device ( ) [inline]
 

Constructor assigns a unique id by using devcount.

Definition at line 116 of file device.h.

device::device ( const device & ) [inline]
 

Copy constructor assigns a unique id by using devcount.

Definition at line 119 of file device.h.

device::~device ( ) [inline, virtual]
 

Definition at line 125 of file device.h.


Member Function Documentation

device & device::operator= ( const device & ) [inline]
 

Can't use default assigment operator, since id is const.

Definition at line 122 of file device.h.


Member Data Documentation

parameter device::T = 300 * Kelvin [static]
 

Global temperature.

The default is set in nport.cc.

Controls the temperature used for device calculations. It must be set to the desired temp. It is a parameter, so it may be set to shadow another parameter variable. Many devices have their own temperature variable which will override device::T if desired.

Definition at line 54 of file nport.cc.

Referenced by mixer::analyzer::calc_X().

parameter device::Z0 = 50 * Ohm [static]
 

Global normalization impedance.

The default is set in nport.cc.

Sets the normalizing impedance used for S matrix calcs. It is a parameter, but should not be set to shadow another. It may be useful to have other parameters shadow it, however.

ALL RESPONSE CALCULATIONS PERFORMED BY CIRCUIT ELEMENTS (DERIVED FROM CLASS nport) MUST USE THE VALUE OF device::Z0

Definition at line 55 of file nport.cc.

unsigned long device::devcount = 0 [static, private]
 

Counter of total number of devices created.

Used to set device::id.

Definition at line 52 of file nport.cc.

parameter device::f = 0.0 [static]
 

Global frequency.

The default is set in nport.cc.

Controls the frequency used for all device calculations. It must be set to the desired freq. It is a parameter, so it may be set to shadow another parameter variable, or may in turn be shadowed by another parameter.

Definition at line 56 of file nport.cc.

const unsigned long device::id
 

A unique serial number or id tag for this device instance.

Definition at line 113 of file device.h.

state_tag device::last_state [protected]
 

Keep track of the last operating state where this device was calculated.

Definition at line 109 of file device.h.


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

Please direct comments and corrections to supermix@submm.caltech.edu
Go to the supermix home page
Generated by doxygen1.2.7