dune-pdelab  2.5-dev
Public Types | Public Member Functions | List of all members
Dune::PDELab::ISTL::BlockVector< GFS, C > Class Template Reference

#include <dune/pdelab/backend/istl/vector.hh>

Inheritance diagram for Dune::PDELab::ISTL::BlockVector< GFS, C >:
Inheritance graph

Public Types

typedef C::field_type ElementType
 
typedef ElementType E
 
typedef C Container
 
typedef GFS GridFunctionSpace
 
typedef Container::field_type field_type
 
typedef Container::block_type block_type
 
typedef Container::size_type size_type
 
typedef GFS::Ordering::Traits::ContainerIndex ContainerIndex
 
typedef ISTL::vector_iterator< C > iterator
 
typedef ISTL::vector_iterator< const C > const_iterator
 
template<typename LFSCache >
using LocalView = UncachedVectorView< BlockVector, LFSCache >
 
template<typename LFSCache >
using ConstLocalView = ConstUncachedVectorView< const BlockVector, LFSCache >
 

Public Member Functions

 BlockVector (const BlockVector &rhs)
 
 BlockVector (const GFS &gfs, Backend::attached_container=Backend::attached_container())
 
 BlockVector (const GFS &gfs, Backend::unattached_container)
 Creates an BlockVector without allocating an underlying ISTL vector. More...
 
 BlockVector (const GFS &gfs, Container &container)
 Constructs an BlockVector for an explicitly given vector object. More...
 
 BlockVector (const GFS &gfs, const E &e)
 
void detach ()
 
void attach (std::shared_ptr< Container > container)
 
bool attached () const
 
const std::shared_ptr< Container > & storage () const
 
size_type N () const
 
BlockVectoroperator= (const BlockVector &r)
 
BlockVectoroperator= (const E &e)
 
BlockVectoroperator*= (const E &e)
 
BlockVectoroperator+= (const E &e)
 
BlockVectoroperator+= (const BlockVector &e)
 
BlockVectoroperator-= (const BlockVector &e)
 
block_typeblock (std::size_t i)
 
const block_typeblock (std::size_t i) const
 
Eoperator[] (const ContainerIndex &ci)
 
const Eoperator[] (const ContainerIndex &ci) const
 
Dune::template FieldTraits< E >::real_type two_norm () const
 
Dune::template FieldTraits< E >::real_type one_norm () const
 
Dune::template FieldTraits< E >::real_type infinity_norm () const
 
E operator* (const BlockVector &y) const
 
E dot (const BlockVector &y) const
 
BlockVectoraxpy (const E &a, const BlockVector &y)
 
 operator Container & ()
 
 operator const Container & () const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
size_t flatsize () const
 
const GFS & gridFunctionSpace () const
 

Member Typedef Documentation

§ block_type

template<typename GFS , typename C >
typedef Container::block_type Dune::PDELab::ISTL::BlockVector< GFS, C >::block_type

§ const_iterator

template<typename GFS , typename C >
typedef ISTL::vector_iterator<const C> Dune::PDELab::ISTL::BlockVector< GFS, C >::const_iterator

§ ConstLocalView

template<typename GFS , typename C >
template<typename LFSCache >
using Dune::PDELab::ISTL::BlockVector< GFS, C >::ConstLocalView = ConstUncachedVectorView<const BlockVector,LFSCache>

§ Container

template<typename GFS , typename C >
typedef C Dune::PDELab::ISTL::BlockVector< GFS, C >::Container

§ ContainerIndex

template<typename GFS , typename C >
typedef GFS::Ordering::Traits::ContainerIndex Dune::PDELab::ISTL::BlockVector< GFS, C >::ContainerIndex

§ E

template<typename GFS , typename C >
typedef ElementType Dune::PDELab::ISTL::BlockVector< GFS, C >::E

§ ElementType

template<typename GFS , typename C >
typedef C::field_type Dune::PDELab::ISTL::BlockVector< GFS, C >::ElementType

§ field_type

template<typename GFS , typename C >
typedef Container::field_type Dune::PDELab::ISTL::BlockVector< GFS, C >::field_type

§ GridFunctionSpace

template<typename GFS , typename C >
typedef GFS Dune::PDELab::ISTL::BlockVector< GFS, C >::GridFunctionSpace

§ iterator

template<typename GFS , typename C >
typedef ISTL::vector_iterator<C> Dune::PDELab::ISTL::BlockVector< GFS, C >::iterator

§ LocalView

template<typename GFS , typename C >
template<typename LFSCache >
using Dune::PDELab::ISTL::BlockVector< GFS, C >::LocalView = UncachedVectorView<BlockVector,LFSCache>

§ size_type

template<typename GFS , typename C >
typedef Container::size_type Dune::PDELab::ISTL::BlockVector< GFS, C >::size_type

Constructor & Destructor Documentation

§ BlockVector() [1/5]

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::BlockVector ( const BlockVector< GFS, C > &  rhs)
inline

