dune-fem 2.12-git
Loading...
Searching...
No Matches
Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp > Class Template Reference

An implementation of DenseVector to extract a portion, not necessarly contiguos, of a vector. More...

#include <dune/fem/storage/subvector.hh>

Inheritance diagram for Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >:
Inheritance graph

Public Types

typedef BaseType::size_type size_type
 
typedef BaseType::value_type value_type
 
typedef BaseVectorImp BaseVectorType
 Type of the base vector.
 
typedef IndexMapperImp IndexMapperType
 Type of the index mapper.
 
typedef value_type FieldType
 Type of vector elements.
 
typedef Traits::derived_type derived_type
 
typedef FieldTraits< value_type >::field_type field_type
 
typedef Traits::value_type block_type
 
typedef DenseIterator< DenseVector, value_typeIterator
 
typedef Iterator iterator
 
typedef DenseIterator< const DenseVector, const value_typeConstIterator
 
typedef ConstIterator const_iterator
 

Public Member Functions

 SubVector (BaseVectorType &baseVector, IndexMapperType &&indexMapper)
 Constructor.
 
 SubVector (const ThisType &other)
 
ThisTypeoperator= (const ThisType &other)
 Copy entries.
 
void clear ()
 
void resize (size_type)
 
const value_typeoperator[] (size_type i) const
 
value_typeoperator[] (size_type i)
 
size_type size () const
 
constexpr derived_typeoperator= (const value_type &k)
 
constexpr derived_typeoperator= (const DenseVector< W > &other)
 
constexpr DenseVectoroperator= (const DenseVector &)=default
 
constexpr value_typefront ()
 
constexpr const value_typefront () const
 
constexpr value_typeback ()
 
constexpr const value_typeback () const
 
constexpr bool empty () const
 
constexpr Iterator begin ()
 
constexpr ConstIterator begin () const
 
constexpr Iterator end ()
 
constexpr ConstIterator end () const
 
constexpr Iterator beforeEnd ()
 
constexpr ConstIterator beforeEnd () const
 
constexpr Iterator beforeBegin ()
 
constexpr ConstIterator beforeBegin () const
 
constexpr Iterator find (size_type i)
 
constexpr ConstIterator find (size_type i) const
 
constexpr derived_typeoperator+= (const DenseVector< Other > &x)
 
constexpr std::enable_if< std::is_convertible< ValueType, value_type >::value, derived_type >::type & operator+= (const ValueType &kk)
 
constexpr derived_typeoperator-= (const DenseVector< Other > &x)
 
constexpr std::enable_if< std::is_convertible< ValueType, value_type >::value, derived_type >::type & operator-= (const ValueType &kk)
 
constexpr derived_type operator+ (const DenseVector< Other > &b) const
 
constexpr derived_type operator- (const DenseVector< Other > &b) const
 
constexpr derived_type operator- () const
 
constexpr std::enable_if< std::is_convertible< FieldType, field_type >::value, derived_type >::type & operator*= (const FieldType &kk)
 
constexpr std::enable_if< std::is_convertible< FieldType, field_type >::value, derived_type >::type & operator/= (const FieldType &kk)
 
constexpr bool operator== (const DenseVector< Other > &x) const
 
constexpr bool operator!= (const DenseVector< Other > &x) const
 
constexpr derived_typeaxpy (const field_type &a, const DenseVector< Other > &x)
 
constexpr PromotionTraits< field_type, typenameDenseVector< Other >::field_type >::PromotedType operator* (const DenseVector< Other > &x) const
 
constexpr PromotionTraits< field_type, typenameDenseVector< Other >::field_type >::PromotedType dot (const DenseVector< Other > &x) const
 
constexpr FieldTraits< value_type >::real_type one_norm () const
 
constexpr FieldTraits< value_type >::real_type one_norm_real () const
 
constexpr FieldTraits< value_type >::real_type two_norm () const
 
constexpr FieldTraits< value_type >::real_type two_norm2 () const
 
constexpr FieldTraits< vt >::real_type infinity_norm () const
 
constexpr FieldTraits< vt >::real_type infinity_norm () const
 
constexpr FieldTraits< vt >::real_type infinity_norm_real () const
 
constexpr FieldTraits< vt >::real_type infinity_norm_real () const
 
constexpr size_type N () const
 
constexpr size_type dim () const
 
std::ostreamoperator<< (std::ostream &s, const DenseVector< V > &v)
 

Static Public Attributes

static constexpr int blocklevel
 

Detailed Description

template<class BaseVectorImp, class IndexMapperImp>
class Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >

An implementation of DenseVector to extract a portion, not necessarly contiguos, of a vector.

Template Parameters
BaseVectorImpThe base vector
IndexMapperImpThe index mapper

Member Typedef Documentation

◆ BaseVectorType

template<class BaseVectorImp , class IndexMapperImp >
typedef BaseVectorImp Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::BaseVectorType

Type of the base vector.

◆ FieldType

template<class BaseVectorImp , class IndexMapperImp >
typedef value_type Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::FieldType

Type of vector elements.

◆ IndexMapperType

template<class BaseVectorImp , class IndexMapperImp >
typedef IndexMapperImp Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::IndexMapperType

Type of the index mapper.

◆ size_type

template<class BaseVectorImp , class IndexMapperImp >
typedef BaseType::size_type Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::size_type

◆ value_type

template<class BaseVectorImp , class IndexMapperImp >
typedef BaseType::value_type Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::value_type

Constructor & Destructor Documentation

◆ SubVector() [1/2]

template<class BaseVectorImp , class IndexMapperImp >
Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::SubVector ( BaseVectorType baseVector,
IndexMapperType &&  indexMapper 
)
inlineexplicit

Constructor.

◆ SubVector() [2/2]

template<class BaseVectorImp , class IndexMapperImp >
Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::SubVector ( const ThisType other)
inline

Member Function Documentation

◆ clear()

template<class BaseVectorImp , class IndexMapperImp >
void Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::clear ( )
inline

◆ operator=() [1/4]

template<class BaseVectorImp , class IndexMapperImp >
constexpr DenseVector & Dune::DenseVector< typename V >::operator= ( const DenseVector )

◆ operator=() [2/4]

template<class BaseVectorImp , class IndexMapperImp >
constexpr derived_type & Dune::DenseVector< typename V >::operator= ( const DenseVector< W > &  other)

◆ operator=() [3/4]

template<class BaseVectorImp , class IndexMapperImp >
ThisType & Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::operator= ( const ThisType other)
inline

Copy entries.

◆ operator=() [4/4]

template<class BaseVectorImp , class IndexMapperImp >
constexpr derived_type & Dune::DenseVector< typename V >::operator= ( const value_type k)

◆ operator[]() [1/2]

template<class BaseVectorImp , class IndexMapperImp >
value_type & Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::operator[] ( size_type  i)
inline

◆ operator[]() [2/2]

template<class BaseVectorImp , class IndexMapperImp >
const value_type & Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::operator[] ( size_type  i) const
inline

◆ resize()

template<class BaseVectorImp , class IndexMapperImp >
void Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::resize ( size_type  )
inline

◆ size()

template<class BaseVectorImp , class IndexMapperImp >
size_type Dune::Fem::SubVector< BaseVectorImp, IndexMapperImp >::size ( ) const
inline

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