|
Belos Version of the Day
|
Low-level operations on non-distributed dense matrices. More...
#include <BelosProjectedLeastSquaresSolver.hpp>
Public Types | |
| typedef Scalar | scalar_type |
| The template parameter of this class. | |
| typedef Teuchos::ScalarTraits< Scalar >::magnitudeType | magnitude_type |
The type of the magnitude of a scalar_type value. | |
| typedef Teuchos::SerialDenseMatrix< int, Scalar > | mat_type |
The type of a dense matrix (or vector) of scalar_type. | |
Low-level operations on non-distributed dense matrices.
This class provides a convenient wrapper around some BLAS operations, operating on non-distributed (hence "local") dense matrices.
Definition at line 317 of file BelosProjectedLeastSquaresSolver.hpp.
| Belos::details::LocalDenseMatrixOps< Scalar >::scalar_type |
The template parameter of this class.
Definition at line 321 of file BelosProjectedLeastSquaresSolver.hpp.
| Belos::details::LocalDenseMatrixOps< Scalar >::magnitude_type |
The type of the magnitude of a scalar_type value.
Definition at line 324 of file BelosProjectedLeastSquaresSolver.hpp.
| Belos::details::LocalDenseMatrixOps< Scalar >::mat_type |
The type of a dense matrix (or vector) of scalar_type.
Definition at line 327 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
A_star := (conjugate) transpose of A.
Definition at line 338 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
L := (conjugate) transpose of R (upper triangular).
Definition at line 349 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Zero out everything below the diagonal of A.
Definition at line 362 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
A -> [A_11, A_21, A_12, A_22].
The first four arguments are the output arguments. They are views of their respective submatrices of A.
Definition at line 382 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
A := alpha * A.
Definition at line 403 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Y := Y + alpha * X.
"AXPY" stands for "alpha times X plus y," and is the traditional abbreviation for this operation.
Definition at line 427 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
A := A + B.
Definition at line 447 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
A := A - B.
Definition at line 474 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
In Matlab notation: B = B / R, where R is upper triangular.
This method only looks at the upper left R.numCols() by R.numCols() part of R.
Definition at line 504 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
C := beta*C + alpha*A*B.
This method is a thin wrapper around the BLAS' _GEMM routine. The matrix C is NOT allowed to alias the matrices A or B. This method makes no effort to check for aliasing.
Definition at line 526 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Return the number of Inf or NaN entries in the matrix A.
| A | [in] The matrix to check. |
| upperTriangular | [in] If true, only check the upper triangle / trapezoid of A. Otherwise, check all entries of A. |
Definition at line 566 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Is the matrix A upper triangular / trapezoidal?
Definition at line 593 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Is the matrix A upper Hessenberg?
Definition at line 626 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Throw an exception if A is not upper triangular / trapezoidal.
| A | [in] The matrix to test. |
| matrixName | [in] Name of the matrix. Used only to make the exception message more informative. |
Definition at line 659 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Throw an exception if A is not (strictly) upper Hessenberg.
| A | [in] The matrix to test. |
| matrixName | [in] Name of the matrix. Used only to make the exception message more informative. |
Definition at line 680 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Throw an exception if A is not "approximately" upper Hessenberg.
"Approximately" in this case means that the Frobenius norm of the part of A that should be zero, divided by the Frobenius norm of all of A, is less than or equal to the given relative tolerance.
| A | [in] The matrix to test. |
| matrixName | [in] Name of the matrix. Used only to make the exception message more informative. |
| relativeTolerance | [in] Amount by which we allow the norm of the part of A that should be zero to deviate from zero, relative to the norm of A. |
Definition at line 710 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Ensure that the matrix A is at least minNumRows by minNumCols.
If A has fewer rows than minNumRows, or fewer columns than minNumCols, this method throws an informative exception.
| A | [in] The matrix whose dimensions to check. |
| matrixName | [in] Name of the matrix; used to make the exception message more informative. |
| minNumRows | [in] Minimum number of rows allowed in A. |
| minNumCols | [in] Minimum number of columns allowed in A. |
Definition at line 743 of file BelosProjectedLeastSquaresSolver.hpp.
|
inline |
Ensure that the matrix A is exactly numRows by numCols.
If A has a different number of rows than numRows, or a different number of columns than numCols, this method throws an informative exception.
| A | [in] The matrix whose dimensions to check. |
| matrixName | [in] Name of the matrix; used to make the exception message more informative. |
| numRows | [in] Number of rows that A must have. |
| numCols | [in] Number of columns that A must have. |
Definition at line 768 of file BelosProjectedLeastSquaresSolver.hpp.
1.9.8