§ BlockVector() [2/5]

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::BlockVector ( const GFS &  gfs,
Backend::attached_container  = Backend::attached_container() 
)
inline

§ BlockVector() [3/5]

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::BlockVector ( const GFS &  gfs,
Backend::unattached_container   
)
inline

Creates an BlockVector without allocating an underlying ISTL vector.

§ BlockVector() [4/5]

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::BlockVector ( const GFS &  gfs,
Container container 
)
inline

Constructs an BlockVector for an explicitly given vector object.

Parameters
gfsGridFunctionSpace that determines the size and the blocking of the vector
containerThe actual ISTL container class

§ BlockVector() [5/5]

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::BlockVector ( const GFS &  gfs,
const E e 
)
inline

Member Function Documentation

§ attach()

template<typename GFS , typename C >
void Dune::PDELab::ISTL::BlockVector< GFS, C >::attach ( std::shared_ptr< Container container)
inline

§ attached()

template<typename GFS , typename C >
bool Dune::PDELab::ISTL::BlockVector< GFS, C >::attached ( ) const
inline

§ axpy()

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::axpy ( const E a,
const BlockVector< GFS, C > &  y 
)
inline

§ begin() [1/2]

template<typename GFS , typename C >
iterator Dune::PDELab::ISTL::BlockVector< GFS, C >::begin ( )
inline

§ begin() [2/2]

template<typename GFS , typename C >
const_iterator Dune::PDELab::ISTL::BlockVector< GFS, C >::begin ( ) const
inline

§ block() [1/2]

template<typename GFS , typename C >
block_type& Dune::PDELab::ISTL::BlockVector< GFS, C >::block ( std::size_t  i)
inline

§ block() [2/2]

template<typename GFS , typename C >
const block_type& Dune::PDELab::ISTL::BlockVector< GFS, C >::block ( std::size_t  i) const
inline

§ detach()

template<typename GFS , typename C >
void Dune::PDELab::ISTL::BlockVector< GFS, C >::detach ( )
inline

§ dot()

template<typename GFS , typename C >
E Dune::PDELab::ISTL::BlockVector< GFS, C >::dot ( const BlockVector< GFS, C > &  y) const
inline

§ end() [1/2]

template<typename GFS , typename C >
iterator Dune::PDELab::ISTL::BlockVector< GFS, C >::end ( )
inline

§ end() [2/2]

template<typename GFS , typename C >
const_iterator Dune::PDELab::ISTL::BlockVector< GFS, C >::end ( ) const
inline

§ flatsize()

template<typename GFS , typename C >
size_t Dune::PDELab::ISTL::BlockVector< GFS, C >::flatsize ( ) const
inline

§ gridFunctionSpace()

template<typename GFS , typename C >
const GFS& Dune::PDELab::ISTL::BlockVector< GFS, C >::gridFunctionSpace ( ) const
inline

§ infinity_norm()

template<typename GFS , typename C >
Dune::template FieldTraits<E>::real_type Dune::PDELab::ISTL::BlockVector< GFS, C >::infinity_norm ( ) const
inline

§ N()

template<typename GFS , typename C >
size_type Dune::PDELab::ISTL::BlockVector< GFS, C >::N ( ) const
inline

§ one_norm()

template<typename GFS , typename C >
Dune::template FieldTraits<E>::real_type Dune::PDELab::ISTL::BlockVector< GFS, C >::one_norm ( ) const
inline

§ operator const Container &()

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::operator const Container & ( ) const
inline

§ operator Container &()

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::operator Container & ( )
inline

§ operator*()

template<typename GFS , typename C >
E Dune::PDELab::ISTL::BlockVector< GFS, C >::operator* ( const BlockVector< GFS, C > &  y) const
inline

§ operator*=()

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator*= ( const E e)
inline

§ operator+=() [1/2]

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator+= ( const E e)
inline

§ operator+=() [2/2]

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator+= ( const BlockVector< GFS, C > &  e)
inline

§ operator-=()

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator-= ( const BlockVector< GFS, C > &  e)
inline

§ operator=() [1/2]

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator= ( const BlockVector< GFS, C > &  r)
inline

§ operator=() [2/2]

template<typename GFS , typename C >
BlockVector& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator= ( const E e)
inline

§ operator[]() [1/2]

template<typename GFS , typename C >
E& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator[] ( const ContainerIndex ci)
inline

§ operator[]() [2/2]

template<typename GFS , typename C >
const E& Dune::PDELab::ISTL::BlockVector< GFS, C >::operator[] ( const ContainerIndex ci) const
inline

§ storage()

template<typename GFS , typename C >
const std::shared_ptr<Container>& Dune::PDELab::ISTL::BlockVector< GFS, C >::storage ( ) const
inline

§ two_norm()

template<typename GFS , typename C >
Dune::template FieldTraits<E>::real_type Dune::PDELab::ISTL::BlockVector< GFS, C >::two_norm ( ) const
inline

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