#include <dune/pdelab/stationary/linearproblem.hh>
|
| StationaryLinearProblemSolver (const GO &go, LS &ls, V &x, Real reduction, Real min_defect=1e-99, int verbose=1) |
|
| StationaryLinearProblemSolver (const GO &go, LS &ls, Real reduction, Real min_defect=1e-99, int verbose=1) |
|
| StationaryLinearProblemSolver (const GO &go, LS &ls, V &x, const ParameterTree ¶ms) |
| Construct a StationaryLinearProblemSolver for the given objects and read parameters from a ParameterTree. More...
|
|
| StationaryLinearProblemSolver (const GO &go, LS &ls, const ParameterTree ¶ms) |
| Construct a StationaryLinearProblemSolver for the given objects and read parameters from a ParameterTree. More...
|
|
void | setHangingNodeModifications (bool b) |
| Set whether the solver should apply the necessary transformations for calculations on hanging nodes. More...
|
|
bool | hangingNodeModifications () const |
| Return whether the solver performs the necessary transformations for calculations on hanging nodes. More...
|
|
void | setKeepMatrix (bool b) |
| Set whether the jacobian matrix should be kept across calls to apply(). More...
|
|
bool | keepMatrix () const |
| Return whether the jacobian matrix is kept across calls to apply(). More...
|
|
const Result & | result () const |
|
void | apply (V &x, bool reuse_matrix=false) |
|
void | apply (bool reuse_matrix=false) |
|
void | discardMatrix () |
| Discard the stored Jacobian matrix. More...
|
|
const Dune::PDELab::LinearSolverResult< double > & | ls_result () const |
|
Real | reduction () const |
|
void | setReduction (Real reduction) |
|
template<typename GO, typename LS, typename V>
class Dune::PDELab::StationaryLinearProblemSolver< GO, LS, V >
- Examples
- recipe-geometry-grid.cc, and recipe-linear-system-solution-pdelab.cc.
◆ Result
template<typename GO , typename LS , typename V >
◆ StationaryLinearProblemSolver() [1/4]
template<typename GO , typename LS , typename V >
◆ StationaryLinearProblemSolver() [2/4]
template<typename GO , typename LS , typename V >
◆ StationaryLinearProblemSolver() [3/4]
template<typename GO , typename LS , typename V >
Construct a StationaryLinearProblemSolver for the given objects and read parameters from a ParameterTree.
This constructor reads the parameter controlling its operation from a passed-in ParameterTree instead of requiring the user to specify all of them as individual constructor parameters. Currently the following parameters are read:
Name | Default Value | Explanation |
reduction | | Required relative defect reduction |
min_defect | 1e-99 | minimum absolute defect at which to stop |
hanging_node_modifications | false | perform required transformations for hanging nodes |
keep_matrix | true | keep matrix between calls to apply() (but reassemble values every time) |
verbosity | 1 | control amount of debug output |
Apart from reduction, all parameters have a default value and are optional. The actual reduction for a call to apply() is calculated as r = max(reduction,min_defect/start_defect), where start defect is the norm of the residual of x.
◆ StationaryLinearProblemSolver() [4/4]
template<typename GO , typename LS , typename V >
Construct a StationaryLinearProblemSolver for the given objects and read parameters from a ParameterTree.
This constructor reads the parameter controlling its operation from a passed-in ParameterTree instead of requiring the user to specify all of them as individual constructor parameters. Currently the following parameters are read:
Name | Default Value | Explanation |
reduction | | Required relative defect reduction |
min_defect | 1e-99 | minimum absolute defect at which to stop |
hanging_node_modifications | false | perform required transformations for hanging nodes |
keep_matrix | true | keep matrix between calls to apply() (but reassemble values every time) |
verbosity | 1 | control amount of debug output |
Apart from reduction, all parameters have a default value and are optional. The actual reduction for a call to apply() is calculated as r = max(reduction,min_defect/start_defect), where start defect is the norm of the residual of x.
◆ apply() [1/2]
template<typename GO , typename LS , typename V >
◆ apply() [2/2]
template<typename GO , typename LS , typename V >
◆ discardMatrix()
template<typename GO , typename LS , typename V >
Discard the stored Jacobian matrix.
◆ hangingNodeModifications()
template<typename GO , typename LS , typename V >
Return whether the solver performs the necessary transformations for calculations on hanging nodes.
◆ keepMatrix()
template<typename GO , typename LS , typename V >
Return whether the jacobian matrix is kept across calls to apply().
◆ ls_result()
template<typename GO , typename LS , typename V >
◆ reduction()
template<typename GO , typename LS , typename V >
◆ result()
template<typename GO , typename LS , typename V >
◆ setHangingNodeModifications()
template<typename GO , typename LS , typename V >
Set whether the solver should apply the necessary transformations for calculations on hanging nodes.
◆ setKeepMatrix()
template<typename GO , typename LS , typename V >
Set whether the jacobian matrix should be kept across calls to apply().
◆ setReduction()
template<typename GO , typename LS , typename V >
The documentation for this class was generated from the following file: