28#ifndef _chemistry_qc_mbptr12_svd_h
29#define _chemistry_qc_mbptr12_svd_h
31#include <math/scmat/matrix.h>
32#include <math/scmat/blas.h>
62 const double* Bt,
int ncolB);
72 double condition_number_threshold = 0.0);
89 double condition_number_threshold = 0.0);
99 double condition_number_threshold = 0.0);
114 const blasint* ipiv,
double* Xt,
115 const double* Bt,
int ncolB,
146 double condition_number_threshold = 0.0);
160 const double* AF,
double* Xt,
161 const double* Bt,
int ncolB,
The RefDiagSCMatrix class is a smart pointer to an DiagSCMatrix specialization.
Definition matrix.h:389
The RefSCMatrix class is a smart pointer to an SCMatrix specialization.
Definition matrix.h:135
The RefSCVector class is a smart pointer to an SCVector specialization.
Definition matrix.h:55
The RefSymmSCMatrix class is a smart pointer to an SCSymmSCMatrix specialization.
Definition matrix.h:265
Contains all MPQC code up to version 3.
Definition mpqcin.h:14
double linsolv_symmnondef_cg(const RefSymmSCMatrix &A, RefSCVector &X, const RefSCVector &B)
Solves symmetric non-definite linear system AX = B, where B is a RefSCVector, using conjugate gradien...
void lapack_invert_symmposdef(RefSymmSCMatrix &A, double condition_number_threshold=0.0)
invert symmetric positive-definite matrix using DPPTRF LAPACK routine that implements the Cholesky me...
double linsolv_symmnondef_jacobi(const RefSymmSCMatrix &A, RefSCVector &X, const RefSCVector &B)
Solves symmetric non-definite linear system AX = B, where B is a RefSCVector, using Jacobi solver.
void lapack_invert_symmnondef(RefSymmSCMatrix &A, double condition_number_threshold=0.0)
invert symmetric non-definite matrix using DSPTRF LAPACK routine that implements the Bunch-Kaufman di...
void lapack_svd(const RefSCMatrix &A, RefSCMatrix &U, RefDiagSCMatrix &Sigma, RefSCMatrix &V)
Uses LAPACK's DGESVD to perform SVD of A: A = U * Sigma * V.
void lapack_dpf_symmnondef(const RefSymmSCMatrix &A, double *AF, blasint *ipiv, double condition_number_threshold=0.0)
Compute factorization of a symmetric non-definite matrix using DSPTRF LAPACK routine that implements ...
void lapack_linsolv_dpf_symmnondef(const double *A, int nA, const double *AF, const blasint *ipiv, double *Xt, const double *Bt, int ncolB, bool refine=true)
Solves a symmetric indefinite system of linear equations AX=B, where A is held in packed storage,...
void lapack_cholesky_symmposdef(const RefSymmSCMatrix &A, double *AF, double condition_number_threshold=0.0)
Compute factorization of a symmetric positive-definite matrix using DPPTRF LAPACK routine that implem...
void lapack_linsolv_cholesky_symmposdef(const double *A, int nA, const double *AF, double *Xt, const double *Bt, int ncolB, bool refine=true)
Solves a symmetric indefinite system of linear equations AX=B, where A is held in packed storage,...
double lapack_linsolv_symmnondef(const RefSymmSCMatrix &A, RefSCVector &X, const RefSCVector &B)
Uses LAPACK's DSPSVX to solve symmetric non-definite linear system AX = B, where B is a single vector...