| FEAT 3
    Finite Element Analysis Toolbox | 
Chebyshev Polynomial implementation. More...
#include <chebyshev.hpp>
 
  
| Public Types | |
| typedef IterativeSolver< VectorType > | BaseClass | 
| Our base class.  More... | |
| typedef MatrixType::DataType | DataType | 
| The floating point precision.  More... | |
| typedef Filter_ | FilterType | 
| The filter type.  More... | |
| typedef Matrix_ | MatrixType | 
| The matrix type.  More... | |
| typedef MatrixType::VectorTypeL | VectorType | 
| The type of vector this solver can be applied to.  More... | |
| Public Member Functions | |
| Chebyshev (const MatrixType &matrix, const FilterType &filter, const DataType fraction_min_ev=DataType(0.5), const DataType fraction_max_ev=DataType(0.8)) | |
| Constructor.  More... | |
| Chebyshev (const String §ion_name, const PropertyMap *section, const MatrixType &matrix, const FilterType &filter) | |
| Constructor using a PropertyMap.  More... | |
| virtual | ~Chebyshev () | 
| Empty virtual destructor.  More... | |
| virtual Status | apply (Vector_ &vec_cor, const Vector_ &vec_def)=0 | 
| Solver application method.  More... | |
| virtual Status | apply (VectorType &vec_cor, const VectorType &vec_def) override | 
| DataType | calc_convergence_rate () const | 
| Computes the overall convergence rate: (defect_final / defect_initial) ^ (1 / number of iterations)  More... | |
| DataType | calc_defect_reduction () const | 
| Computes the overall defect reduction factor: (defect_final / defect_inital)  More... | |
| virtual Status | correct (VectorType &vec_sol, const VectorType &vec_rhs) override | 
| virtual Status | correct (VectorType &vec_sol, const VectorType &vec_rhs)=0 | 
| Solver correction method.  More... | |
| virtual void | done () | 
| Finalization method.  More... | |
| virtual void | done_numeric () | 
| Numeric finalization method.  More... | |
| virtual void | done_symbolic () override | 
| Symbolic finalization method.   More... | |
| virtual void | force_defect_norm_calc (bool force) | 
| Forces the calculation of defect norms in every iteration.  More... | |
| DataType | get_def_final () const | 
| Returns the final defect.  More... | |
| DataType | get_def_initial () const | 
| Returns the initial defect.  More... | |
| DataType | get_div_abs () const | 
| Returns the absolute divergence.  More... | |
| DataType | get_div_rel () const | 
| Returns the relative divergence.  More... | |
| Index | get_max_iter () const | 
| Returns the maximum number of iterations.  More... | |
| Index | get_min_iter () const | 
| Returns the minimal number of iterations.  More... | |
| Index | get_min_stag_iter () const | 
| Returns the minimum stagnation iteration count.  More... | |
| Index | get_num_iter () const | 
| Returns number of performed iterations.  More... | |
| String | get_plot_name () const | 
| Returns the plot name of the solver.  More... | |
| DataType | get_stag_rate () const | 
| Returns the stagnation rate.  More... | |
| Status | get_status () const | 
| Returns the status.  More... | |
| virtual String | get_summary () const | 
| Returns a summary string.  More... | |
| DataType | get_tol_abs () const | 
| Returns the absolute tolerance.  More... | |
| DataType | get_tol_abs_low () const | 
| Returns the lower absolute tolerance.  More... | |
| DataType | get_tol_rel () const | 
| Returns the relative tolerance.  More... | |
| virtual void | init () | 
| Initialization method.  More... | |
| virtual void | init_numeric () override | 
| Numeric initialization method.   More... | |
| virtual void | init_symbolic () override | 
| Symbolic initialization method.   More... | |
| bool | is_converged () const | 
| checks for convergence  More... | |
| bool | is_converged (const DataType def_cur) const | 
| checks for convergence  More... | |
| bool | is_diverged () const | 
| checks for divergence  More... | |
| bool | is_diverged (const DataType def_cur) const | 
| checks for divergence  More... | |
| virtual String | name () const override | 
| Returns a descriptive string.   More... | |
| virtual void | plot_summary () const | 
| Plot a summary of the last solver run.  More... | |
| void | set_div_abs (DataType div_abs) | 
| Sets the absolute divergence for the solver.  More... | |
| void | set_div_rel (DataType div_rel) | 
| Sets the relative divergence for the solver.  More... | |
| void | set_fraction_max_ev (DataType fraction_max_ev) | 
| Sets the maximum eigenvalue fraction.  More... | |
| void | set_fraction_min_ev (DataType fraction_min_ev) | 
| Sets the minimum eigenvalue fraction.  More... | |
| void | set_max_iter (Index max_iter) | 
| Sets the maximum iteration count for the solver.  More... | |
| void | set_min_iter (Index min_iter) | 
| Sets the minimum iteration count for the solver.  More... | |
| void | set_min_stag_iter (Index min_iter) | 
| Sets the minimum stagnate iteration count for the solver.  More... | |
| void | set_plot_interval (const Index plot_interval) | 
| Sets the interval between two plot outputs, if any.  More... | |
| void | set_plot_mode (const PlotMode plot_mode) | 
| Sets the plot mode of the solver.  More... | |
| void | set_plot_name (const String &plot_name) | 
| Sets the plot name of the solver.  More... | |
| void | set_stag_rate (DataType rate) | 
| Sets the stagnation rate for the solver.  More... | |
| void | set_tol_abs (DataType tol_abs) | 
| Sets the absolute tolerance for the solver.  More... | |
| void | set_tol_abs_low (DataType tol_abs_low) | 
| Sets the lower absolute tolerance for the solver.  More... | |
| void | set_tol_rel (DataType tol_rel) | 
| Sets the relative tolerance for the solver.  More... | |
| Protected Member Functions | |
| virtual Status | _analyze_defect (Index num_iter, DataType def_cur, DataType def_prev, bool check_stag) | 
| Internal function: analyze the current defect.  More... | |
| virtual Status | _apply_intern (VectorType &vec_sol, const VectorType &vec_rhs) | 
| virtual DataType | _calc_def_norm (const VectorType &vec_def, const VectorType &vec_sol) | 
| Computes the defect norm.  More... | |
| bool | _plot_iter (Status st=Status::progress) const | 
| Plot the current iteration?  More... | |
| virtual void | _plot_iter_line (Index num_iter, DataType def_cur, DataType def_prev) | 
| Plots an iteration line.  More... | |
| bool | _plot_summary () const | 
| Plot summary?  More... | |
| void | _print_line (const String &line) const | 
| Prints a line.  More... | |
| bool | _progress () const | 
| Progress iteration?  More... | |
| void | _set_comm (const Dist::Comm *comm) | 
| Sets the communicator for the solver directly.  More... | |
| void | _set_comm_by_matrix (const Matrix_ &matrix) | 
| Sets the communicator for the solver from a matrix.  More... | |
| void | _set_comm_by_vector (const Matrix_::VectorTypeR &vector) | 
| Sets the communicator for the solver from a vector.  More... | |
| virtual Status | _set_initial_defect (const VectorType &vec_def, const VectorType &vec_sol) | 
| Internal function: sets the initial defect vector.  More... | |
| virtual Status | _set_new_defect (const VectorType &vec_def, const VectorType &vec_sol) | 
| Internal function: sets the new (next) defect vector.  More... | |
| virtual Status | _update_defect (const DataType def_cur_norm) | 
| Internal function: sets the new (next) defect norm.  More... | |
| Protected Attributes | |
| const Dist::Comm * | _comm | 
| Communicator of the solver.  More... | |
| DataType | _def_cur | 
| current defect  More... | |
| DataType | _def_init | 
| initial defect  More... | |
| DataType | _def_prev | 
| previous iteration defect  More... | |
| DataType | _div_abs | 
| absolute divergence parameter  More... | |
| DataType | _div_rel | 
| relative divergence parameter  More... | |
| bool | _force_def_norm_calc | 
| whether skipping of defect computation is allowed or not  More... | |
| DataType | _fraction_max_ev | 
| maximum eigenvalue fraction  More... | |
| DataType | _fraction_min_ev | 
| minimum eigenvalue fraction  More... | |
| Index | _iter_digits | 
| iteration count digits for plotting  More... | |
| DataType | _max_ev | 
| the maximum eigenvalue of the matrix  More... | |
| Index | _max_iter | 
| maximum number of iterations  More... | |
| DataType | _min_ev | 
| the minium eigenvalue of the matrix  More... | |
| Index | _min_iter | 
| minimum number of iterations  More... | |
| Index | _min_stag_iter | 
| minimum number of stagnation iterations  More... | |
| Index | _num_iter | 
| number of performed iterations  More... | |
| Index | _num_stag_iter | 
| number of consecutive stagnated iterations  More... | |
| Index | _plot_interval | 
| plot output interval  More... | |
| PlotMode | _plot_mode | 
| whether to plot something  More... | |
| String | _plot_name | 
| name of the solver in plots  More... | |
| DataType | _stag_rate | 
| stagnation rate  More... | |
| Status | _status | 
| current status of the solver  More... | |
| const FilterType & | _system_filter | 
| the filter for the solver  More... | |
| const MatrixType & | _system_matrix | 
| the matrix for the solver  More... | |
| DataType | _tol_abs | 
| absolute tolerance parameter  More... | |
| DataType | _tol_abs_low | 
| absolute low tolerance parameter  More... | |
| DataType | _tol_rel | 
| relative tolerance parameter  More... | |
| VectorType | _vec_cor | 
| correction vector  More... | |
| VectorType | _vec_def | 
| defect vector  More... | |
Chebyshev Polynomial implementation.
This class represents the Chebyshev-Polynomial "Solver"
[NLA:NLA1808]
Definition at line 25 of file chebyshev.hpp.
| typedef IterativeSolver<VectorType> FEAT::Solver::Chebyshev< Matrix_, Filter_ >::BaseClass | 
Our base class.
Definition at line 38 of file chebyshev.hpp.
| typedef MatrixType::DataType FEAT::Solver::Chebyshev< Matrix_, Filter_ >::DataType | 
The floating point precision.
Definition at line 36 of file chebyshev.hpp.
| typedef Filter_ FEAT::Solver::Chebyshev< Matrix_, Filter_ >::FilterType | 
The filter type.
Definition at line 32 of file chebyshev.hpp.
| typedef Matrix_ FEAT::Solver::Chebyshev< Matrix_, Filter_ >::MatrixType | 
The matrix type.
Definition at line 30 of file chebyshev.hpp.
| typedef MatrixType::VectorTypeL FEAT::Solver::Chebyshev< Matrix_, Filter_ >::VectorType | 
The type of vector this solver can be applied to.
Definition at line 34 of file chebyshev.hpp.
| 
 | inlineexplicit | 
