dune-pdelab 2.7-git
Loading...
Searching...
No Matches
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
 
using value_type = E
 
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 >
 
template<typename LFSCache >
using AliasedLocalView = AliasedVectorView< BlockVector, LFSCache >
 
template<typename LFSCache >
using ConstAliasedLocalView = ConstAliasedVectorView< const BlockVector, LFSCache >
 

Public Member Functions

 BlockVector (const BlockVector &rhs)
 
 BlockVector (BlockVector &&rhs)
 
 BlockVector (std::shared_ptr< const GFS > gfs, Backend::attached_container=Backend::attached_container())
 
 BlockVector (std::shared_ptr< const GFS > gfs, Backend::unattached_container)
 Creates an BlockVector without allocating an underlying ISTL vector.
 
 BlockVector (std::shared_ptr< const GFS > gfs, Container &container)
 Constructs an BlockVector for an explicitly given vector object.
 
 BlockVector (std::shared_ptr< const GFS > gfs, const E &e)
 
 BlockVector (const GFS &gfs, Backend::attached_container tag=Backend::attached_container())
 
 BlockVector (const GFS &gfs, Backend::unattached_container tag)
 Creates an BlockVector without allocating an underlying ISTL vector.
 
 BlockVector (const GFS &gfs, Container &container)
 Constructs an BlockVector for an explicitly given vector object.
 
 BlockVector (const GFS &gfs, const E &e)
 
void detach ()
 
template<typename LFSCache >
value_typedata (const LFSCache &lfs_cache)
 
template<typename LFSCache >
const value_typedata (const LFSCache &lfs_cache) const
 
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_norm2 () 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
 
std::shared_ptr< const GFS > gridFunctionSpaceStorage () const
 

Member Typedef Documentation

◆ AliasedLocalView

template<typename GFS , typename C >
template<typename LFSCache >
using Dune::PDELab::ISTL::BlockVector< GFS, C >::AliasedLocalView = AliasedVectorView<BlockVector,LFSCache>

◆ 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

◆ ConstAliasedLocalView

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

◆ 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

◆ value_type

template<typename GFS , typename C >
using Dune::PDELab::ISTL::BlockVector< GFS, C >::value_type = E

Constructor & Destructor Documentation

◆ BlockVector() [1/10]

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

◆ BlockVector() [2/10]

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

◆ BlockVector() [3/10]

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

◆ BlockVector() [4/10]

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

Creates an BlockVector without allocating an underlying ISTL vector.

◆ BlockVector() [5/10]

template<typename GFS , typename C >
Dune::PDELab::ISTL::BlockVector< GFS, C >::BlockVector ( std::shared_ptr< 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() [6/10]

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

◆ BlockVector() [7/10]

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

◆ BlockVector() [8/10]

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

Creates an BlockVector without allocating an underlying ISTL vector.

◆ BlockVector() [9/10]

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() [10/10]

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

◆ data() [1/2]

template<typename GFS , typename C >
template<typename LFSCache >
value_type * Dune::PDELab::ISTL::BlockVector< GFS, C >::data ( const LFSCache &  lfs_cache)
inline

◆ data() [2/2]

template<typename GFS , typename C >
template<typename LFSCache >
const value_type * Dune::PDELab::ISTL::BlockVector< GFS, C >::data ( const LFSCache &  lfs_cache) 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

◆ gridFunctionSpaceStorage()

template<typename GFS , typename C >
std::shared_ptr< const GFS > Dune::PDELab::ISTL::BlockVector< GFS, C >::gridFunctionSpaceStorage ( ) 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 BlockVector< GFS, C > &  e)
inline

◆ operator+=() [2/2]

template<typename GFS , typename C >
BlockVector & Dune::PDELab::ISTL::BlockVector< GFS, C >::operator+= ( const E 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

◆ two_norm2()

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

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