An implementation of a linear PDE solver. More...
#include <dumux/linear/pdesolver.hh>
An implementation of a linear PDE solver.
Assembler | the assembler |
LinearSolver | the linear solver |
Comm | the communication object used to communicate with all processes |
Public Member Functions | |
LinearPDESolver (std::shared_ptr< Assembler > assembler, std::shared_ptr< LinearSolver > linearSolver, const std::string ¶mGroup="") | |
The Constructor. More... | |
void | solve (SolutionVector &uCurrentIter) override |
Solve a linear PDE system. More... | |
void | report (std::ostream &sout=std::cout) const |
output statistics / report More... | |
Scalar | suggestTimeStepSize (Scalar oldTimeStep) const |
Suggest a new time-step size based on the old time-step size. More... | |
void | setVerbose (bool val) |
Specifies if the solver ought to be chatty. More... | |
bool | verbose () const |
Returns true if the solver ought to be chatty. More... | |
const std::string & | paramGroup () const |
Returns the parameter group. More... | |
virtual void | solve (SolutionVector &sol, TimeLoop &timeLoop) |
Solve the given PDE system with time step control. More... | |
Protected Member Functions | |
const Assembler & | assembler () const |
Access the assembler. More... | |
Assembler & | assembler () |
Access the assembler. More... | |
const LinearSolver & | linearSolver () const |
Access the linear solver. More... | |
LinearSolver & | linearSolver () |
Access the linear solver. More... | |
template<class FirstRow , class ... Args> | |
bool | checkSizesOfSubMatrices (const Dune::MultiTypeBlockMatrix< FirstRow, Args... > &matrix) const |
Helper function to assure the MultiTypeBlockMatrix's sub-blocks have the correct sizes. More... | |
|
inline |
The Constructor.
|
inlineprotectedinherited |
Access the assembler.
|
inlineprotectedinherited |
Access the assembler.
|
inlineprotectedinherited |
Helper function to assure the MultiTypeBlockMatrix's sub-blocks have the correct sizes.
|
inlineprotectedinherited |
Access the linear solver.
|
inlineprotectedinherited |
Access the linear solver.
|
inline |
Returns the parameter group.
|
inline |
output statistics / report
|
inline |
Specifies if the solver ought to be chatty.
|
inlinevirtualinherited |
Solve the given PDE system with time step control.
sol | a solution vector possbilty containing an initial solution |
timeLoop | a reference to the current time loop |
Reimplemented in Dumux::NewtonSolver< Assembler, LinearSolver, Reassembler, Comm >, and Dumux::NewtonSolver< Assembler, LinearSolver, DefaultPartialReassembler, Dune::CollectiveCommunication< Dune::MPIHelper::MPICommunicator > >.
|
inlineoverridevirtual |
Solve a linear PDE system.
Implements Dumux::PDESolver< Assembler, LinearSolver >.
|
inline |
Suggest a new time-step size based on the old time-step size.
|
inline |
Returns true if the solver ought to be chatty.