|
mixed/SolverAdapter.hpp
Go to the documentation of this file.
151 // The following skeleton is in preparation for better support for various MatrixAdapter. For now, it simply throws an error if
154 if constexpr (std::is_same_v<std::remove_pointer_t<Operator>, Dune::MatrixAdapter<MatrixType, Vector, Vector>>)
157 else if constexpr (std::is_same_v<std::remove_pointer_t<Operator>, Opm::GhostLastMatrixAdapter<MatrixType, Vector, Vector, Comm>>)
162 OPM_THROW(std::invalid_argument, "MixedBiCGSTABSolver only supports Dune::MatrixAdapter and Opm::GhostLastMatrixAdapter\n");
205 virtual Dune::SolverCategory::Category category() const override{return Dune::SolverCategory::overlapping;};
virtual Dune::SolverCategory::Category category() const override Definition: mixed/SolverAdapter.hpp:205 virtual void apply(Vector &x, Vector &b, InverseOperatorResult &res) override Definition: mixed/SolverAdapter.hpp:188 MixedOperator< MixedMatrixType, Vector, Comm >::type MixedOperatorType Definition: mixed/SolverAdapter.hpp:104 static constexpr auto block_size Definition: mixed/SolverAdapter.hpp:102 MixedBiCGSTABSolver(Operator *op, std::shared_ptr< AbstractScalarProductType > sp, std::shared_ptr< AbstractPrecondType > prec, const double &tol, const int &maxiter, const int &verbosity, const Comm &comm) constructor Definition: mixed/SolverAdapter.hpp:116 Dune::ScalarProduct< Vector > AbstractScalarProductType Definition: mixed/SolverAdapter.hpp:100 virtual void apply(Vector &x, Vector &b, double reduction, InverseOperatorResult &res) override Definition: mixed/SolverAdapter.hpp:197 Interface class adding the update() method to the preconditioner interface. Definition: PreconditionerWithUpdate.hpp:34 static constexpr auto block_size Definition: mixed/SolverAdapter.hpp:33 virtual double norm(const Vector &x) const override Definition: mixed/SolverAdapter.hpp:62 virtual double dot(const Vector &vx, const Vector &vy) const override Definition: mixed/SolverAdapter.hpp:36 Dune linear operator that assumes ghost rows are ordered after interior rows. Avoids some computation... Definition: WellOperators.hpp:402 Wraps c-implementation of mixed-precision matrix. Definition: MatrixWrapper.hpp:19 Definition: fvbaseprimaryvariables.hh:161 Dune::InverseOperatorResult InverseOperatorResult Definition: GpuBridge.hpp:32 Dune::MatrixAdapter< Matrix, Vector, Vector > type Definition: mixed/SolverAdapter.hpp:85 Generalized mixed precision operator interface. Definition: mixed/SolverAdapter.hpp:74 Dune::OverlappingSchwarzOperator< Matrix, Vector, Vector, Comm > type Definition: mixed/SolverAdapter.hpp:75 |