![]() |
|
#include <linear_solver.h>
Inheritance diagram for oomph::FD_LU:Public Member Functions | |
| FD_LU () | |
| Constructor: empty. More... | |
| FD_LU (const FD_LU &dummy)=delete | |
| Broken copy constructor. More... | |
| void | operator= (const FD_LU &)=delete |
| Broken assignment operator. More... | |
| void | solve (Problem *const &problem_pt, DoubleVector &result) |
| void | solve (DoubleMatrixBase *const &matrix_pt, const DoubleVector &rhs, DoubleVector &result) |
| void | solve (DoubleMatrixBase *const &matrix_pt, const Vector< double > &rhs, Vector< double > &result) |
Public Member Functions inherited from oomph::DenseLU | |
| DenseLU () | |
| Constructor, initialise storage. More... | |
| DenseLU (const DenseLU &dummy)=delete | |
| Broken copy constructor. More... | |
| void | operator= (const DenseLU &)=delete |
| Broken assignment operator. More... | |
| ~DenseLU () | |
| Destructor, clean up the stored LU factors. More... | |
| double | jacobian_setup_time () const |
| virtual double | linear_solver_solution_time () const |
Public Member Functions inherited from oomph::LinearSolver | |
| 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_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 | 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... | |
Public Member Functions inherited from oomph::DistributableLinearAlgebraObject | |
| 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) |
Additional Inherited Members | |
Protected Member Functions inherited from oomph::DenseLU | |
| void | factorise (DoubleMatrixBase *const &matrix_pt) |
| Perform the LU decomposition of the matrix. More... | |
| void | backsub (const DoubleVector &rhs, DoubleVector &result) |
| Do the backsubstitution step to solve the system LU result = rhs. More... | |
| void | backsub (const Vector< double > &rhs, Vector< double > &result) |
| perform back substitution using Vector<double> More... | |
| void | clean_up_memory () |
| Clean up the stored LU factors. More... | |
Protected Member Functions inherited from oomph::DistributableLinearAlgebraObject | |
| void | clear_distribution () |
Protected Attributes inherited from oomph::DenseLU | |
| double | Jacobian_setup_time |
| Jacobian setup time. More... | |
| double | Solution_time |
| Solution time. More... | |
| int | Sign_of_determinant_of_matrix |
Protected Attributes inherited from oomph::LinearSolver | |
| bool | Enable_resolve |
| bool | Doc_time |
| Boolean flag that indicates whether the time taken. More... | |
| bool | Compute_gradient |
| bool | Gradient_has_been_computed |
| flag that indicates whether the gradient was computed or not More... | |
| DoubleVector | Gradient_for_glob_conv_newton_solve |
Dense LU decomposition-based solve of linear system assembled via finite differencing of the residuals Vector. Even more inefficient than DenseLU but excellent sanity check!
|
inline |
Constructor: empty.
|
delete |
Broken copy constructor.
|
delete |
Broken assignment operator.
|
inlinevirtual |
Linear-algebra-type solver: Takes pointer to a matrix and rhs vector and returns the solution of the linear system.
Reimplemented from oomph::DenseLU.
References oomph::DenseLU::solve().
|
inlinevirtual |
Linear-algebra-type solver: Takes pointer to a matrix and rhs vector and returns the solution of the linear system Call the broken base-class version. If you want this, please implement it
Reimplemented from oomph::DenseLU.
References oomph::LinearSolver::solve().
|
virtual |
Solver: Takes pointer to problem and returns the results Vector which contains the solution of the linear system defined by the problem's residual Vector (Jacobian computed by FD approx.)
Solver: Takes pointer to problem and returns the results Vector which contains the solution of the linear system defined by the problem's residual Vector. (Jacobian assembled by FD).
Reimplemented from oomph::DenseLU.
References oomph::DoubleVector::built(), oomph::TimingHelpers::convert_secs_to_formatted_string(), oomph::DistributableLinearAlgebraObject::distributed(), oomph::LinearSolver::Doc_time, oomph::Problem::get_fd_jacobian(), oomph::DenseLU::Jacobian_setup_time, oomph::Problem::ndof(), OOMPH_CURRENT_FUNCTION, OOMPH_EXCEPTION_LOCATION, oomph::oomph_info, oomph::DenseLU::Sign_of_determinant_of_matrix, and oomph::Problem::sign_of_jacobian().