Qucs-core  0.0.18
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Namespaces | Functions
matrix.cpp File Reference

Dense matrix class implementation. More...

#include <assert.h>
#include <stdio.h>
#include <cstdlib>
#include <string.h>
#include <cmath>
#include "logging.h"
#include "object.h"
#include "complex.h"
#include "vector.h"
#include "matrix.h"

Go to the source code of this file.

Namespaces

 qucs
 

Functions

matrix qucs::operator+ (matrix a, matrix b)
 Matrix addition. More...
 
matrix qucs::operator- (matrix a, matrix b)
 Matrix subtraction. More...
 
matrix qucs::operator* (matrix a, nr_complex_t z)
 Matrix scaling complex version. More...
 
matrix qucs::operator* (nr_complex_t z, matrix a)
 Matrix scaling complex version (different order) More...
 
matrix qucs::operator* (matrix a, nr_double_t d)
 Matrix scaling complex version. More...
 
matrix qucs::operator* (nr_double_t d, matrix a)
 Matrix scaling real version (different order) More...
 
matrix qucs::operator/ (matrix a, nr_complex_t z)
 Matrix scaling division by complex version. More...
 
matrix qucs::operator/ (matrix a, nr_double_t d)
 Matrix scaling division by real version. More...
 
matrix qucs::operator* (matrix a, matrix b)
 
matrix qucs::operator+ (matrix a, nr_complex_t z)
 Complex scalar addition. More...
 
matrix qucs::operator+ (nr_complex_t z, matrix a)
 Complex scalar addition different order. More...
 
matrix qucs::operator+ (matrix a, nr_double_t d)
 Real scalar addition. More...
 
matrix qucs::operator+ (nr_double_t d, matrix a)
 Real scalar addition different order. More...
 
matrix qucs::operator- (matrix a, nr_complex_t z)
 Complex scalar substraction. More...
 
matrix qucs::operator- (nr_complex_t z, matrix a)
 Complex scalar substraction different order. More...
 
matrix qucs::operator- (matrix a, nr_double_t d)
 Real scalar substraction. More...
 
matrix qucs::operator- (nr_double_t d, matrix a)
 Real scalar substraction different order. More...
 
matrix qucs::transpose (matrix a)
 Matrix transposition. More...
 
matrix qucs::conj (matrix a)
 Conjugate complex matrix. More...
 
matrix qucs::adjoint (matrix a)
 adjoint matrix More...
 
matrix qucs::abs (matrix a)
 Computes magnitude of each matrix element. More...
 
matrix qucs::dB (matrix a)
 Computes magnitude in dB of each matrix element. More...
 
matrix qucs::arg (matrix a)
 Computes the argument of each matrix element. More...
 
matrix qucs::real (matrix a)
 Real part matrix. More...
 
matrix qucs::imag (matrix a)
 Imaginary part matrix. More...
 
matrix qucs::sqr (matrix a)
 Multiply a matrix by itself. More...
 
matrix qucs::eye (int rs, int cs)
 Create identity matrix with specified number of rows and columns. More...
 
matrix qucs::eye (int s)
 Create a square identity matrix. More...
 
matrix qucs::diagonal (qucs::vector diag)
 Create a diagonal matrix from a vector. More...
 
matrix qucs::pow (matrix a, int n)
 
nr_complex_t qucs::cofactor (matrix a, int u, int v)
 Computes the complex cofactor of the given determinant. More...
 
nr_complex_t qucs::detLaplace (matrix a)
 Compute determinant of the given matrix using Laplace expansion. More...
 
nr_complex_t qucs::detGauss (matrix a)
 Compute determinant Gaussian algorithm. More...
 
nr_complex_t qucs::det (matrix a)
 Compute determinant of the given matrix. More...
 
matrix qucs::inverseLaplace (matrix a)
 Compute inverse matrix using Laplace expansion. More...
 
matrix qucs::inverseGaussJordan (matrix a)
 Compute inverse matrix using Gauss-Jordan elimination. More...
 
matrix qucs::inverse (matrix a)
 Compute inverse matrix. More...
 
matrix qucs::stos (matrix s, qucs::vector zref, qucs::vector z0)
 S params to S params. More...
 
matrix qucs::stos (matrix s, nr_complex_t zref, nr_complex_t z0)
 S renormalization with all part identic. More...
 
matrix qucs::stos (matrix s, nr_double_t zref, nr_double_t z0)
 S renormalization with all part identic and real. More...
 
matrix qucs::stos (matrix s, qucs::vector zref, nr_complex_t z0)
 S renormalization (variation) More...
 
matrix qucs::stos (matrix s, nr_complex_t zref, qucs::vector z0)
 S renormalization (variation) More...
 
matrix qucs::stoz (matrix s, qucs::vector z0)
 Scattering parameters to impedance matrix. More...
 
matrix qucs::stoz (matrix s, nr_complex_t z0)
 Scattering parameters to impedance matrix identic case. More...
 
