C++ main module for mmsd Package
1.0
|
#include "lapack_functions.h"
Go to the source code of this file.
Functions | |
void | DoubleBandedSymmetricMatrixVectorProduct (const tLVectorIndex &nX, const tLVectorIncrement &incX, const double *x, const tLVectorIndex &nRows, const tLVectorIndex &nBands, const double *A, const lapack_real &alpha, const lapack_real &beta, const tLVectorIndex &nY, const tLVectorIncrement &incY, double *y) |
compute Y:=Beta.Y+alpha A.X More... | |
void | DoubleBandedSymmetricMatrixMatrixProduct (const tBoolean &isLeftSide, const tLVectorIndex &nSRows, const tLVectorIndex &nSBands, const double *S, const tLVectorIndex &nBRows, const tLVectorIndex &nBCols, const tLVectorIncrement &incB, const tLVectorIndex &ldB, const double *B, const lapack_real &alpha, const lapack_real &beta, const tLVectorIndex &nCRows, const tLVectorIndex &nCCols, const tLVectorIncrement &incC, const tLVectorIndex &ldC, double *C) |
tBoolean | DoubleBandedSymmetricMatrixEigenValues (const tLVectorIndex &nRowsA, const tLVectorIndex &nBandsA, double *A, const tLVectorIndex &nU, double *U, const tLVectorIndex &ldW, double *W) |
compute all the eigen values or vectors (if W is not null or ldW<=1) More... | |
tBoolean | DoubleBandedSymmetricMatrixBoundedEigenValues (const tLVectorIndex &nRowsA, const tLVectorIndex &nBandsA, double *A, const tLVectorIndex &nU, double *U, const tLVectorIndex &minIndex, const tLVectorIndex &maxIndex, const double &minBound, const double &maxBound, const tLVectorIndex &ldQ, double *Q, const tLVectorIndex &ldW, double *W) |
compute the selected eigen values or vectors (if W is not null or ldW<=1) with More... | |
tBoolean | DoubleBandedSymmetricMatrixCholeskyFactorization (const tLVectorIndex &nRows, const tLVectorIndex &nBands, double *A) |
make the cholesky factorization A=tU.U More... | |
tBoolean DoubleBandedSymmetricMatrixBoundedEigenValues | ( | const tLVectorIndex & | nRowsA, |
const tLVectorIndex & | nBandsA, | ||
double * | A, | ||
const tLVectorIndex & | nU, | ||
double * | U, | ||
const tLVectorIndex & | minIndex, | ||
const tLVectorIndex & | maxIndex, | ||
const double & | minBound, | ||
const double & | maxBound, | ||
const tLVectorIndex & | ldQ, | ||
double * | Q, | ||
const tLVectorIndex & | ldW, | ||
double * | W | ||
) |
compute the selected eigen values or vectors (if W is not null or ldW<=1) with
compute also the eigen vector if W is not null and ldW >1
References dsbevx(), F77NAME, getSafeMinimum(), lapack_char, lapack_int, lapack_real, null, CORE_String::toString(), and tString.
Referenced by LAP_DoubleBandedSymmetricMatrix::computeEigenValueDecomposition().
tBoolean DoubleBandedSymmetricMatrixCholeskyFactorization | ( | const tLVectorIndex & | nRows, |
const tLVectorIndex & | nBands, | ||
double * | A | ||
) |
make the cholesky factorization A=tU.U
References dpbtrf(), F77NAME, lapack_char, lapack_int, and CORE_Integer::toString().
tBoolean DoubleBandedSymmetricMatrixEigenValues | ( | const tLVectorIndex & | nRowsA, |
const tLVectorIndex & | nBandsA, | ||
double * | A, | ||
const tLVectorIndex & | nU, | ||
double * | U, | ||
const tLVectorIndex & | ldW, | ||
double * | W | ||
) |
compute all the eigen values or vectors (if W is not null or ldW<=1)
References dsbev(), F77NAME, lapack_char, lapack_int, lapack_real, null, CORE_String::toString(), and tString.
Referenced by LAP_DoubleBandedSymmetricMatrix::computeEigenValues().
void DoubleBandedSymmetricMatrixMatrixProduct | ( | const tBoolean & | isLeftSide, |
const tLVectorIndex & | nSRows, | ||
const tLVectorIndex & | nSBands, | ||
const double * | S, | ||
const tLVectorIndex & | nBRows, | ||
const tLVectorIndex & | nBCols, | ||
const tLVectorIncrement & | incB, | ||
const tLVectorIndex & | ldB, | ||
const double * | B, | ||
const lapack_real & | alpha, | ||
const lapack_real & | beta, | ||
const tLVectorIndex & | nCRows, | ||
const tLVectorIndex & | nCCols, | ||
const tLVectorIncrement & | incC, | ||
const tLVectorIndex & | ldC, | ||
double * | C | ||
) |
References CNAME, dsbmm(), lapack_char, and lapack_int.
Referenced by LAP_DoubleBandedSymmetricMatrix::matrixProduct().
void DoubleBandedSymmetricMatrixVectorProduct | ( | const tLVectorIndex & | nX, |
const tLVectorIncrement & | incX, | ||
const double * | x, | ||
const tLVectorIndex & | nRows, | ||
const tLVectorIndex & | nBands, | ||
const double * | A, | ||
const lapack_real & | alpha, | ||
const lapack_real & | beta, | ||
const tLVectorIndex & | nY, | ||
const tLVectorIncrement & | incY, | ||
double * | y | ||
) |
compute Y:=Beta.Y+alpha A.X
References dsbmv(), F77NAME, lapack_char, and lapack_int.
Referenced by LAP_DoubleBandedSymmetricMatrix::vectorProduct().