Spectra 1.1.0
Header-only C++ Library for Large Scale Eigenvalue Problems
|
#include <Spectra/MatOp/DenseHermMatProd.h>
Public Types | |
using | Scalar = Scalar_ |
Public Member Functions | |
template<typename Derived> | |
DenseHermMatProd (const Eigen::MatrixBase< Derived > &mat) | |
Index | rows () const |
Index | cols () const |
void | perform_op (const Scalar *x_in, Scalar *y_out) const |
This class defines the matrix-vector multiplication operation on a Hermitian complex matrix \(A\), i.e., calculating \(y=Ax\) for any vector \(x\). It is mainly used in the HermEigsSolver eigen solver.
Scalar_ | The element type of the matrix, for example, std::complex<float> , std::complex<double> , and std::complex<long double> . |
Uplo | Either Eigen::Lower or Eigen::Upper , indicating which triangular part of the matrix is used. |
Flags | Either Eigen::ColMajor or Eigen::RowMajor , indicating the storage format of the input matrix. |
Definition at line 30 of file DenseHermMatProd.h.
using Spectra::DenseHermMatProd< Scalar_, Uplo, Flags >::Scalar = Scalar_ |
Element type of the matrix.
Definition at line 36 of file DenseHermMatProd.h.
|
inline |
Constructor to create the matrix operation object.
mat | An Eigen matrix object, whose type can be Eigen::Matrix<Scalar, ...> (e.g. Eigen::MatrixXcd and Eigen::MatrixXcf ), or its mapped version (e.g. Eigen::Map<Eigen::MatrixXcd> ). |
Definition at line 58 of file DenseHermMatProd.h.
|
inline |
Return the number of rows of the underlying matrix.
Definition at line 69 of file DenseHermMatProd.h.
|
inline |
Return the number of columns of the underlying matrix.
Definition at line 73 of file DenseHermMatProd.h.
|
inline |
Perform the matrix-vector multiplication operation \(y=Ax\).
x_in | Pointer to the \(x\) vector. |
y_out | Pointer to the \(y\) vector. |
Definition at line 82 of file DenseHermMatProd.h.