Constructor.
| [in] | matrix | The source matrix. | 
| [in] | filter | The system filter. | 
Definition at line 69 of file chebyshev.hpp.
References FEAT::Solver::IterativeSolver< Matrix_::VectorTypeR >::_set_comm_by_matrix().
| 
 | inlineexplicit | 
Constructor using a PropertyMap.
| [in] | section_name | The name of the config section, which it does not know by itself | 
| [in] | section | A pointer to the PropertyMap section configuring this solver | 
| [in] | matrix | The system matrix. | 
| [in] | filter | The system filter. | 
Definition at line 101 of file chebyshev.hpp.
References FEAT::Solver::IterativeSolver< Matrix_::VectorTypeR >::_set_comm_by_matrix(), and FEAT::PropertyMap::query().
| 
 | inlinevirtual | 
Empty virtual destructor.
Definition at line 125 of file chebyshev.hpp.
| 
 | inlineprotectedvirtualinherited | 
Internal function: analyze the current defect.
| [in] | num_iter | Current number of iterations; usually = this->_num_iter. | 
| [in] | def_cur | Current defect norm; usually = this->_def_cur. | 
| [in] | def_prev | Previous defect norm; usually = this->_def_prev. | 
| [in] | check_stag | Specifies whether to check (and update) the stagnation criterion. This is typically set to falseif one wants to check anything else than the 'true' next defect norm. | 
Definition at line 866 of file iterative.hpp.
| 
 | inlineprotectedvirtual | 
