![]() |
Reference documentation for deal.II version 9.1.1
|
#include <deal.II/lac/eigen.h>
Classes | |
struct | AdditionalData |
Public Types | |
using | size_type = types::global_dof_index |
Public Member Functions | |
EigenPower (SolverControl &cn, VectorMemory< VectorType > &mem, const AdditionalData &data=AdditionalData()) | |
virtual | ~EigenPower () |
template<typename MatrixType > | |
void | solve (double &value, const MatrixType &A, VectorType &x) |
Protected Attributes | |
AdditionalData | additional_data |
Additional Inherited Members | |
![]() | |
using | vector_type = VectorType |
![]() | |
SolverBase (SolverControl &solver_control, VectorMemory< VectorType > &vector_memory) | |
SolverBase (SolverControl &solver_control) | |
boost::signals2::connection | connect (const std::function< SolverControl::State(const unsigned int iteration, const double check_value, const VectorType ¤t_iterate)> &slot) |
![]() | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
unsigned int | n_subscriptions () const |
template<typename StreamType > | |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
![]() | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
![]() | |
GrowingVectorMemory< VectorType > | static_vector_memory |
VectorMemory< VectorType > & | memory |
boost::signals2::signal< SolverControl::State(const unsigned int iteration, const double check_value, const VectorType ¤t_iterate), StateCombiner > | iteration_status |
Power method (von Mises) for eigenvalue computations.
This method determines the largest eigenvalue of a matrix by applying increasing powers of this matrix to a vector. If there is an eigenvalue l with dominant absolute value, the iteration vectors will become aligned to its eigenspace and Ax = lx.
A shift parameter allows to shift the spectrum, so it is possible to compute the smallest eigenvalue, too.
Convergence of this method is known to be slow.
using EigenPower< VectorType >::size_type = types::global_dof_index |
EigenPower< VectorType >::EigenPower | ( | SolverControl & | cn, |
VectorMemory< VectorType > & | mem, | ||
const AdditionalData & | data = AdditionalData() |
||
) |
|
virtual |
void EigenPower< VectorType >::solve | ( | double & | value, |
const MatrixType & | A, | ||
VectorType & | x | ||
) |
|
protected |