|
| | HelmholtzSmoother () |
| | Empty constructor. More...
|
| |
| virtual | ~HelmholtzSmoother () |
| | Virtual empty destructor. More...
|
| |
| virtual void | complex_smoother_solve (const Vector< DoubleVector > &rhs, Vector< DoubleVector > &result)=0 |
| |
| virtual void | complex_smoother_setup (Vector< CRDoubleMatrix * > matrix_pt)=0 |
| | Setup the smoother for the matrix specified by the pointer. More...
|
| |
| void | complex_matrix_multiplication (Vector< CRDoubleMatrix * > matrices_pt, const Vector< DoubleVector > &x, Vector< DoubleVector > &soln) |
| |
| template<typename MATRIX > |
| void | check_validity_of_solve_helper_inputs (CRDoubleMatrix *const &real_matrix_pt, CRDoubleMatrix *const &imag_matrix_pt, const Vector< DoubleVector > &rhs, Vector< DoubleVector > &solution, const double &n_dof) |
| |
| | IterativeLinearSolver () |
| |
| | IterativeLinearSolver (const IterativeLinearSolver &)=delete |
| | Broken copy constructor. More...
|
| |
| void | operator= (const IterativeLinearSolver &)=delete |
| | Broken assignment operator. More...
|
| |
| virtual | ~IterativeLinearSolver () |
| | Destructor (empty) More...
|
| |
| Preconditioner *& | preconditioner_pt () |
| | Access function to preconditioner. More...
|
| |
| Preconditioner *const & | preconditioner_pt () const |
| | Access function to preconditioner (const version) More...
|
| |
| double & | tolerance () |
| | Access to convergence tolerance. More...
|
| |
| unsigned & | max_iter () |
| | Access to max. number of iterations. More...
|
| |
| virtual unsigned | iterations () const =0 |
| | Number of iterations taken. More...
|
| |
| void | enable_doc_convergence_history () |
| | Enable documentation of the convergence history. More...
|
| |
| void | disable_doc_convergence_history () |
| | Disable documentation of the convergence history. More...
|
| |
| void | open_convergence_history_file_stream (const std::string &file_name, const std::string &zone_title="") |
| |
| void | close_convergence_history_file_stream () |
| | Close convergence history output stream. More...
|
| |
| double | jacobian_setup_time () const |
| |
| double | linear_solver_solution_time () const |
| | return the time taken to solve the linear system More...
|
| |
| virtual double | preconditioner_setup_time () const |
| | returns the the time taken to setup the preconditioner More...
|
| |
| void | enable_setup_preconditioner_before_solve () |
| | Setup the preconditioner before the solve. More...
|
| |
| void | disable_setup_preconditioner_before_solve () |
| | Don't set up the preconditioner before the solve. More...
|
| |
| void | enable_error_after_max_iter () |
| | Throw an error if we don't converge within max_iter. More...
|
| |
| void | disable_error_after_max_iter () |
| | Don't throw an error if we don't converge within max_iter (default). More...
|
| |
| void | enable_iterative_solver_as_preconditioner () |
| |
| void | disable_iterative_solver_as_preconditioner () |
| |
| | LinearSolver () |
| | Empty constructor, initialise the member data. More...
|
| |
| | LinearSolver (const LinearSolver &dummy)=delete |
| | Broken copy constructor. More...
|
| |
| void | operator= (const LinearSolver &)=delete |
| | Broken assignment operator. More...
|
| |
| virtual | ~LinearSolver () |
| | Empty virtual destructor. More...
|
| |
| void | enable_doc_time () |
| | Enable documentation of solve times. More...
|
| |
| void | disable_doc_time () |
| | Disable documentation of solve times. More...
|
| |
| bool | is_doc_time_enabled () const |
| | Is documentation of solve times enabled? More...
|
| |
| bool | is_resolve_enabled () const |
| | Boolean flag indicating if resolves are enabled. More...
|
| |
| virtual void | enable_resolve () |
| |
| virtual void | disable_resolve () |
| |
| virtual void | solve (Problem *const &problem_pt, DoubleVector &result)=0 |
| |
| virtual void | solve (DoubleMatrixBase *const &matrix_pt, const DoubleVector &rhs, DoubleVector &result) |
| |
| virtual void | solve (DoubleMatrixBase *const &matrix_pt, const Vector< double > &rhs, Vector< double > &result) |
| |
| virtual void | solve_transpose (Problem *const &problem_pt, DoubleVector &result) |
| |
| virtual void | solve_transpose (DoubleMatrixBase *const &matrix_pt, const DoubleVector &rhs, DoubleVector &result) |
| |
| virtual void | solve_transpose (DoubleMatrixBase *const &matrix_pt, const Vector< double > &rhs, Vector< double > &result) |
| |
| virtual void | resolve (const DoubleVector &rhs, DoubleVector &result) |
| |
| virtual void | resolve_transpose (const DoubleVector &rhs, DoubleVector &result) |
| |
| virtual void | clean_up_memory () |
| |
| virtual void | enable_computation_of_gradient () |
| |
| void | disable_computation_of_gradient () |
| |
| void | reset_gradient () |
| |
| void | get_gradient (DoubleVector &gradient) |
| | function to access the gradient, provided it has been computed More...
|
| |
| | DistributableLinearAlgebraObject () |
| | Default constructor - create a distribution. More...
|
| |
| | DistributableLinearAlgebraObject (const DistributableLinearAlgebraObject &matrix)=delete |
| | Broken copy constructor. More...
|
| |
| void | operator= (const DistributableLinearAlgebraObject &)=delete |
| | Broken assignment operator. More...
|
| |
| virtual | ~DistributableLinearAlgebraObject () |
| | Destructor. More...
|
| |
| LinearAlgebraDistribution * | distribution_pt () const |
| | access to the LinearAlgebraDistribution More...
|
| |
| unsigned | nrow () const |
| | access function to the number of global rows. More...
|
| |
| unsigned | nrow_local () const |
| | access function for the num of local rows on this processor. More...
|
| |
| unsigned | nrow_local (const unsigned &p) const |
| | access function for the num of local rows on this processor. More...
|
| |
| unsigned | first_row () const |
| | access function for the first row on this processor More...
|
| |
| unsigned | first_row (const unsigned &p) const |
| | access function for the first row on this processor More...
|
| |
| bool | distributed () const |
| | distribution is serial or distributed More...
|
| |
| bool | distribution_built () const |
| |
| void | build_distribution (const LinearAlgebraDistribution *const dist_pt) |
| |
| void | build_distribution (const LinearAlgebraDistribution &dist) |
| |
Helmholtz smoother class: The smoother class is designed for the Helmholtz equation to be used in conjunction with multigrid. The action of the smoother should reduce the high frequency errors. These methods are inefficient as stand-alone solvers