Definition at line 232 of file chebyshev.hpp.
| 
 | inlineprotectedvirtualinherited | 
Computes the defect norm.
| [in] | vec_def | The current defect vector. | 
| [in] | vec_sol | The current solution vector approximation. | 
Definition at line 706 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Plot the current iteration?
| [in] | st | The status of the current iteration. | 
true if the plot mode is set to iter or all and the plot interval matches or the solver does not continue to the next iteration Definition at line 720 of file iterative.hpp.
| 
 | inlineprotectedvirtualinherited | 
Plots an iteration line.
| [in] | num_iter | Current number of iterations; usually = this->_num_iter. | 
| [in] | def_cur | Current defect norm; usually = this->_def_cur. | 
| [in] | def_prev | Previous defect norm; usually = this->_def_prev. | 
Definition at line 773 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Plot summary?
true if the plot mode is set to summary or all. Definition at line 731 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Prints a line.
| [in] | line | The line to be printed. | 
Definition at line 752 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Progress iteration?
true if the solver should process, otherwise false. Definition at line 741 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Sets the communicator for the solver directly.
| [in] | comm | A pointer to the communicator that is to be used by the solver. | 
Definition at line 667 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Sets the communicator for the solver from a matrix.
| [in] | matrix | A reference to a matrix. If 'Matrix_' is a 'Global::Matrix', then the communicator of the matrix gate is taken. | 
Definition at line 680 of file iterative.hpp.
| 
 | inlineprotectedinherited | 
