|
Macaulay2 Engine
|
Static-method namespace bridging the engine's RR / CC / RRR / CCC dense matrices and LAPACK / BLAS routines. More...
#include <lapack.hpp>
Public Types | |
| typedef DMat< M2::ARingRR > | DMatRR |
| typedef DMat< M2::ARingCC > | DMatCC |
Static Public Member Functions | |
| static M2_arrayintOrNull | LU (const DMatRRR *A, DMatRRR *L, DMatRRR *U) |
| static bool | solve_triangular (const DMatRRR *U, const DMatRRR *b, DMatRRR *x) |
| static bool | solve (const DMatRRR *A, const DMatRRR *b, DMatRRR *x) |
| static bool | eigenvalues (const DMatRRR *A, DMatCCC *eigenvals) |
| static bool | eigenvectors (const DMatRRR *A, DMatCCC *eigenvals, DMatCCC *eigenvecs) |
| static bool | eigenvalues_symmetric (const DMatRRR *A, DMatRRR *eigenvals) |
| static bool | eigenvectors_symmetric (const DMatRRR *A, DMatRRR *eigenvals, DMatRRR *eigenvecs) |
| static bool | SVD (const DMatRRR *A, DMatRRR *Sigma, DMatRRR *U, DMatRRR *VT) |
| static bool | SVD_divide_conquer (const DMatRRR *A, DMatRRR *Sigma, DMatRRR *U, DMatRRR *VT) |
| static bool | least_squares (const DMatRRR *A, const DMatRRR *b, DMatRRR *x) |
| static bool | least_squares_deficient (const DMatRRR *A, const DMatRRR *b, DMatRRR *x) |
| static M2_arrayintOrNull | LU (const DMatCCC *A, DMatCCC *L, DMatCCC *U) |
| static bool | solve (const DMatCCC *A, const DMatCCC *b, DMatCCC *x) |
| static bool | eigenvalues (const DMatCCC *A, DMatCCC *eigenvals) |
| static bool | eigenvectors (const DMatCCC *A, DMatCCC *eigenvals, DMatCCC *eigenvecs) |
| static bool | eigenvalues_hermitian (const DMatCCC *A, DMatRRR *eigenvals) |
| static bool | eigenvectors_hermitian (const DMatCCC *A, DMatRRR *eigenvals, DMatCCC *eigenvecs) |
| static bool | SVD (const DMatCCC *A, DMatRRR *Sigma, DMatCCC *U, DMatCCC *VT) |
| static bool | SVD_divide_conquer (const DMatCCC *A, DMatRRR *Sigma, DMatCCC *U, DMatCCC *VT) |
| static bool | least_squares (const DMatCCC *A, const DMatCCC *b, DMatCCC *x) |
| static bool | least_squares_deficient (const DMatCCC *A, const DMatCCC *b, DMatCCC *x) |
| static M2_arrayintOrNull | LU (const DMatRR *A, DMatRR *L, DMatRR *U) |
| static bool | solve (const DMatRR *A, const DMatRR *b, DMatRR *x) |
| static bool | eigenvalues (const DMatRR *A, DMatCC *eigenvals) |
| static bool | eigenvectors (const DMatRR *A, DMatCC *eigenvals, DMatCC *eigenvecs) |
| static bool | eigenvalues_symmetric (const DMatRR *A, DMatRR *eigenvals) |
| static bool | eigenvectors_symmetric (const DMatRR *A, DMatRR *eigenvals, DMatRR *eigenvecs) |
| static bool | SVD (const DMatRR *A, DMatRR *Sigma, DMatRR *U, DMatRR *VT) |
| static bool | SVD_divide_conquer (const DMatRR *A, DMatRR *Sigma, DMatRR *U, DMatRR *VT) |
| static bool | least_squares (const DMatRR *A, const DMatRR *b, DMatRR *x) |
| static bool | least_squares_deficient (const DMatRR *A, const DMatRR *b, DMatRR *x) |
| static bool | QR (const DMatRR *A, DMatRR *Q, DMatRR *R, bool return_QR) |
| static M2_arrayintOrNull | LU (const DMatCC *A, DMatCC *L, DMatCC *U) |
| static bool | solve (const DMatCC *A, const DMatCC *b, DMatCC *x) |
| static bool | eigenvalues (const DMatCC *A, DMatCC *eigenvals) |
| static bool | eigenvectors (const DMatCC *A, DMatCC *eigenvals, DMatCC *eigenvecs) |
| static bool | eigenvalues_hermitian (const DMatCC *A, DMatRR *eigenvals) |
| static bool | eigenvectors_hermitian (const DMatCC *A, DMatRR *eigenvals, DMatCC *eigenvecs) |
| static bool | SVD (const DMatCC *A, DMatRR *Sigma, DMatCC *U, DMatCC *VT) |
| static bool | SVD_divide_conquer (const DMatCC *A, DMatRR *Sigma, DMatCC *U, DMatCC *VT) |
| static bool | least_squares (const DMatCC *A, const DMatCC *b, DMatCC *x) |
| static bool | least_squares_deficient (const DMatCC *A, const DMatCC *b, DMatCC *x) |
| static bool | QR (const DMatCC *A, DMatCC *Q, DMatCC *R, bool return_QR) |
| static void | freeRaw (__mpfr_struct *start, int size) |
Static-method namespace bridging the engine's RR / CC / RRR / CCC dense matrices and LAPACK / BLAS routines.
The class holds no state; every method is static. Bundles matrix translators (to the column-major scratch buffers LAPACK expects) plus the high-level entry points (solve, LU, eigenvalues, eigenvectors, SVD, least_squares, ...) that the engine exposes to the front end for numerical linear algebra over floating-point and MPFR-backed rings.
Definition at line 452 of file lapack.hpp.