An implementation of a linear PDE solver. More...
#include <dumux/linear/pdesolver.hh>
| Assembler | the assembler | 
| LinearSolver | the linear solver | 
| Comm | the communication object used to communicate with all processes | 
| Public Types | |
| using | Communication = Comm | 
| using | Assembler | 
| export the assembler and linear solver types | |
| using | LinearSolver | 
| using | Variables | 
| export the type of variables that represent a numerical solution | |
| Public Member Functions | |
| LinearPDESolver (std::shared_ptr< Assembler > assembler, std::shared_ptr< LinearSolver > linearSolver, const Communication &comm=Dune::MPIHelper::getCommunication(), const std::string ¶mGroup="") | |
| The Constructor. | |
| LinearPDESolver (std::shared_ptr< Assembler > assembler, std::shared_ptr< LinearSolver > linearSolver, const std::string ¶mGroup) | |
| The Constructor. | |
| bool | apply (Variables &vars) override | 
| Solve a linear PDE system. | |
| void | solve (Variables &vars) override | 
| Solve a linear PDE system. | |
| void | report (std::ostream &sout=std::cout) const | 
| output statistics / report | |
| Scalar | suggestTimeStepSize (Scalar oldTimeStep) const | 
| Suggest a new time-step size based on the old time-step size. | |
| void | setVerbosity (int val) | 
| Specifies if the solver ought to be chatty. | |
| int | verbosity () const | 
| Returns true if the solver ought to be chatty. | |
| const std::string & | paramGroup () const | 
| Returns the parameter group. | |
| void | reuseMatrix (bool reuse=true) | 
| Set whether the matrix should be reused. | |
| virtual void | solve (Variables &vars, TimeLoop &timeLoop) | 
| Solve the given PDE system with time step control. | |
| const Assembler & | assembler () const | 
| Access the assembler. | |
| Assembler & | assembler () | 
| Access the assembler. | |
| const Assembler & | assembler () const | 
| Access the assembler. | |
| Assembler & | assembler () | 
| Access the assembler. | |
| const LinearSolver & | linearSolver () const | 
| Access the linear solver. | |
| const LinearSolver & | linearSolver () const | 
| Access the linear solver. | |
| Protected Member Functions | |
| LinearSolver & | linearSolver () | 
| Access the linear solver. | |
| LinearSolver & | linearSolver () | 
| Access the linear solver. | |
| bool | checkSizesOfSubMatrices (const Dune::MultiTypeBlockMatrix< FirstRow, Args... > &matrix) const | 
| Helper function to assure the MultiTypeBlockMatrix's sub-blocks have the correct sizes. | |
| bool | checkSizesOfSubMatrices (const M &) const | 
| Default implementation for any matrix type. | |
| bool | checkSizesOfSubMatrices (const Dune::MultiTypeBlockMatrix< FirstRow, Args... > &matrix) const | 
| Helper function to assure the MultiTypeBlockMatrix's sub-blocks have the correct sizes. | |
| bool | checkSizesOfSubMatrices (const M &) const | 
| Default implementation for any matrix type. | |
| Private Member Functions | |
| virtual bool | solveLinearSystem_ (ResidualVector &deltaU) | 
| 
 | inherited | 
| using Dumux::LinearPDESolver< Assembler, LinearSolver, Comm >::Communication = Comm | 
| 
 | inherited | 
| 
 | inherited | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlineoverridevirtual | 
Implements Dumux::PDESolver< Assembler, LinearSolver >.
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineprotectedinherited | 
| 
 | inlineprotectedinherited | 
| 
 | inlineprotectedinherited | 
| 
 | inlineprotectedinherited | 
| 
 | inlineprotectedinherited | 
| 
 | inlineprotectedinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inline | 
| 
 | inlineoverridevirtual | 
Implements Dumux::PDESolver< Assembler, LinearSolver >.
| 
 | inlinevirtualinherited | 
| vars | instance of the Variablesclass representing a numerical solution | 
| timeLoop | a reference to the current time loop | 
Reimplemented in Dumux::NewtonSolver< Assembler, LinearSolver, Reassembler, Comm >, Dumux::NewtonSolver< Assembler, LinearSolver, DefaultPartialReassembler, Dune::Communication< Dune::MPIHelper::MPICommunicator > >, Dumux::NewtonSolver< Assembler, LinearSolver, DefaultPartialReassembler, Dune::Communication< Dune::No_Comm > >, Dumux::NewtonSolver< Assembler, LinearSolver, DefaultPartialReassembler, Dune::Communication< Dune::No_Comm > >, Dumux::NewtonSolver< Assembler, LinearSolver, PartialReassembler< Assembler >, Dune::Communication< Dune::MPIHelper::MPICommunicator > >, Dumux::NewtonSolver< Assembler, LinearSolver, Reassembler, Comm >, and Dumux::NewtonSolver< Assembler, LinearSolver, Reassembler, Comm >.
| 
 | inlineprivatevirtual | 
| 
 | inline | 
| 
 | inline |