Sets the communicator for the solver from a vector.
| [in] | vector | A reference to a vector. If 'Vector_' is a 'Global::Vector', then the communicator of the vector gate is taken. | 
Definition at line 692 of file iterative.hpp.
| 
 | inlineprotectedvirtualinherited | 
Internal function: sets the initial defect vector.
| [in] | vec_def | The initial defect vector. | 
| [in] | vec_sol | The current solution vector approximation. | 
Definition at line 802 of file iterative.hpp.
| 
 | inlineprotectedvirtualinherited | 
Internal function: sets the new (next) defect vector.
This function computes the defect vector's norm, increments the iteration count, plots an output line to std::cout and checks whether any of the stopping criterions is fulfilled.
| [in] | vec_def | The new defect vector. | 
| [in] | vec_sol | The current solution vector approximation. | 
Definition at line 924 of file iterative.hpp.
| 
 | inlineprotectedvirtualinherited | 
Internal function: sets the new (next) defect norm.
This function takes a pre-calculated defect vector norm, increments the iteration count, plots an output line to std::cout and checks whether any of the stopping criterions is fulfilled.
| [in] | def_cur_norm | The new defect norm. | 
Definition at line 970 of file iterative.hpp.
| 
 | pure virtualinherited | 
Solver application method.
This method applies the solver represented by this object onto a given defect vector and returns the corresponding correction vector.
correct() method which corrects an initial solution instead of starting with the null vector.| [out] | vec_cor | The vector that shall receive the solution of the linear system. It is assumed to be allocated, but its numerical contents may be undefined upon calling this method. | 
| [in] | vec_def | The vector that represents the right-hand-side of the linear system to be solved. | 
Implemented in FEAT::Solver::SchwarzPrecond< Global::Vector< LocalVector_, Mirror_ >, Global::Filter< LocalFilter_, Mirror_ > >, FEAT::Solver::CuSolverLU, FEAT::Solver::CuSolverQR, FEAT::Solver::ScalePrecond< Vector_, Filter_ >, FEAT::Solver::DiagonalPrecond< Vector_, Filter_ >, FEAT::Solver::MultiGrid< SystemMatrix_, SystemFilter_, TransferOperator_ >, FEAT::Solver::NLOptPrecond< VectorType_, FilterType_ >, FEAT::Solver::AmaVanka< Matrix_, Filter_ >, FEAT::Solver::ConvertPrecond< VectorOuter_, VectorInner_ >, FEAT::Solver::ConvertPrecond< Global::Vector< LocalVectorOuter_, MirrorOuter_ >, Global::Vector< LocalVectorInner_, MirrorInner_ > >, and FEAT::Solver::BFBT< MatrixA_, MatrixB_, MatrixD_, FilterV_, FilterP_ >.
Referenced by FEAT::Solver::solve().
| 
 | inlineoverridevirtual | 
