TBCI Numerical high perf. C++ Library 2.8.0
lapack_stdcplx.h File Reference

Lapack interface for TBCI NumLib (std::complex<double>). More...

#include "tbci/basics.h"
#include "tbci/std_cplx.h"
#include "tbci/vector.h"
#include "tbci/f_matrix.h"
#include "tbci/f_bandmatrix.h"
Include dependency graph for lapack_stdcplx.h:

Go to the source code of this file.

Functions

F_TMatrix< double > inv (const F_Matrix< double > &A, int overwriteA=0)
F_TMatrix< double > lu_solve (const F_Matrix< double > &A, const F_Matrix< double > &B, int overwriteA=0)
TVector< double > lu_solve (const F_Matrix< double > &A, const Vector< double > &B, int overwriteA=0)
TVector< double > lu_solve (const F_BandMatrix< double > &A, const Vector< double > &B)
TVector< double > lu_solve_expert (const F_BandMatrix< double > &A, const Vector< double > &B, int equilibrate=1)
 Solution of linear eqution systems, partial pivoting.
TVector< double > lu_solve (F_BandMatrix< double > &A, const Vector< double > &B, int num_lower, int num_upper)
F_TMatrix< COMPLEX_DOUBLEinv (const F_Matrix< COMPLEX_DOUBLE > &A, int overwriteA=0)
F_TMatrix< COMPLEX_DOUBLElu_solve (const F_Matrix< COMPLEX_DOUBLE > &A, const F_Matrix< COMPLEX_DOUBLE > &B, int overwriteA=0)
int eig (const F_Matrix< double > &A, Vector< double > &EW)
 eigenvalues (and eigenvectors) A*EV=EW*EV of symmetric double Matrix A
int eig (const F_Matrix< double > &A, Vector< double > &EW, F_Matrix< double > &EV)
int eig (const F_BandMatrix< double > &A, Vector< double > &EW, F_Matrix< double > &EV)
int eig (const F_BandMatrix< double > &A, Vector< double > &EW, F_Matrix< double > &EV, double ew_min, double ew_max)
int eig (F_Matrix< CPLX__ complex< double > > A, Vector< double > &EW)
int eig (const F_Matrix< CPLX__ complex< double > > &A, Vector< double > &EW, F_Matrix< CPLX__ complex< double > > &EVec)
 complex hermitean
int eig (const F_Matrix< COMPLEX_DOUBLE > &A, Vector< COMPLEX_DOUBLE > &EW)
int eig (const F_Matrix< COMPLEX_DOUBLE > &A, Vector< COMPLEX_DOUBLE > &EW, F_Matrix< COMPLEX_DOUBLE > &EV)
int eig (const F_BandMatrix< CPLX__ complex< double > > &A, const F_BandMatrix< CPLX__ complex< double > > &B, double EW_min, double EW_max, Vector< double > &Eigenwerte, F_Matrix< CPLX__ complex< double > > &Eigenvectoren)
 selected eigenvalues -vectors: A*EV=EW*B*EV of hermitean Matrix A, positive definite Matrix B

Variables

NAMESPACE_TBCI typedef CPLX__ complex< double > COMPLEX_DOUBLE

Detailed Description

Lapack interface for TBCI NumLib (std::complex<double>).

Definition in file lapack_stdcplx.h.

Function Documentation

◆ eig() [1/9]

int eig ( const F_BandMatrix< CPLX__ complex< double > > & A,
const F_BandMatrix< CPLX__ complex< double > > & B,
double EW_min,
double EW_max,
Vector< double > & Eigenwerte,
F_Matrix< CPLX__ complex< double > > & Eigenvectoren )

selected eigenvalues -vectors: A*EV=EW*B*EV of hermitean Matrix A, positive definite Matrix B

Definition at line 145 of file lapack_stdcplx.cpp.

