dune-istl
2.2.1
|
#include <dune/istl/bvector.hh>
Public Types | |
typedef B::field_type | field_type |
export the type representing the field More... | |
typedef B | block_type |
export the type representing the components More... | |
typedef A | allocator_type |
export the allocator type More... | |
typedef compressed_base_array_unmanaged < B, A >::iterator | Iterator |
make iterators available as types More... | |
typedef compressed_base_array_unmanaged < B, A >::const_iterator | ConstIterator |
make iterators available as types More... | |
typedef A::size_type | size_type |
The type for the index access. More... | |
typedef B | member_type |
export the type representing the components More... | |
typedef RealIterator< B > | iterator |
The iterator type. More... | |
typedef RealIterator< const B > | const_iterator |
const_iterator class for sequential access More... | |
Public Member Functions | |
compressed_block_vector_unmanaged & | operator= (const field_type &k) |
template<class V > | |
compressed_block_vector_unmanaged & | operator+= (const V &y) |
vector space addition More... | |
template<class V > | |
compressed_block_vector_unmanaged & | operator-= (const V &y) |
vector space subtraction More... | |
template<class V > | |
compressed_block_vector_unmanaged & | axpy (const field_type &a, const V &y) |
vector space axpy operation More... | |
compressed_block_vector_unmanaged & | operator*= (const field_type &k) |
vector space multiplication with scalar More... | |
compressed_block_vector_unmanaged & | operator/= (const field_type &k) |
vector space division by scalar More... | |
field_type | operator* (const compressed_block_vector_unmanaged &y) const |
scalar product More... | |
double | one_norm () const |
one norm (sum over absolute values of entries) More... | |
double | one_norm_real () const |
simplified one norm (uses Manhattan norm for complex values) More... | |
double | two_norm () const |
two norm sqrt(sum over squared values of entries) More... | |
double | two_norm2 () const |
sqare of two norm (sum over squared values of entries), need for block recursion More... | |
double | infinity_norm () const |
infinity norm (maximum of absolute values of entries) More... | |
double | infinity_norm_real () const |
simplified infinity norm (uses Manhattan norm for complex values) More... | |
size_type | N () const |
number of blocks in the vector (are of size 1 here) More... | |
size_type | dim () const |
dimension of the vector space More... | |
B & | operator[] (size_type i) |
random access to blocks, assumes ascending ordering More... | |
const B & | operator[] (size_type i) const |
same for read only access, assumes ascending ordering More... | |
iterator | begin () |
begin iterator More... | |
const_iterator | begin () const |
begin const_iterator More... | |
iterator | end () |
end iterator More... | |
const_iterator | end () const |
end const_iterator More... | |
iterator | beforeEnd () |
const_iterator | beforeEnd () const |
iterator | beforeBegin () |
const_iterator | beforeBegin () const |
iterator | find (size_type i) |
random access returning iterator (end if not contained) More... | |
const_iterator | find (size_type i) const |
random access returning iterator (end if not contained) More... | |
size_type | size () const |
number of blocks in the array (are of size 1 here) More... | |
Protected Member Functions | |
compressed_block_vector_unmanaged () | |
make constructor protected, so only derived classes can be instantiated More... | |
template<class V > | |
bool | includesindexset (const V &y) |
return true if index sets coincide More... | |
Protected Attributes | |
size_type | n |
B * | p |
size_type * | j |
compressed_block_vector_unmanaged extends the compressed base_array_unmanaged by vector operations such as addition and scalar multiplication. No memory management is added.
Error checking: no error checking is provided normally. Setting the compile time switch DUNE_ISTL_WITH_CHECKING enables error checking.
typedef A Dune::compressed_block_vector_unmanaged< B, A >::allocator_type |
export the allocator type
typedef B Dune::compressed_block_vector_unmanaged< B, A >::block_type |
export the type representing the components
|
inherited |
const_iterator class for sequential access
typedef compressed_base_array_unmanaged<B,A>::const_iterator Dune::compressed_block_vector_unmanaged< B, A >::ConstIterator |
make iterators available as types
typedef B::field_type Dune::compressed_block_vector_unmanaged< B, A >::field_type |
export the type representing the field
|
inherited |
The iterator type.
typedef compressed_base_array_unmanaged<B,A>::iterator Dune::compressed_block_vector_unmanaged< B, A >::Iterator |
make iterators available as types
|
inherited |
export the type representing the components
typedef A::size_type Dune::compressed_block_vector_unmanaged< B, A >::size_type |
The type for the index access.
|
inlineprotected |
make constructor protected, so only derived classes can be instantiated
|
inline |
vector space axpy operation
References Dune::compressed_block_vector_unmanaged< B, A >::includesindexset().
|
inlineinherited |
References Dune::compressed_base_array_unmanaged< B, A >::j, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
References Dune::compressed_base_array_unmanaged< B, A >::j, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
begin iterator
References Dune::compressed_base_array_unmanaged< B, A >::j, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
begin const_iterator
References Dune::compressed_base_array_unmanaged< B, A >::j, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
dimension of the vector space
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
|
inlineinherited |
end const_iterator
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
random access returning iterator (end if not contained)
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
Referenced by Dune::compressed_block_vector_unmanaged< B, A >::includesindexset().
|
inlineinherited |
random access returning iterator (end if not contained)
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineprotected |
return true if index sets coincide
References Dune::compressed_base_array_unmanaged< B, A >::end(), and Dune::compressed_base_array_unmanaged< B, A >::find().
Referenced by Dune::compressed_block_vector_unmanaged< B, A >::axpy(), Dune::compressed_block_vector_unmanaged< B, A >::operator*(), Dune::compressed_block_vector_unmanaged< B, A >::operator+=(), and Dune::compressed_block_vector_unmanaged< B, A >::operator-=().
|
inline |
infinity norm (maximum of absolute values of entries)
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
simplified infinity norm (uses Manhattan norm for complex values)
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
number of blocks in the vector (are of size 1 here)
References Dune::compressed_base_array_unmanaged< B, A >::n.
Referenced by Dune::CompressedBlockVectorWindow< B, A >::operator=().
|
inline |
one norm (sum over absolute values of entries)
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
simplified one norm (uses Manhattan norm for complex values)
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
|
inline |
vector space multiplication with scalar
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
vector space addition
References Dune::compressed_block_vector_unmanaged< B, A >::includesindexset().
|
inline |
vector space subtraction
References Dune::compressed_block_vector_unmanaged< B, A >::includesindexset().
|
inline |
vector space division by scalar
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
|
inlineinherited |
random access to blocks, assumes ascending ordering
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
same for read only access, assumes ascending ordering
References Dune::compressed_base_array_unmanaged< B, A >::j, Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inlineinherited |
number of blocks in the array (are of size 1 here)
References Dune::compressed_base_array_unmanaged< B, A >::n.
|
inline |
two norm sqrt(sum over squared values of entries)
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
inline |
sqare of two norm (sum over squared values of entries), need for block recursion
References Dune::compressed_base_array_unmanaged< B, A >::n, and Dune::compressed_base_array_unmanaged< B, A >::p.
|
protectedinherited |
Referenced by Dune::compressed_base_array_unmanaged< B, A >::beforeBegin(), Dune::compressed_base_array_unmanaged< B, A >::beforeEnd(), Dune::compressed_base_array_unmanaged< B, A >::begin(), Dune::CompressedBlockVectorWindow< B, A >::CompressedBlockVectorWindow(), Dune::compressed_base_array_unmanaged< B, A >::end(), Dune::compressed_base_array_unmanaged< B, A >::find(), Dune::CompressedBlockVectorWindow< B, A >::getindexptr(), Dune::compressed_block_vector_unmanaged< B, A >::operator*(), Dune::CompressedBlockVectorWindow< B, A >::operator=(), Dune::compressed_base_array_unmanaged< B, A >::operator[](), Dune::CompressedBlockVectorWindow< B, A >::set(), and Dune::CompressedBlockVectorWindow< B, A >::setindexptr().
|
protectedinherited |
Referenced by Dune::compressed_base_array_unmanaged< B, A >::beforeEnd(), Dune::CompressedBlockVectorWindow< B, A >::CompressedBlockVectorWindow(), Dune::compressed_block_vector_unmanaged< B, A >::dim(), Dune::compressed_base_array_unmanaged< B, A >::end(), Dune::compressed_base_array_unmanaged< B, A >::find(), Dune::CompressedBlockVectorWindow< B, A >::getsize(), Dune::compressed_block_vector_unmanaged< B, A >::infinity_norm(), Dune::compressed_block_vector_unmanaged< B, A >::infinity_norm_real(), Dune::compressed_block_vector_unmanaged< B, A >::N(), Dune::compressed_block_vector_unmanaged< B, A >::one_norm(), Dune::compressed_block_vector_unmanaged< B, A >::one_norm_real(), Dune::compressed_block_vector_unmanaged< B, A >::operator*(), Dune::compressed_block_vector_unmanaged< B, A >::operator*=(), Dune::compressed_block_vector_unmanaged< B, A >::operator/=(), Dune::compressed_block_vector_unmanaged< B, A >::operator=(), Dune::CompressedBlockVectorWindow< B, A >::operator=(), Dune::compressed_base_array_unmanaged< B, A >::operator[](), Dune::CompressedBlockVectorWindow< B, A >::set(), Dune::CompressedBlockVectorWindow< B, A >::setsize(), Dune::compressed_base_array_unmanaged< B, A >::size(), Dune::compressed_block_vector_unmanaged< B, A >::two_norm(), and Dune::compressed_block_vector_unmanaged< B, A >::two_norm2().
|
protectedinherited |
Referenced by Dune::compressed_base_array_unmanaged< B, A >::beforeBegin(), Dune::compressed_base_array_unmanaged< B, A >::beforeEnd(), Dune::compressed_base_array_unmanaged< B, A >::begin(), Dune::CompressedBlockVectorWindow< B, A >::CompressedBlockVectorWindow(), Dune::compressed_block_vector_unmanaged< B, A >::dim(), Dune::compressed_base_array_unmanaged< B, A >::end(), Dune::compressed_base_array_unmanaged< B, A >::find(), Dune::CompressedBlockVectorWindow< B, A >::getptr(), Dune::compressed_block_vector_unmanaged< B, A >::infinity_norm(), Dune::compressed_block_vector_unmanaged< B, A >::infinity_norm_real(), Dune::compressed_block_vector_unmanaged< B, A >::one_norm(), Dune::compressed_block_vector_unmanaged< B, A >::one_norm_real(), Dune::compressed_block_vector_unmanaged< B, A >::operator*(), Dune::compressed_block_vector_unmanaged< B, A >::operator*=(), Dune::compressed_block_vector_unmanaged< B, A >::operator/=(), Dune::compressed_block_vector_unmanaged< B, A >::operator=(), Dune::CompressedBlockVectorWindow< B, A >::operator=(), Dune::compressed_base_array_unmanaged< B, A >::operator[](), Dune::CompressedBlockVectorWindow< B, A >::set(), Dune::CompressedBlockVectorWindow< B, A >::setptr(), Dune::compressed_block_vector_unmanaged< B, A >::two_norm(), and Dune::compressed_block_vector_unmanaged< B, A >::two_norm2().