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

mixer Class Reference

#include <mixer.h>

Inheritance diagram for mixer::

data_ptr_nport nport device List of all members.

Public Types

enum  { Off = 0, Always = 1, Smart = 2 }

Public Methods

 mixer ()
 mixer (const mixer &)
mixer& operator= (const mixer &)
int flag_mixer_incomplete () const
int flag_state_invalid () const
int flag_balance_inaccurate () const
mixer& harmonics (int)
int harmonics () const
mixer& add_junction (junction &)
int junctions () const
mixer& void_junctions ()
mixer& set_LO (double f)
mixer& set_LO (abstract_real_parameter *pf)
mixer& set_bias (nport &)
mixer& set_if (nport &)
mixer& set_rf (nport &)
mixer& set_balance_terminator (nport &, int)
int port (int p, int h)
double freq (int port)
int size ()
 The number of ports this device has. More...

mixer& initialize_operating_state ()
int balance ()
mixer& initialize_mode (int f)
mixer& initialize_operating_state (const Matrix &V)
mixer& save_operating_state (Matrix &V)
mixer& auto_balance (int f)
mixer& balance_parameters (int max_iterations, double tol_1, double tol_m, double tol_x, double alpha)
int balance_iterations ()
Vector I_junc (int m)
Vector V_junc (int m)
const sdataget_term_data ()

Public Attributes

parameter LO

Private Methods

void auto_state ()
void recalc ()
 The function for calculating sdata. More...

void changed ()

Private Attributes

int max_harmonics
int num_junctions
double LO_saved
int balance_init_flag
int auto_balance_flag
int balance_not_ok_flag
nportbias_circuit
nportif_circuit
nportrf_circuit
std::vector<nport *> term
std::vector<generatordefault_term
std::vector<junction *> junc
mixer::balancer balance_
mixer::analyzer ssignal_
mixer::analyzer tsignal_

Static Private Attributes

unsigned global_mixer_index = 0

Member Enumeration Documentation

anonymous enum
 

Enumeration values:
Off  
Always  
Smart  

Definition at line 276 of file mixer.h.


Constructor & Destructor Documentation

mixer::mixer ( )
 

Definition at line 72 of file mixer.cc.

mixer::mixer ( const mixer & m )
 

Definition at line 86 of file mixer.cc.


Member Function Documentation

Vector mixer::I_junc ( int m )
 

Definition at line 442 of file mixer.cc.

Referenced by iv_match::get_b(), fts_match::get_b(), mixer_currents::recalc(), and fts_match::reset().

Vector mixer::V_junc ( int m )
 

Definition at line 454 of file mixer.cc.

mixer & mixer::add_junction ( junction & J )
 

Definition at line 143 of file mixer.cc.

mixer & mixer::auto_balance ( int f )
 

Definition at line 323 of file mixer.cc.

void mixer::auto_state ( ) [private]
 

Definition at line 402 of file mixer.cc.

Referenced by get_term_data(), and recalc().

int mixer::balance ( ) [inline]
 

Definition at line 238 of file mixer.h.

Referenced by iv_match::get_b(), fts_match::get_b(), and fts_match::reset().

int mixer::balance_iterations ( ) [inline]
 

Definition at line 293 of file mixer.h.

mixer & mixer::balance_parameters ( int m,
double t_1,
double t_m,
double t_x,
double a )
 

Definition at line 435 of file mixer.cc.

void mixer::changed ( ) [inline, private]
 

Definition at line 381 of file mixer.h.

Referenced by add_junction(), harmonics(), operator=(), set_balance_terminator(), set_bias(), set_if(), set_rf(), and void_junctions().

int mixer::flag_balance_inaccurate ( ) const
 

Definition at line 312 of file mixer.cc.

int mixer::flag_mixer_incomplete ( ) const
 

Definition at line 274 of file mixer.cc.

Referenced by get_term_data(), initialize_operating_state(), mixer::balancer::operator()(), recalc(), and size().

int mixer::flag_state_invalid ( ) const
 

Definition at line 301 of file mixer.cc.

double mixer::freq ( int p )
 

Definition at line 240 of file mixer.cc.

const sdata & mixer::get_term_data ( )
 

Definition at line 498 of file mixer.cc.

int mixer::harmonics ( ) const [inline]
 