References complex, doublecomplex, doublecomplex::i, i, imag(), own_ev_(), own_ew_(), doublecomplex::r, real, BVector< T >::resize(), STD__, x, and y.

◆ eig() [2/9]

int eig ( const F_BandMatrix< double > & A,
Vector< double > & EW,
F_Matrix< double > & EV )

Definition at line 296 of file lapack.cpp.

◆ eig() [3/9]

int eig ( const F_BandMatrix< double > & A,
Vector< double > & EW,
F_Matrix< double > & EV,
double ew_min,
double ew_max )

Definition at line 320 of file lapack.cpp.

◆ eig() [4/9]

int eig ( const F_Matrix< COMPLEX_DOUBLE > & A,
Vector< COMPLEX_DOUBLE > & EW )

◆ eig() [5/9]

int eig ( const F_Matrix< COMPLEX_DOUBLE > & A,
Vector< COMPLEX_DOUBLE > & EW,
F_Matrix< COMPLEX_DOUBLE > & EV )

References complex, and NAMESPACE_END.

◆ eig() [6/9]

int eig ( const F_Matrix< CPLX__ complex< double > > & A,
Vector< double > & EW,
F_Matrix< CPLX__ complex< double > > & EVec )

complex hermitean

Definition at line 266 of file lapack_stdcplx.cpp.

References complex, doublecomplex, BVector< T >::get_fortran_vector(), integer, STD__, and zheev_().

◆ eig() [7/9]

int eig ( const F_Matrix< double > & A,
Vector< double > & EW )

eigenvalues (and eigenvectors) A*EV=EW*EV of symmetric double Matrix A

Definition at line 263 of file lapack.cpp.

◆ eig() [8/9]

int eig ( const F_Matrix< double > & A,
Vector< double > & EW,
F_Matrix< double > & EV )

Definition at line 279 of file lapack.cpp.

◆ eig() [9/9]

int eig ( F_Matrix< CPLX__ complex< double > > A,
Vector< double > & EW )

◆ inv() [1/2]

F_TMatrix< COMPLEX_DOUBLE > inv ( const F_Matrix< COMPLEX_DOUBLE > & A,
int overwriteA = 0 )

◆ inv() [2/2]

F_TMatrix< double > inv ( const F_Matrix< double > & A,
int overwriteA = 0 )

Definition at line 181 of file lapack.cpp.

◆ lu_solve() [1/5]

TVector< double > lu_solve ( const F_BandMatrix< double > & A,
const Vector< double > & B )

Definition at line 74 of file lapack.cpp.

◆ lu_solve() [2/5]

F_TMatrix< COMPLEX_DOUBLE > lu_solve ( const F_Matrix< COMPLEX_DOUBLE > & A,
const F_Matrix< COMPLEX_DOUBLE > & B,
int overwriteA = 0 )

References complex.

◆ lu_solve() [3/5]

F_TMatrix< double > lu_solve ( const F_Matrix< double > & A,
const F_Matrix< double > & B,
int overwriteA = 0 )

Definition at line 156 of file lapack.cpp.

◆ lu_solve() [4/5]

TVector< double > lu_solve ( const F_Matrix< double > & A,
const Vector< double > & B,
int overwriteA = 0 )

Definition at line 129 of file lapack.cpp.

◆ lu_solve() [5/5]

TVector< double > lu_solve ( F_BandMatrix< double > & A,
const Vector< double > & B,
int num_lower,
int num_upper )

Definition at line 105 of file lapack.cpp.

◆ lu_solve_expert()

TVector< double > lu_solve_expert ( const F_BandMatrix< double > & A,
const Vector< double > & B,
int equilibrate = 1 )

Solution of linear eqution systems, partial pivoting.

Definition at line 24 of file lapack.cpp.

Variable Documentation

◆ COMPLEX_DOUBLE

NAMESPACE_TBCI typedef CPLX__ complex<double> COMPLEX_DOUBLE

Definition at line 18 of file lapack_stdcplx.h.