Anasazi
Version of the Day
|
Anasazi's templated pure virtual class for managing the sorting of approximate eigenvalues computed by the eigensolver. A concrete implementation of this class is necessary. More...
#include <AnasaziSortManager.hpp>
Public Member Functions | |
SortManager () | |
Default constructor. More... | |
SortManager (Teuchos::ParameterList &pl) | |
Constructor accepting a Teuchos::ParameterList. This is the default mode for instantiating a SortManager. More... | |
virtual | ~SortManager () |
Destructor. More... | |
virtual void | sort (std::vector< MagnitudeType > &evals, Teuchos::RCP< std::vector< int > > perm=Teuchos::null, int n=-1) const =0 |
Sort real eigenvalues, optionally returning the permutation vector. More... | |
virtual void | sort (std::vector< MagnitudeType > &r_evals, std::vector< MagnitudeType > &i_evals, Teuchos::RCP< std::vector< int > > perm=Teuchos::null, int n=-1) const =0 |
Sort complex eigenvalues, optionally returning the permutation vector. More... | |
Anasazi's templated pure virtual class for managing the sorting of approximate eigenvalues computed by the eigensolver. A concrete implementation of this class is necessary.
Definition at line 47 of file AnasaziSortManager.hpp.
|
inline |
Default constructor.
Definition at line 52 of file AnasaziSortManager.hpp.
|
inline |
Constructor accepting a Teuchos::ParameterList. This is the default mode for instantiating a SortManager.
Definition at line 55 of file AnasaziSortManager.hpp.
|
inlinevirtual |
Destructor.
Definition at line 58 of file AnasaziSortManager.hpp.
|
pure virtual |
Sort real eigenvalues, optionally returning the permutation vector.
evals | [in/out] Vector of length at least n containing the eigenvalues to be sorted. On output, the first n eigenvalues will be sorted. The rest will be unchanged. |
perm | [out] Vector of length at least n to store the permutation index (optional). If specified, on output the first n eigenvalues will contain the permutation indices, in the range [0,n-1] , such that evals_out[i] = evals_in[perm[i]] |
n | [in] Number of values in evals to be sorted. If n == -1 , all values will be sorted. |
Implemented in Anasazi::BasicSort< MagnitudeType >.
|
pure virtual |
Sort complex eigenvalues, optionally returning the permutation vector.
This routine takes two vectors, one for each part of a complex eigenvalue. This is helpful for solving real, non-symmetric eigenvalue problems.
r_evals | [in/out] Vector of length at least n containing the real part of the eigenvalues to be sorted. On output, the first n eigenvalues will be sorted. The rest will be unchanged. |
i_evals | [in/out] Vector of length at least n containing the imaginary part of the eigenvalues to be sorted. On output, the first n eigenvalues will be sorted. The rest will be unchanged. |
perm | [out] Vector of length at least n to store the permutation index (optional). If specified, on output the first n eigenvalues will contain the permutation indices, in the range [0,n-1] , such that r_evals_out[i] = r_evals_in[perm[i]] and similarly for i_evals . |
n | [in] Number of values in r_evals , i_evals to be sorted. If n == -1 , all values will be sorted. |
Implemented in Anasazi::BasicSort< MagnitudeType >.