Definition at line 205 of file chebyshev.hpp.
| 
 | inlineinherited | 
Computes the overall convergence rate: (defect_final / defect_initial) ^ (1 / number of iterations)
Definition at line 582 of file iterative.hpp.
| 
 | inlineinherited | 
Computes the overall defect reduction factor: (defect_final / defect_inital)
Definition at line 597 of file iterative.hpp.
| 
 | inlineoverridevirtual | 
Definition at line 219 of file chebyshev.hpp.
| 
 | pure virtualinherited | 
Solver correction method.
This method applies the solver represented by this object onto a given right-hand-side vector and updates the corresponding solution vector.
In contrast to the apply() method of the SolverBase base class, this method uses the vector vec_sol as the initial solution vector for the iterative solution process instead of ignoring its contents upon entry and starting with the null vector.
| [in,out] | vec_sol | The vector that contains the initial solution upon entry and receives the solution of the linear system upon exit. | 
| [in] | vec_rhs | The vector that represents the right-hand-side of the linear system to be solved. | 
| 
 | inlinevirtualinherited | 
Finalization method.
This function performs both the symbolic and numeric finalization, i.e. it simply performs
this->done_numeric(); this->done_symbolic();
Definition at line 283 of file base.hpp.
References FEAT::Solver::SolverBase< Vector_ >::done_numeric(), and FEAT::Solver::SolverBase< Vector_ >::done_symbolic().
| 
 | inlinevirtualinherited | 
