|
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 |
|
template<typename VectorType = Vector<double>>
class EigenPower< VectorType >
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.
- Author
- Guido Kanschat, 2000
Definition at line 55 of file eigen.h.
template<class VectorType >
template<typename MatrixType >
void EigenPower< VectorType >::solve |
( |
double & |
value, |
|
|
const MatrixType & |
A, |
|
|
VectorType & |
x |
|
) |
| |
Power method. x
is the (not necessarily normalized, but nonzero) start vector for the power method. After the iteration, value
is the approximated eigenvalue and x
is the corresponding eigenvector, normalized with respect to the l2-norm.
Definition at line 226 of file eigen.h.