LAPACK FrontEnd
The complete LAPACK package can be obtained via WWW from
http://www.netlib.org/lapack/index.html
typedef aggregate _AGG_CMATCMAT { COMPLEX_MATRIX Q; /* bzw. L, L */ COMPLEX_MATRIX R; /* bzw. U, D */ } AGG_CMATCMAT;
typedef aggregate _AGG_CMATCMATMAT { COMPLEX_MATRIX L; COMPLEX_MATRIX U; MATRIX P; } AGG_CMATCMATMAT;
typedef aggregate _AGG_CMATCVEC { COMPLEX_MATRIX A; COMPLEX_VECTOR b; } AGG_CMATCVEC;
typedef aggregate _AGG_CMATVEC { COMPLEX_MATRIX A; VECTOR b; } AGG_CMATVEC;
typedef aggregate _AGG_CMATVECCMAT { COMPLEX_MATRIX U; VECTOR S; COMPLEX_MATRIX V; } AGG_CMATVECCMAT;
typedef aggregate _AGG_MATMAT { MATRIX Q; /* bzw. L, L */ MATRIX R; /* bzw. U, D */ } AGG_MATMAT;
typedef aggregate _AGG_MATMATMAT { MATRIX L; MATRIX U; MATRIX P; } AGG_MATMATMAT;
typedef aggregate _AGG_MATVEC { MATRIX A; VECTOR b; } AGG_MATVEC;
typedef aggregate _AGG_MATVECMAT { MATRIX U; VECTOR S; MATRIX V; } AGG_MATVECMAT;
MATRIX prefix operator Chol(const MATRIX & A ) precedence 28;
print Chol A;
COMPLEX_MATRIX prefix operator Chol(const COMPLEX_MATRIX & A ) precedence 28;
print Chol cA;
MATRIX prefix operator Compan(VECTOR v) precedence 28;
COMPLEX_MATRIX prefix operator Compan(COMPLEX_VECTOR v);
REAL prefix operator Cond(const MATRIX & A ) precedence 28;
print Cond Hilbert 5;
REAL prefix operator Cond(const COMPLEX_MATRIX & A );
REAL prefix operator CondEst(const MATRIX & A ) precedence 28;
print CondEst Hilbert 5;
REAL prefix operator CondEst(const COMPLEX_MATRIX & A ) precedence 28;
REAL prefix operator CondEstG(const MATRIX & A ) precedence 28;
print CondEstG Random 4;
REAL prefix operator CondEstG(const COMPLEX_MATRIX & A ) precedence 28;
REAL prefix operator CondEstH(const COMPLEX_MATRIX & A ) precedence 28;
REAL prefix operator CondEstS(const MATRIX & A ) precedence 28;
print CondEstS Hilbert 5;
REAL prefix operator CondEstS(const COMPLEX_MATRIX & A ) precedence 28;
REAL prefix operator Det(const MATRIX &A) precedence 28;
print Det Random 3;
MATRIX prefix operator Inv(const MATRIX &A) precedence 28;
print Inv Hilbert 3;
COMPLEX_MATRIX prefix operator Inv(const COMPLEX_MATRIX &A);
MATRIX prefix operator InvG(const MATRIX &A) precedence 28;
print Inv Hilbert 3;
COMPLEX_MATRIX prefix operator InvG(const COMPLEX_MATRIX &A);
COMPLEX_MATRIX prefix operator InvH(const COMPLEX_MATRIX &A) precedence 28;
MATRIX prefix operator InvS(const MATRIX &A) precedence 28;
print InvS Hilbert 3;
COMPLEX_MATRIX prefix operator InvS(const COMPLEX_MATRIX &A);
int prefix operator IsHermitian(const COMPLEX_MATRIX & A) precedence 28;
int prefix operator IsSymmetric(const MATRIX & A) precedence 28;
int prefix operator IsSymmetric(const COMPLEX_MATRIX & A) precedence 28;
REAL prefix operator Norm(const MATRIX & A, int type ) precedence 28;
print Norm( Hilbert 3, Norm_1 );
REAL prefix operator Norm(const MATRIX & A );
print Norm Hilbert 3;
REAL prefix operator Norm(const COMPLEX_MATRIX & A, int type );
print Norm( Hilbert 3, Norm_1 );
REAL prefix operator Norm(const COMPLEX_MATRIX & A );
print Norm Hilbert 3;
REAL prefix operator NormEst(const MATRIX & A ) precedence 28;
print NormEst A;
COMPLEX_VECTOR prefix operator Roots(const VECTOR &v) precedence 28;
COMPLEX_VECTOR prefix operator Roots(const COMPLEX_VECTOR &v);
VECTOR prefix operator Solve( const MATRIX &A, const VECTOR &b ) precedence 28;
A = Hilbert 3; VECTOR b="1;2;3"; print Solve(A,b);
COMPLEX_VECTOR prefix operator Solve( const COMPLEX_MATRIX & A, const COMPLEX_VECTOR & b );
print Solve(cA,cb);
VECTOR prefix operator SolveG( const MATRIX &A, const VECTOR &b ) precedence 28;
A = Random 3; VECTOR b="1;2;3"; print SolveG(A,b);
COMPLEX_VECTOR prefix operator SolveG( const COMPLEX_MATRIX & A, const COMPLEX_VECTOR & b );
print SolveG(cA,cb);
COMPLEX_VECTOR prefix operator SolveH( const COMPLEX_MATRIX & A, const COMPLEX_VECTOR & b ) precedence 28;
print SolveH(cA,cb);
VECTOR prefix operator SolveS( const MATRIX &A, const VECTOR &b ) precedence 28;
A = Hilbert 3; VECTOR b="1;2;3"; print SolveS(A,b);
COMPLEX_VECTOR prefix operator SolveS( const COMPLEX_MATRIX & A, const COMPLEX_VECTOR & b );
print SolveS(cA,cb);
VECTOR prefix operator cg(const MATRIX & A, const VECTOR &b) precedence 28;
x = cg(A,b);
COMPLEX_VECTOR prefix operator eig(const MATRIX &m ) precedence 28;
print eig Hilbert 4;
AGG_CMATCVEC prefix operator eig(const MATRIX &m ) precedence 28;
(M,v) = eig Random 4;
COMPLEX_VECTOR prefix operator eig(const COMPLEX_MATRIX &m ) precedence 28;
AGG_CMATCVEC prefix operator eig(const COMPLEX_MATRIX & cm ) precedence 28;
(M,v) = eig CM; The LAPACK routine zgeevx is used. Permutations to make the matrix more nearly upper triangular are performed. Diagonally scaling is done, ie. replace A by D*A*D**(-1), where D is a diagonal matrix chosen to make the rows and columns of A more equal in norm.
COMPLEX_VECTOR prefix operator eig2(const MATRIX &m ) precedence 28;
print eig2 Hilbert 4;
AGG_CMATCVEC prefix operator eig2(const MATRIX &m ) precedence 28;
(M,v) = eig2 Random 4;
COMPLEX_VECTOR prefix operator eig2(const COMPLEX_MATRIX &m ) precedence 28;
AGG_CMATCVEC prefix operator eig2(const COMPLEX_MATRIX & cm ) precedence 28;
(M,v) = eig2 CM;
VECTOR prefix operator eigH(const COMPLEX_MATRIX &m ) precedence 28;
AGG_CMATVEC prefix operator eigH(const COMPLEX_MATRIX & cm ) precedence 28;
(M,v) = eigH CM; The LAPACK routine zheevx is used.
VECTOR prefix operator eigS(const MATRIX &m ) precedence 28;
print eigS Hilbert 4;
AGG_MATVEC prefix operator eigS(const MATRIX &m ) precedence 28;
(M,v) = eigS RandS 3;
AGG_MATMAT prefix operator ldlt(const MATRIX &A) precedence 28;
(L,D) = ldlt A;
AGG_MATMATMAT prefix operator ldlt(const MATRIX &A);
(L,D,P) = ldlt A;
AGG_CMATCMAT prefix operator ldlt(const COMPLEX_MATRIX &A);
(L,D) = ldlt A;
AGG_CMATCMATMAT prefix operator ldlt(const COMPLEX_MATRIX &A);
(L,D,P) = ldlt A;
VECTOR prefix operator lls(const MATRIX &A, const VECTOR &b) precedence 28;
COMPLEX_VECTOR prefix operator lls(const COMPLEX_MATRIX &A, const COMPLEX_VECTOR &b);
VECTOR prefix operator lls2(const MATRIX &A, const VECTOR &b) precedence 28;
COMPLEX_VECTOR prefix operator lls2(const COMPLEX_MATRIX &A, const COMPLEX_VECTOR &b);
MATRIX prefix operator lu(const MATRIX &A) precedence 28;
A = Random 3; print lu A;
AGG_MATMAT prefix operator lu(const MATRIX &A);
A = Random 3; (l,u) = lu A;
AGG_MATMATMAT prefix operator lu(const MATRIX &A);
A = Random 3; (l,u,p) = lu A;
COMPLEX_MATRIX prefix operator lu(const COMPLEX_MATRIX &A);
A = Random 3; print lu A;
AGG_CMATCMAT prefix operator lu(const COMPLEX_MATRIX &A);
A = Random 3; (l,u) = lu A;
AGG_CMATCMATMAT prefix operator lu(const COMPLEX_MATRIX &A);
A = Random 3; (l,u,p) = lu A;
MATRIX prefix operator qr(const MATRIX &A) precedence 28;
A = Random 3; print Triu qr A;
AGG_MATMAT prefix operator qr(const MATRIX &A);
(Q,R) = Random 3;
COMPLEX_MATRIX prefix operator qr(const COMPLEX_MATRIX &A);
AGG_CMATCMAT prefix operator qr(const COMPLEX_MATRIX &A);
VECTOR prefix operator svd(const MATRIX& m ) precedence 28;
print svd Hilbert 4;
AGG_MATVECMAT prefix operator svd(const MATRIX& m );
(U,s,V) = svd Hilbert 4;
VECTOR prefix operator svd(const COMPLEX_MATRIX& m );
print svd cA;
AGG_CMATVECCMAT prefix operator svd(const COMPLEX_MATRIX& m );
(U,s,V) = svd cA;