PowMeth

This class is used to manage the RPower Method. More…

#include "PowMeth.h"

Inherits from EigSolver

Public Functions

Name
PowMeth()
Constructs the object.
~PowMeth()
Deletes the object.
virtual void Set_Solver(MatrixProd &restrict MAT, MatrixProd *const restrict PREC =nullptr)
Sets the solver.
virtual void Solve(MatrixProd &restrict MAT, const DDMat &restrict V0, VEC< rExt > &restrict EigValues, DDMat &restrict EigVectors, MatrixProd *const restrict PREC =nullptr)
Solves the eigenvalue problem.

Additional inherited members

Public Functions inherited from EigSolver

Name
virtual ~EigSolver() =0
Deletes the object.
void set_maxITER(const iReg input_maxITER)
Sets the maximum number of iterations.
void set_exitTOL(const rExt input_exitTOL)
Sets the exit tolerance.
void set_nEigs(const iReg input_nEigs)
Sets the number of eigenpairs seeked in the solve stage.
bool get_solAVAIL() const
Returns the value of solAVAIL.
iReg get_maxITER() const
Returns the value of maxITER.
iReg get_exitTOL() const
Returns the value of exitTOL.
iReg get_nEigs() const
Returns the number of eigenpairs seeked in the solve stage.
iReg get_ITER() const
Returns the number of iterations performed in previous solution.
const VEC< rExt > * get_ptr_normRES_eigvals() const
Returns an handle to the Euclidean norm of the final iterative residual for each eigenvalue.
const VEC< rExt > * get_ptr_normRES_eigvect() const
Returns an handle to the Euclidean norm of the final iterative residual for each eigenvalue.

Protected Functions inherited from EigSolver

Name
void alloc_normRES()
Allocates residual norms.
void delete_normRES()
Deletes residual norms.

Protected Attributes inherited from EigSolver

Name
bool solAVAIL
Flag denoting whether a solution is available or not.
iReg maxITER
Maximum number of iterations (parameter to be set before solve).
rExt exitTOL
Exit tolerance (parameter to be set before solve).
iReg nEigs
Number of eigenpairs seeked in the solve stage.
iReg ITER
Total number of iterations.
VEC< rExt > normRES_eigvals
Euclidean norm of the final iterative residual for each eigenvalue.
VEC< rExt > normRES_eigvect
Euclidean norm of the final iterative residual for each eigenvector.

Detailed Description

class PowMeth;

This class is used to manage the RPower Method.

class PowMeth.

Public Functions Documentation

function PowMeth

PowMeth()

Constructs the object.

function ~PowMeth

~PowMeth()

Deletes the object.

function Set_Solver

virtual void Set_Solver(
    MatrixProd &__restrict__ MAT,
    MatrixProd *const __restrict__ PREC =nullptr
)

Sets the solver.

Parameters:

  • MAT system matrix.

Reimplements: EigSolver::Set_Solver

function Solve

virtual void Solve(
    MatrixProd &__restrict__ MAT,
    const DDMat &__restrict__ V0,
    VEC< rExt > &__restrict__ EigValues,
    DDMat &__restrict__ EigVectors,
    MatrixProd *const __restrict__ PREC =nullptr
)

Solves the eigenvalue problem.

Parameters:

  • MAT system matrix. [in] V0 input tentative eigenspace. If its size is smaller than the number of eigenpairs seeked, the tentative eigenspace is padded with random vectors.

Reimplements: EigSolver::Solve


Updated on 12 February 2021 at 11:59:50 CET