Numeric finalization method.
This method is called to release any data allocated in the numeric initialization step.
Reimplemented in FEAT::Solver::BFBT< MatrixA_, MatrixB_, MatrixD_, FilterV_, FilterP_ >, FEAT::Solver::BFBT< Global::Matrix< MatrixA_, MirrorV_, MirrorV_ >, Global::Matrix< MatrixB_, MirrorV_, MirrorP_ >, Global::Matrix< MatrixD_, MirrorP_, MirrorV_ >, Global::Filter< FilterV_, MirrorV_ >, Global::Filter< FilterP_, MirrorP_ > >, FEAT::Solver::ConvertPrecond< VectorOuter_, VectorInner_ >, FEAT::Solver::ConvertPrecond< Global::Vector< LocalVectorOuter_, MirrorOuter_ >, Global::Vector< LocalVectorInner_, MirrorInner_ > >, FEAT::Solver::CUDSS, FEAT::Solver::DirectStokesSolver< LAFEM::SaddlePointMatrix< MatrixA_, MatrixB_, MatrixD_ >, LAFEM::TupleFilter< FilterV_, FilterP_ > >, FEAT::Solver::DirectStokesSolver< Global::Matrix< LocalMatrix_, Mirror_, Mirror_ >, Global::Filter< LocalFilter_, Mirror_ > >, FEAT::Solver::ParaSailsPrecond< Matrix_, Filter_ >, FEAT::Solver::EuclidPrecond< Matrix_, Filter_ >, FEAT::Solver::BoomerAMG< Matrix_, Filter_ >, FEAT::Solver::PreconditionedIterativeSolver< Vector_ >, FEAT::Solver::PreconditionedIterativeSolver< Matrix_::VectorTypeR >, FEAT::Solver::PreconditionedIterativeSolver< Functional_::VectorTypeR >, FEAT::Solver::MKLDSS, FEAT::Solver::MultiGrid< SystemMatrix_, SystemFilter_, TransferOperator_ >, FEAT::Solver::PCGNR< Matrix_, Filter_ >, FEAT::Solver::SchwarzPrecond< Global::Vector< LocalVector_, Mirror_ >, Global::Filter< LocalFilter_, Mirror_ > >, FEAT::Solver::Umfpack, FEAT::Solver::UmfpackMean, FEAT::Solver::SaddleUmfpackMean< DT_, IT_, dim_ >, FEAT::Solver::GenericUmfpack< Matrix_ >, FEAT::Solver::UzawaPrecond< MatrixA_, MatrixB_, MatrixD_, FilterV_, FilterP_ >, and FEAT::Solver::UzawaPrecond< Global::Matrix< MatrixA_, MirrorV_, MirrorV_ >, Global::Matrix< MatrixB_, MirrorV_, MirrorP_ >, Global::Matrix< MatrixD_, MirrorP_, MirrorV_ >, Global::Filter< FilterV_, MirrorV_ >, Global::Filter< FilterP_, MirrorP_ > >.
Definition at line 246 of file base.hpp.
Referenced by FEAT::Solver::SolverBase< Vector_ >::done(), FEAT::Solver::BFBT< MatrixA_, MatrixB_, MatrixD_, FilterV_, FilterP_ >::done_numeric(), FEAT::Solver::BFBT< Global::Matrix< MatrixA_, MirrorV_, MirrorV_ >, Global::Matrix< MatrixB_, MirrorV_, MirrorP_ >, Global::Matrix< MatrixD_, MirrorP_, MirrorV_ >, Global::Filter< FilterV_, MirrorV_ >, Global::Filter< FilterP_, MirrorP_ > >::done_numeric(), FEAT::Solver::ConvertPrecond< VectorOuter_, VectorInner_ >::done_numeric(), FEAT::Solver::ConvertPrecond< Global::Vector< LocalVectorOuter_, MirrorOuter_ >, Global::Vector< LocalVectorInner_, MirrorInner_ > >::done_numeric(), FEAT::Solver::ParaSailsPrecond< Matrix_, Filter_ >::done_numeric(), FEAT::Solver::PreconditionedIterativeSolver< Vector_ >::done_numeric(), FEAT::Solver::MultiGrid< SystemMatrix_, SystemFilter_, TransferOperator_ >::done_numeric(), FEAT::Solver::PCGNR< Matrix_, Filter_ >::done_numeric(), FEAT::Solver::SaddleUmfpackMean< DT_, IT_, dim_ >::done_numeric(), FEAT::Solver::UzawaPrecond< MatrixA_, MatrixB_, MatrixD_, FilterV_, FilterP_ >::done_numeric(), and FEAT::Solver::UzawaPrecond< Global::Matrix< MatrixA_, MirrorV_, MirrorV_ >, Global::Matrix< MatrixB_, MirrorV_, MirrorP_ >, Global::Matrix< MatrixD_, MirrorP_, MirrorV_ >, Global::Filter< FilterV_, MirrorV_ >, Global::Filter< FilterP_, MirrorP_ > >::done_numeric().
| 
 | inlineoverridevirtual | 
Symbolic finalization method.
This method is called to release any data allocated in the symbolic initialization step.
Reimplemented from FEAT::Solver::SolverBase< Vector_ >.
Definition at line 168 of file chebyshev.hpp.
References FEAT::Solver::SolverBase< Vector_ >::done_symbolic().
| 
 | inlinevirtualinherited | 
Forces the calculation of defect norms in every iteration.
| [in] | force | Specifies whether defect norm computation is to be enforced in every iteration | 
Definition at line 490 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the final defect.
Definition at line 570 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the initial defect.
Definition at line 564 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the absolute divergence.
Definition at line 419 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the relative divergence.
Definition at line 413 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the maximum number of iterations.
Definition at line 474 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the minimal number of iterations.
Definition at line 468 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the minimum stagnation iteration count.
Definition at line 443 of file iterative.hpp.
| 
 | inlineinherited | 
