Reference implementation of a Newton solver.
More...
#include <cmath>
#include <memory>
#include <iostream>
#include <type_traits>
#include <algorithm>
#include <numeric>
#include <dune/common/timer.hh>
#include <dune/common/exceptions.hh>
#include <dune/common/parallel/mpicommunication.hh>
#include <dune/common/parallel/mpihelper.hh>
#include <dune/common/std/type_traits.hh>
#include <dune/common/indices.hh>
#include <dune/common/hybridutilities.hh>
#include <dune/istl/bvector.hh>
#include <dune/istl/multitypeblockvector.hh>
#include <dumux/common/parameters.hh>
#include <dumux/common/exceptions.hh>
#include <dumux/common/typetraits/vector.hh>
#include <dumux/common/typetraits/isvalid.hh>
#include <dumux/common/timeloop.hh>
#include <dumux/common/pdesolver.hh>
#include <dumux/common/variablesbackend.hh>
#include <dumux/io/format.hh>
#include <dumux/linear/linearsolveracceptsmultitypematrix.hh>
#include <dumux/linear/matrixconverter.hh>
#include <dumux/assembly/partialreassembler.hh>
#include "newtonconvergencewriter.hh"
#include "primaryvariableswitchadapter.hh"
Go to the source code of this file.
|
| template<class LinearSolver , class Residual > |
| static constexpr bool | Dumux::Detail::Newton::hasNorm () |
| |
| template<class V , class Scalar , class Reduce , class Transform > |
| auto | Dumux::Detail::Newton::hybridInnerProduct (const V &v1, const V &v2, Scalar init, Reduce &&r, Transform &&t) -> std::enable_if_t< hasDynamicIndexAccess< V >(), Scalar > |
| |
| template<class Scalar , class V > |
| auto | Dumux::Detail::Newton::maxRelativeShift (const V &v1, const V &v2) -> std::enable_if_t< Dune::IsNumber< V >::value, Scalar > |
| |
| template<class To , class From > |
| void | Dumux::Detail::Newton::assign (To &to, const From &from) |
| |
| template<class Residual , class LinearSolver , class Assembler > |
| Assembler::Scalar | Dumux::Detail::Newton::residualNorm (Residual &residual, const LinearSolver &linearSolver, const Assembler &assembler) |
| |
◆ DUMUX_SUPPRESS_LINEAR_SOLVER_ACCEPTS_MULTITYPEMATRIX_WARNING
| #define DUMUX_SUPPRESS_LINEAR_SOLVER_ACCEPTS_MULTITYPEMATRIX_WARNING |