matrix qucs::ztos (matrix z, qucs::vector z0)
 Convert impedance matrix scattering parameters. More...
 
matrix qucs::ztos (matrix z, nr_complex_t z0)
 Convert impedance matrix to scattering parameters identic case. More...
 
matrix qucs::ztoy (matrix z)
 impedance matrix to admittance matrix. More...
 
matrix qucs::stoy (matrix s, qucs::vector z0)
 Scattering parameters to admittance matrix. More...
 
matrix qucs::stoy (matrix s, nr_complex_t z0)
 Convert scattering pto adminttance parameters identic case. More...
 
matrix qucs::ytos (matrix y, qucs::vector z0)
 Admittance matrix to scattering parameters. More...
 
matrix qucs::ytos (matrix y, nr_complex_t z0)
 Convert Admittance matrix to scattering parameters identic case. More...
 
matrix qucs::stoa (matrix s, nr_complex_t z1, nr_complex_t z2)
 Converts chain matrix to scattering parameters. More...
 
matrix qucs::atos (matrix a, nr_complex_t z1, nr_complex_t z2)
 Converts chain matrix to scattering parameters. More...
 
matrix qucs::stoh (matrix s, nr_complex_t z1, nr_complex_t z2)
 Converts scattering parameters to hybrid matrix. More...
 
matrix qucs::htos (matrix h, nr_complex_t z1, nr_complex_t z2)
 Converts hybrid matrix to scattering parameters. More...
 
matrix qucs::stog (matrix s, nr_complex_t z1, nr_complex_t z2)
 
matrix qucs::gtos (matrix g, nr_complex_t z1, nr_complex_t z2)
 
matrix qucs::ytoz (matrix y)
 Convert admittance matrix to impedance matrix. More...
 
matrix qucs::cytocs (matrix cy, matrix s)
 Admittance noise correlation matrix to S-parameter noise correlation matrix. More...
 
matrix qucs::cstocy (matrix cs, matrix y)
 Converts S-parameter noise correlation matrix to admittance noise correlation matrix. More...
 
matrix qucs::cztocs (matrix cz, matrix s)
 Converts impedance noise correlation matrix to S-parameter noise correlation matrix. More...
 
matrix qucs::cstocz (matrix cs, matrix z)
 Converts S-parameter noise correlation matrix to impedance noise correlation matrix. More...
 
matrix qucs::cztocy (matrix cz, matrix y)
 Converts impedance noise correlation matrix to admittance noise correlation matrix. More...
 
matrix qucs::cytocz (matrix cy, matrix z)
 Converts admittance noise correlation matrix to impedance noise correlation matrix. More...
 
matrix qucs::twoport (matrix m, char in, char out)
 Generic conversion matrix. More...
 

Detailed Description

Dense matrix class implementation.

References:

[1] Power Waves and the Scattering Matrix Kurokawa, K. Microwave Theory and Techniques, IEEE Transactions on, Vol.13, Iss.2, Mar 1965 Pages: 194- 202

[2] A Rigorous Technique for Measuring the Scattering Matrix of a Multiport Device with a 2-Port Network Analyzer John C. TIPPET, Ross A. SPECIALE Microwave Theory and Techniques, IEEE Transactions on, Vol.82, Iss.5, May 1982 Pages: 661- 666

[3] Comments on "A Rigorous Techique for Measuring the Scattering Matrix of a Multiport Device with a Two-Port Network Analyzer" Dropkin, H. Microwave Theory and Techniques, IEEE Transactions on, Vol. 83, Iss.1, Jan 1983 Pages: 79 - 81

[4] Arbitrary Impedance "Accurate Measurements In Almost Any Impedance Environment" in Scropion Application note Anritsu online(2007/07/30) http://www.eu.anritsu.com/files/11410-00284B.pdf

[5] Conversions between S, Z, Y, H, ABCD, and T parameters which are valid for complex source and load impedances Frickey, D.A. Microwave Theory and Techniques, IEEE Transactions on Vol. 42, Iss. 2, Feb 1994 pages: 205 - 211 doi: 10.1109/22.275248

[6] Comments on "Conversions between S, Z, Y, h, ABCD, and T parameters which are valid for complex source and load impedances" [and reply] Marks, R.B.; Williams, D.F.; Frickey, D.A. Microwave Theory and Techniques, IEEE Transactions on, Vol.43, Iss.4, Apr 1995 Pages: 914- 915 doi: 10.1109/22.375247

[7] Wave Techniques for Noise Modeling and Measurement S. W. Wedge and D. B. Rutledge, IEEE Transactions on Microwave Theory and Techniques, vol. 40, no. 11, Nov. 1992. pages 2004-2012, doi: 10.1109/22.168757 Author copy online (2007/07/31) http://authors.library.caltech.edu/6226/01/WEDieeetmtt92.pdf

Definition in file matrix.cpp.