Returns number of performed iterations.
Definition at line 462 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the plot name of the solver.
Definition at line 523 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the stagnation rate.
Definition at line 431 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the status.
Definition at line 576 of file iterative.hpp.
| 
 | inlinevirtualinherited | 
Returns a summary string.
Definition at line 610 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the absolute tolerance.
Definition at line 389 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the lower absolute tolerance.
Definition at line 395 of file iterative.hpp.
| 
 | inlineinherited | 
Returns the relative tolerance.
Definition at line 383 of file iterative.hpp.
| 
 | inlinevirtualinherited | 
Initialization method.
This function performs both the symbolic and numeric initialization, i.e. it simply performs
this->init_symbolic(); this->init_numeric();
Definition at line 268 of file base.hpp.
References FEAT::Solver::SolverBase< Vector_ >::init_numeric(), and FEAT::Solver::SolverBase< Vector_ >::init_symbolic().
| 
 | inlineoverridevirtual | 
Numeric initialization method.
This method is called to perform numeric initialization of the solver.
Before this function can be called, the symbolic initialization must be performed.  
Reimplemented from FEAT::Solver::SolverBase< Vector_ >.
Definition at line 176 of file chebyshev.hpp.
References FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_fraction_max_ev, FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_fraction_min_ev, FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_max_ev, FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_min_ev, FEAT::Math::abs(), and FEAT::Solver::SolverBase< Vector_ >::init_numeric().
| 
 | inlineoverridevirtual | 
Symbolic initialization method.
This method is called to perform symbolic initialization of the solver.
Reimplemented from FEAT::Solver::SolverBase< Vector_ >.
Definition at line 160 of file chebyshev.hpp.
References FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_vec_cor, FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_vec_def, and FEAT::Solver::SolverBase< Vector_ >::init_symbolic().
| 
 | inlineinherited | 
checks for convergence
true, if converged, else false Definition at line 533 of file iterative.hpp.
| 
 | inlineinherited | 
checks for convergence
| [in] | def_cur | The defect norm that is to be analyzed | 
true, if converged, else false Definition at line 546 of file iterative.hpp.
| 
 | inlineinherited | 
checks for divergence
Definition at line 552 of file iterative.hpp.
| 
 | inlineinherited | 
checks for divergence
Definition at line 558 of file iterative.hpp.
| 
 | inlineoverridevirtual | 
Returns a descriptive string.
Implements FEAT::Solver::SolverBase< Vector_ >.
Definition at line 130 of file chebyshev.hpp.
| 
 | inlinevirtualinherited | 
Plot a summary of the last solver run.
Definition at line 627 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the absolute divergence for the solver.
Definition at line 407 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the relative divergence for the solver.
Definition at line 401 of file iterative.hpp.
| 
 | inline | 
Sets the maximum eigenvalue fraction.
| [in] | fraction_max_ev | The new maximum eigenvalue fraction. | 
Definition at line 154 of file chebyshev.hpp.
References FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_fraction_max_ev.
| 
 | inline | 
Sets the minimum eigenvalue fraction.
| [in] | fraction_min_ev | The new minimum eigenvalue fraction. | 
Definition at line 142 of file chebyshev.hpp.
References FEAT::Solver::Chebyshev< Matrix_, Filter_ >::_fraction_min_ev.
| 
 | inlineinherited | 
Sets the maximum iteration count for the solver.
Definition at line 455 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the minimum iteration count for the solver.
Definition at line 449 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the minimum stagnate iteration count for the solver.
Definition at line 437 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the interval between two plot outputs, if any.
| [in] | plot_interval | The desired interval of iteration plots | 
Definition at line 511 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the plot mode of the solver.
| [in] | plot_mode | The desired plot mode | 
Definition at line 501 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the plot name of the solver.
Definition at line 517 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the stagnation rate for the solver.
Definition at line 425 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the absolute tolerance for the solver.
Definition at line 371 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the lower absolute tolerance for the solver.
Definition at line 377 of file iterative.hpp.
| 
 | inlineinherited | 