Definition at line 149 of file mixer.h.

mixer & mixer::harmonics ( int N )
 

Definition at line 132 of file mixer.cc.

mixer & mixer::initialize_mode ( int f )
 

Definition at line 317 of file mixer.cc.

mixer & mixer::initialize_operating_state ( const Matrix & V )
 

Definition at line 349 of file mixer.cc.

mixer & mixer::initialize_operating_state ( )
 

Definition at line 382 of file mixer.cc.

Referenced by mixer::balancer::operator()().

int mixer::junctions ( ) const [inline]
 

Definition at line 160 of file mixer.h.

mixer & mixer::operator= ( const mixer & m )
 

Definition at line 107 of file mixer.cc.

int mixer::port ( int p,
int h )
 

Definition at line 206 of file mixer.cc.

Referenced by mixer::analyzer::C(), and mixer::analyzer::S().

void mixer::recalc ( ) [private, virtual]
 

The function for calculating sdata.

recalc() should do the following:

  • (1) Read device::f, device::Z0, and, by default, device::T to get the operating conditions for the response calculation.
  • (2) Calculate the S, C, and B matrix values and store them to nport::data, with all values normalized using device::Z0.
  • (3) Store the normalizing impedance to nport::data by calling data.set_znorm().

Reimplemented from nport.

Definition at line 469 of file mixer.cc.

mixer & mixer::save_operating_state ( Matrix & V )
 

Definition at line 333 of file mixer.cc.

Referenced by mixer::balancer::operator()().

mixer & mixer::set_LO ( abstract_real_parameter * pf ) [inline]
 

Definition at line 175 of file mixer.h.

mixer & mixer::set_LO ( double f ) [inline]
 

Definition at line 173 of file mixer.h.

mixer & mixer::set_balance_terminator ( nport & c,
int p )
 

Definition at line 192 of file mixer.cc.

mixer & mixer::set_bias ( nport & c )
 

Definition at line 169 of file mixer.cc.

mixer & mixer::set_if ( nport & c )
 

Definition at line 176 of file mixer.cc.

mixer & mixer::set_rf ( nport & c )
 

Definition at line 183 of file mixer.cc.

int mixer::size ( ) [virtual]
 

The number of ports this device has.

Returns:
the number of ports

Reimplemented from data_ptr_nport.

Definition at line 260 of file mixer.cc.

Referenced by mixer::analyzer::n_high(), mixer::balancer::rebuild(), and mixer::analyzer::rebuild().

mixer & mixer::void_junctions ( )
 

Definition at line 154 of file mixer.cc.


Member Data Documentation

parameter mixer::LO
 

Definition at line 167 of file mixer.h.

double mixer::LO_saved [private]
 

Definition at line 390 of file mixer.h.

int mixer::auto_balance_flag [private]
 

Definition at line 392 of file mixer.h.

mixer::balancer mixer::balance_ [private]
 

Definition at line 573 of file mixer.h.

int mixer::balance_init_flag [private]
 

Definition at line 391 of file mixer.h.

int mixer::balance_not_ok_flag [private]
 

Definition at line 393 of file mixer.h.

nport * mixer::bias_circuit [private]
 

Definition at line 395 of file mixer.h.

std::vector< generator > mixer::default_term<generator> [private]
 

Definition at line 397 of file mixer.h.

unsigned mixer::global_mixer_index = 0 [static, private]
 

Definition at line 63 of file mixer.cc.

nport * mixer::if_circuit [private]
 

Definition at line 395 of file mixer.h.

std::vector< junction *> mixer::junc<junction *> [private]
 

Definition at line 398 of file mixer.h.

int mixer::max_harmonics [private]
 

Definition at line 388 of file mixer.h.

int mixer::num_junctions [private]
 

Definition at line 389 of file mixer.h.

nport * mixer::rf_circuit [private]
 

Definition at line 395 of file mixer.h.

mixer::analyzer mixer::ssignal_ [private]
 

Definition at line 574 of file mixer.h.

Referenced by recalc().

std::vector< nport *> mixer::term<nport *> [private]
 

Definition at line 396 of file mixer.h.

mixer::analyzer mixer::tsignal_ [private]
 

Definition at line 575 of file mixer.h.

Referenced by get_term_data().


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