Qucs-core  0.0.19
Public Member Functions | Data Fields | Private Member Functions | Private Attributes
rectline Class Reference

#include <rectline.h>

Inheritance diagram for rectline:
Inheritance graph
[legend]
Collaboration diagram for rectline:
Collaboration graph
[legend]

Public Member Functions

 CREATOR (rectline)
void initSP (void)
void calcSP (nr_double_t)
void calcNoiseSP (nr_double_t)
void initDC (void)
void initAC (void)
void calcAC (nr_double_t)
void calcNoiseAC (nr_double_t)
void saveCharacteristics (nr_complex_t)

Data Fields

 RECTLINE
 PROP_COMPONENT
 PROP_NO_SUBSTRATE
 PROP_LINEAR

Private Member Functions

void calcPropagation (nr_double_t)
void initCheck (void)
void calcResistivity (const char *const, nr_double_t)

Private Attributes

nr_double_t alpha
nr_double_t beta
nr_complex_t zl
nr_double_t fc_low
nr_double_t fc_high
nr_double_t rho

Detailed Description

A TE10 rectangular waveguide component

Note:
Evanecent mode are not implemented
Todo:
Implement evanecent mode

Definition at line 318 of file rectline.cpp.


Member Function Documentation

void rectline::calcAC ( nr_double_t  frequency) [virtual]

calc propagation using classical transmission line formulae

Reimplemented from qucs::circuit.

Definition at line 280 of file rectline.cpp.

void rectline::calcNoiseAC ( nr_double_t  ) [virtual]

Compute noise

Reimplemented from qucs::circuit.

Definition at line 295 of file rectline.cpp.

void rectline::calcNoiseSP ( nr_double_t  ) [virtual]

Compute noise parameter

Reimplemented from qucs::circuit.

Definition at line 202 of file rectline.cpp.

void rectline::calcPropagation ( nr_double_t  frequency) [private]

Compute propagation constant

According to [1] table 3.2 p 128 Wawe number in vacuum is:

\[ k=\omega\sqrt{\mu\varepsilon}=\omega\sqrt{\mu_r \varepsilon_r \mu_0 \varepsilon_0} \]

Where $\omega=2\pi f$, $f$ is the frequency, $$ the magnetic permeability, $\varepsilon_r$ the permitivity. Using well known formula $c^2\mu_0\varepsilon_0=1$, we found:

\[ k=\frac{\omega}{c} std::sqrt{\mu_r \varepsilon_r} \]

In general case $k_c$ is:

\[ k_c = \sqrt{\left(\frac{m\pi}{a}\right)^2+\left(\frac{n\pi}{b}\right)^2} \]

Where $a$ is the wider dimension of the guide and $b$ the smaller and $(n,m)\in\mathbb{N}^2$. In the TE10 case it simplifies to:

\[ k_c = \sqrt{\left(\frac{\pi}{a}\right)^2} = \frac{\pi}{a} \]

The propagation constant is:

\[ \beta = \sqrt{k^2 - k_c^2} \]

Loss could be divised in dielectric and resistive loss. Dielectric loss are computed using:

\[ \alpha_d = \frac{k^2 \tan \delta}{2\beta} \]

Resistive using [1] eq (3.96) p 125 (valid only for TE10 mode)

\[ \alpha_c=\frac{R_s}{a^3 b \beta k Z_0} \left( 2 b \pi^2 + a^3 k^2 \right) \]

Wave impedance is for TE10:

\[ Z = \frac{k Z_0}{\beta} \]

Definition at line 153 of file rectline.cpp.

void rectline::calcResistivity ( const char * const  Mat,
nr_double_t  T 
) [private]

Definition at line 63 of file rectline.cpp.

void rectline::calcSP ( nr_double_t  frequency) [virtual]

Compute S parameter use generic transmission line formulae

Reimplemented from qucs::circuit.

Definition at line 246 of file rectline.cpp.

void rectline::initAC ( void  ) [virtual]

init AC

Reimplemented from qucs::circuit.

Definition at line 273 of file rectline.cpp.

void rectline::initCheck ( void  ) [private]

Check validity of parameter and compute cutoff frequencies

Note:
do not check validity of epsr or mur because some research stuff could use epsr < 1 (plasma)

Definition at line 215 of file rectline.cpp.

void rectline::initDC ( void  ) [virtual]

Reimplemented from qucs::circuit.

Definition at line 266 of file rectline.cpp.

void rectline::initSP ( void  ) [virtual]

initialize S-parameters

Reimplemented from qucs::circuit.

Definition at line 239 of file rectline.cpp.

Reimplemented from qucs::circuit.

Definition at line 234 of file rectline.cpp.


Field Documentation

attenuation constant

Definition at line 49 of file rectline.h.

propagation constant

Definition at line 51 of file rectline.h.

cut off frequency higher mode

Definition at line 57 of file rectline.h.

cut off frequency lower bound

Definition at line 55 of file rectline.h.

Definition at line 319 of file rectline.cpp.

Definition at line 319 of file rectline.cpp.

Definition at line 319 of file rectline.cpp.

Definition at line 319 of file rectline.cpp.

resistivity

Definition at line 59 of file rectline.h.

wave impedance

Definition at line 53 of file rectline.h.


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