dune-istl  2.5-git
Public Types | Public Member Functions | List of all members
Dune::OverlappingSchwarzScalarProduct< X, C > Class Template Reference

Scalar product for overlapping schwarz methods. More...

#include <dune/istl/schwarz.hh>

Inheritance diagram for Dune::OverlappingSchwarzScalarProduct< X, C >:
Inheritance graph

Public Types

enum  { category =SolverCategory::overlapping }
 define the category More...
 
typedef X domain_type
 The type of the vector to compute the scalar product on. More...
 
typedef X::field_type field_type
 The field type used by the vector type domain_type. More...
 
typedef FieldTraits< field_type >::real_type real_type
 
typedef C communication_type
 The type of the communication object. More...
 

Public Member Functions

 OverlappingSchwarzScalarProduct (const communication_type &com)
 Constructor needs to know the grid. More...
 
virtual field_type dot (const X &x, const X &y)
 Dot product of two vectors. It is assumed that the vectors are consistent on the interior+border partition. More...
 
virtual real_type norm (const X &x)
 Norm of a right-hand side vector. The vector must be consistent on the interior+border partition. More...
 

Detailed Description

template<class X, class C>
class Dune::OverlappingSchwarzScalarProduct< X, C >

Scalar product for overlapping schwarz methods.

Consistent vectors in interior and border are assumed.

Template Parameters
XThe type of the sequential vector to use for the left hand side, e.g. BlockVector or another type fulfilling the ISTL vector interface.
CThe type of the communication object. This must either be OwnerOverlapCopyCommunication or a type implementing the same interface.

Member Typedef Documentation

§ communication_type

template<class X , class C >
typedef C Dune::OverlappingSchwarzScalarProduct< X, C >::communication_type

The type of the communication object.

This must either be OwnerOverlapCopyCommunication or a type implementing the same interface.

§ domain_type

template<class X , class C >
typedef X Dune::OverlappingSchwarzScalarProduct< X, C >::domain_type

The type of the vector to compute the scalar product on.

E.g. BlockVector or another type fulfilling the ISTL vector interface.

§ field_type

template<class X , class C >
typedef X::field_type Dune::OverlappingSchwarzScalarProduct< X, C >::field_type

The field type used by the vector type domain_type.

§ real_type

template<class X , class C >
typedef FieldTraits<field_type>::real_type Dune::OverlappingSchwarzScalarProduct< X, C >::real_type

Member Enumeration Documentation

§ anonymous enum

template<class X , class C >
anonymous enum

define the category

Enumerator
category 

Constructor & Destructor Documentation

§ OverlappingSchwarzScalarProduct()

template<class X , class C >
Dune::OverlappingSchwarzScalarProduct< X, C >::OverlappingSchwarzScalarProduct ( const communication_type com)
inline

Constructor needs to know the grid.

Parameters
comThe communication object for syncing overlap and copy data points. (E.~g. OwnerOverlapCopyCommunication )

Member Function Documentation

§ dot()

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

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

Implements Dune::ScalarProduct< X >.

§ norm()

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

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

Implements Dune::ScalarProduct< X >.


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