dune-istl 2.10
Loading...
Searching...
No Matches
Dune::ScalarProduct< X > Class Template Reference

Base class for scalar product and norm computation. More...

#include <dune/istl/scalarproducts.hh>

Inheritance diagram for Dune::ScalarProduct< X >:
Inheritance graph

Public Types

typedef X domain_type
 export types, they come from the derived class
 
typedef X::field_type field_type
 
typedef FieldTraits< field_type >::real_type real_type
 

Public Member Functions

virtual field_type dot (const X &x, const X &y) const
 Dot product of two vectors. It is assumed that the vectors are consistent on the interior+border partition.
 
virtual real_type norm (const X &x) const
 Norm of a right-hand side vector. The vector must be consistent on the interior+border partition.
 
virtual SolverCategory::Category category () const
 Category of the scalar product (see SolverCategory::Category)
 
virtual ~ScalarProduct ()
 every abstract base class has a virtual destructor
 

Detailed Description

template<class X>
class Dune::ScalarProduct< X >

Base class for scalar product and norm computation.

Krylov space methods need to compute scalar products and norms (for convergence test only). These methods have to know about the underlying data decomposition. For the sequential case a default implementation is provided.

by default the scalar product is sequential

Member Typedef Documentation

◆ domain_type

template<class X >
X Dune::ScalarProduct< X >::domain_type

export types, they come from the derived class

◆ field_type

template<class X >
X::field_type Dune::ScalarProduct< X >::field_type

◆ real_type

template<class X >
FieldTraits<field_type>::real_type Dune::ScalarProduct< X >::real_type

Constructor & Destructor Documentation

◆ ~ScalarProduct()

template<class X >
virtual Dune::ScalarProduct< X >::~ScalarProduct ( )
inlinevirtual

every abstract base class has a virtual destructor

Member Function Documentation

◆ category()

template<class X >
virtual SolverCategory::Category Dune::ScalarProduct< X >::category ( ) const
inlinevirtual

Category of the scalar product (see SolverCategory::Category)

Reimplemented in Dune::ParallelScalarProduct< X, C >.

◆ dot()

template<class X >
virtual field_type Dune::ScalarProduct< X >::dot ( const X & x,
const X & y ) const
inlinevirtual

Dot product of two vectors. It is assumed that the vectors are consistent on the interior+border partition.

Reimplemented in Dune::ParallelScalarProduct< X, C >.

◆ norm()

template<class X >
virtual real_type Dune::ScalarProduct< X >::norm ( const X & x) const
inlinevirtual

Norm of a right-hand side vector. The vector must be consistent on the interior+border partition.

Reimplemented in Dune::ParallelScalarProduct< X, C >.


The documentation for this class was generated from the following file: