DUNE PDELab (git)
schwarz.hh
1// SPDX-FileCopyrightText: Copyright © DUNE Project contributors, see file LICENSE.md in module root
111 OverlappingSchwarzOperator (const std::shared_ptr<matrix_type> A, const communication_type& com)
This file implements a vector space as a tensor product of a given vector space. The number of compon...
A linear operator exporting itself in matrix form.
Definition: operators.hh:110
SolverCategory::Category category() const override
Category of the preconditioner (see SolverCategory::Category)
Definition: schwarz.hh:361
void pre(X &x, Y &b) override
Prepare the preconditioner.
Definition: schwarz.hh:326
void apply(X &v, const Y &d) override
Apply the preconditioner.
Definition: schwarz.hh:337
X domain_type
The domain type of the preconditioner.
Definition: schwarz.hh:285
BlockPreconditioner(const std::shared_ptr< P > &p, const communication_type &c)
Constructor.
Definition: schwarz.hh:317
BlockPreconditioner(P &p, const communication_type &c)
Constructor.
Definition: schwarz.hh:306
void apply(X &v, const Y &d)
Apply one step of the preconditioner to the system A(v)=d.
Definition: schwarz.hh:344
C communication_type
The type of the communication object..
Definition: schwarz.hh:297
X::field_type field_type
The field type of the preconditioner.
Definition: schwarz.hh:292
Y range_type
The range type of the preconditioner.
Definition: schwarz.hh:290
X::field_type field_type
The field type of the operator.
Definition: operators.hh:75
const matrix_type & getmat() const override
get the sequential assembled linear operator.
Definition: schwarz.hh:133
const communication_type & getCommunication() const
Get the object responsible for communication.
Definition: schwarz.hh:146
void apply(const X &x, Y &y) const override
apply operator to x:
Definition: schwarz.hh:116
void applyscaleadd(field_type alpha, const X &x, Y &y) const override
apply operator to x, scale and add:
Definition: schwarz.hh:125
C communication_type
The type of the communication object.
Definition: schwarz.hh:98
SolverCategory::Category category() const override
Category of the linear operator (see SolverCategory::Category)
Definition: schwarz.hh:139
X domain_type
The type of the domain.
Definition: schwarz.hh:86
M matrix_type
The type of the matrix we operate on.
Definition: schwarz.hh:81
Y range_type
The type of the range.
Definition: schwarz.hh:91
X::field_type field_type
The field type of the range.
Definition: schwarz.hh:93
OverlappingSchwarzOperator(const matrix_type &A, const communication_type &com)
constructor: just store a reference to a matrix.
Definition: schwarz.hh:107
X::field_type field_type
The field type of the preconditioner.
Definition: schwarz.hh:184
C communication_type
The type of the communication object.
Definition: schwarz.hh:186
void pre(X &x, Y &b) override
Prepare the preconditioner.
Definition: schwarz.hh:206
ParSSOR(const matrix_type &A, int n, field_type w, const communication_type &c)
Constructor.
Definition: schwarz.hh:197
X domain_type
The domain type of the preconditioner.
Definition: schwarz.hh:180
Y range_type
The range type of the preconditioner.
Definition: schwarz.hh:182
M matrix_type
The matrix type the preconditioner is for.
Definition: schwarz.hh:178
SolverCategory::Category category() const override
Category of the preconditioner (see SolverCategory::Category)
Definition: schwarz.hh:233
void apply(X &v, const Y &d) override
Apply the preconditioner.
Definition: schwarz.hh:216
Base class for matrix free definition of preconditioners.
Definition: preconditioner.hh:33
X::field_type field_type
The field type of the preconditioner.
Definition: preconditioner.hh:40
Some generic functions for pretty printing vectors and matrices.
Simple iterative methods like Jacobi, Gauss-Seidel, SOR, SSOR, etc. in a generic way.
The incomplete LU factorization kernels.
std::shared_ptr< T > stackobject_to_shared_ptr(T &t)
Create a shared_ptr for a stack-allocated object.
Definition: shared_ptr.hh:72
Define general, extensible interface for operators. The available implementation wraps a matrix.
Classes providing communication interfaces for overlapping Schwarz methods.
Define general preconditioner interface.
Define base class for scalar product and norm.
Traits class for generically constructing non default constructable types.
Definition: construction.hh:39
@ overlapping
Category for overlapping solvers.
Definition: solvercategory.hh:29
A simple timing class.
???
|
Legal Statements / Impressum |
Hosted by TU Dresden |
generated with Hugo v0.111.3
(Nov 12, 23:30, 2024)