Sets the relative tolerance for the solver.
Definition at line 365 of file iterative.hpp.
| 
 | protectedinherited | 
Communicator of the solver.
Definition at line 209 of file iterative.hpp.
| 
 | protectedinherited | 
current defect
Definition at line 239 of file iterative.hpp.
| 
 | protectedinherited | 
initial defect
Definition at line 237 of file iterative.hpp.
| 
 | protectedinherited | 
previous iteration defect
Definition at line 241 of file iterative.hpp.
| 
 | protectedinherited | 
absolute divergence parameter
Definition at line 223 of file iterative.hpp.
| 
 | protectedinherited | 
relative divergence parameter
Definition at line 221 of file iterative.hpp.
| 
 | protectedinherited | 
whether skipping of defect computation is allowed or not
Definition at line 249 of file iterative.hpp.
| 
 | protected | 
maximum eigenvalue fraction
Definition at line 56 of file chebyshev.hpp.
Referenced by FEAT::Solver::Chebyshev< Matrix_, Filter_ >::init_numeric(), and FEAT::Solver::Chebyshev< Matrix_, Filter_ >::set_fraction_max_ev().
| 
 | protected | 
minimum eigenvalue fraction
Definition at line 54 of file chebyshev.hpp.
Referenced by FEAT::Solver::Chebyshev< Matrix_, Filter_ >::init_numeric(), and FEAT::Solver::Chebyshev< Matrix_, Filter_ >::set_fraction_min_ev().
| 
 | protectedinherited | 
iteration count digits for plotting
Definition at line 243 of file iterative.hpp.
| 
 | protected | 
the maximum eigenvalue of the matrix
Definition at line 52 of file chebyshev.hpp.
Referenced by FEAT::Solver::Chebyshev< Matrix_, Filter_ >::init_numeric().
| 
 | protectedinherited | 
maximum number of iterations
Definition at line 229 of file iterative.hpp.
| 
 | protected | 
the minium eigenvalue of the matrix
Definition at line 50 of file chebyshev.hpp.
Referenced by FEAT::Solver::Chebyshev< Matrix_, Filter_ >::init_numeric().
| 
 | protectedinherited | 
minimum number of iterations
Definition at line 227 of file iterative.hpp.
| 
 | protectedinherited | 
minimum number of stagnation iterations
Definition at line 233 of file iterative.hpp.
| 
 | protectedinherited | 
number of performed iterations
Definition at line 231 of file iterative.hpp.
| 
 | protectedinherited | 
number of consecutive stagnated iterations
Definition at line 235 of file iterative.hpp.
| 
 | protectedinherited | 
plot output interval
Definition at line 247 of file iterative.hpp.
| 
 | protectedinherited | 
whether to plot something
Definition at line 245 of file iterative.hpp.
| 
 | protectedinherited | 
name of the solver in plots
Definition at line 211 of file iterative.hpp.
| 
 | protectedinherited | 
stagnation rate
Definition at line 225 of file iterative.hpp.
| 
 | protectedinherited | 
current status of the solver
Definition at line 213 of file iterative.hpp.
| 
 | protected | 
the filter for the solver
Definition at line 44 of file chebyshev.hpp.
| 
 | protected | 
the matrix for the solver
Definition at line 42 of file chebyshev.hpp.
| 
 | protectedinherited | 
absolute tolerance parameter
Definition at line 217 of file iterative.hpp.
| 
 | protectedinherited | 
absolute low tolerance parameter
Definition at line 219 of file iterative.hpp.
| 
 | protectedinherited | 
relative tolerance parameter
Definition at line 215 of file iterative.hpp.
| 
 | protected | 
correction vector
Definition at line 48 of file chebyshev.hpp.
Referenced by FEAT::Solver::Chebyshev< Matrix_, Filter_ >::init_symbolic().
| 
 | protected | 
defect vector
Definition at line 46 of file chebyshev.hpp.
Referenced by FEAT::Solver::Chebyshev< Matrix_, Filter_ >::init_symbolic().