C++ main module for mmsd Package  1.0
dpackeduppermatrix_functions.h
Go to the documentation of this file.
1 #ifndef DPACKEDUPPERMATRIX_FUNCTIONS
2 #define DPACKEDUPPERMATRIX_FUNCTIONS
3 
4 #include "lapack_functions.h"
5 
6 
7 //X:=A.X
8 //or
9 //X:=tA.X
11  const tLVectorIndex& nRowsA,//number of viewed rows of A
12  const double* A,
13  const tLVectorIndex& nX,
14  const tLVectorIncrement& incX,
15  double* x);
16 
17 //solve op(A).X=B and B:=X where X & B are vectors
18 void DoublePackedUpperMatrixVectorSolve( const tBoolean& isTransA,
19  const tLVectorIndex& nARows,
20  const double *A,//upper packed matrix
21  const tLVectorIndex& nB,
22  const tLVectorIncrement &incB,
23  double* B);
24 //solve op(A).X=B and B:=X where X & B are matrices of size nARows x nBcols
26  const tLVectorIndex& nARows,
27  const double *A,//upper matrix
28  const tLVectorIndex& nBCols,//number of columns of B
29  const tLVectorIndex& ldB,//memory distance between B[i][j] and B[i][j+1]
30  double* B);
31 
32 //B:=alpha.op(A).B
34  const tBoolean& isTransA,
35  const double* A,
36  const double& alpha,
37  const tLVectorIndex& nRowsB,const tLVectorIndex& nColsB,
38  const tLVectorIncrement& incB,const tLVectorIndex& ldB,
39  double* B);
40 
41 //A:=A^-1 inverse the matrix of nRows number of rows
43  double* A);
44 
45 #endif
void DoublePackedUpperMatrixVectorProduct(const tBoolean &isTransA, const tLVectorIndex &nRowsA, const double *A, const tLVectorIndex &nX, const tLVectorIncrement &incX, double *x)
Definition: dpackeduppermatrix_functions.cpp:96
#define tBoolean
Definition: types.h:48
void DoublePackedUpperMatrixVectorSolve(const tBoolean &isTransA, const tLVectorIndex &nARows, const double *A, const tLVectorIndex &nB, const tLVectorIncrement &incB, double *B)
Definition: dpackeduppermatrix_functions.cpp:181
tBoolean DoublePackedUpperMatrixInverse(const tLVectorIndex &nRows, double *A)
Definition: dpackeduppermatrix_functions.cpp:394
#define tLVectorIndex
Definition: lapack_types.h:13
tBoolean DoublePackedUpperMatrixSolve(const tBoolean &isTransA, const tLVectorIndex &nARows, const double *A, const tLVectorIndex &nBCols, const tLVectorIndex &ldB, double *B)
Definition: dpackeduppermatrix_functions.cpp:433
#define tLVectorIncrement
Definition: lapack_types.h:16
void DoublePackedUpperMatrixMatrixProduct(const tBoolean &isLeft, const tBoolean &isTransA, const double *A, const double &alpha, const tLVectorIndex &nRowsB, const tLVectorIndex &nColsB, const tLVectorIncrement &incB, const tLVectorIndex &ldB, double *B)
Definition: dpackeduppermatrix_functions.cpp:277