Dune Core Modules (2.4.1)
densevector.hh
Go to the documentation of this file.
23 typedef typename FieldTraits< typename DenseMatVecTraits<V>::value_type >::field_type field_type;
105 }
128 friend class DenseIterator<typename remove_const<C>::type, typename remove_const<T>::type, typename mutable_reference<R>::type >;
129 friend class DenseIterator<const typename remove_const<C>::type, const typename remove_const<T>::type, typename const_reference<R>::type >;
131 typedef DenseIterator<typename remove_const<C>::type, typename remove_const<T>::type, typename mutable_reference<R>::type > MutableIterator;
132 typedef DenseIterator<const typename remove_const<C>::type, const typename remove_const<T>::type, typename const_reference<R>::type > ConstIterator;
196 DifferenceType distanceTo(DenseIterator<const typename remove_const<C>::type,const typename remove_const<T>::type> other) const
202 DifferenceType distanceTo(DenseIterator<typename remove_const<C>::type, typename remove_const<T>::type> other) const
271 };
539 typename PromotionTraits<field_type,typename DenseVector<Other>::field_type>::PromotedType operator* (const DenseVector<Other>& y) const {
540 typedef typename PromotionTraits<field_type, typename DenseVector<Other>::field_type>::PromotedType PromotedType;
557 typename PromotionTraits<field_type,typename DenseVector<Other>::field_type>::PromotedType dot(const DenseVector<Other>& y) const {
558 typedef typename PromotionTraits<field_type, typename DenseVector<Other>::field_type>::PromotedType PromotedType;
Generic iterator class for dense vector and matrix implementations.
Definition: densevector.hh:127
std::ptrdiff_t DifferenceType
The type of the difference between two positions.
Definition: densevector.hh:138
C::size_type SizeType
The type to index the underlying container.
Definition: densevector.hh:143
Interface for a class of dense vectors over a given field.
Definition: densevector.hh:234
Traits::value_type value_type
export the type representing the field
Definition: densevector.hh:256
FieldTraits< value_type >::real_type two_norm2() const
square of two norm (sum over squared values of entries), need for block recursion
Definition: densevector.hh:598
ConstIterator const_iterator
typedef for stl compliant access
Definition: densevector.hh:341
Iterator iterator
typedef for stl compliant access
Definition: densevector.hh:304
ConstIterator find(size_type i) const
return iterator to given element or end()
Definition: densevector.hh:370
FieldTraits< value_type >::real_type two_norm() const
two norm sqrt(sum over squared values of entries)
Definition: densevector.hh:589
PromotionTraits< field_type, typenameDenseVector< Other >::field_type >::PromotedType dot(const DenseVector< Other > &y) const
vector dot product which corresponds to Petsc's VecDot
Definition: densevector.hh:557
derived_type & axpy(const value_type &a, const DenseVector< Other > &y)
vector space axpy operation ( *this += a y )
Definition: densevector.hh:523
DenseIterator< const DenseVector, const value_type > ConstIterator
ConstIterator class for sequential access.
Definition: densevector.hh:339
Traits::derived_type derived_type
type of derived vector class
Definition: densevector.hh:253
derived_type operator+(const DenseVector< Other > &b) const
Binary vector addition.
Definition: densevector.hh:399
std::enable_if< std::is_convertible< ValueType, value_type >::value, derived_type >::type & operator/=(const ValueType &kk)
vector space division by scalar
Definition: densevector.hh:493
derived_type & operator-=(const DenseVector< Other > &y)
vector space subtraction
Definition: densevector.hh:389
size_type dim() const
dimension of the vector space
Definition: densevector.hh:649
FieldTraits< value_type >::real_type infinity_norm_real() const
simplified infinity norm (uses Manhattan norm for complex values)
Definition: densevector.hh:625
derived_type & operator=(const value_type &k)
Assignment operator for scalar.
Definition: densevector.hh:275
PromotionTraits< field_type, typenameDenseVector< Other >::field_type >::PromotedType operator*(const DenseVector< Other > &y) const
indefinite vector dot product which corresponds to Petsc's VecTDot
Definition: densevector.hh:539
Traits::size_type size_type
The type used for the index access and size operation.
Definition: densevector.hh:265
derived_type operator-(const DenseVector< Other > &b) const
Binary vector subtraction.
Definition: densevector.hh:407
DenseIterator< DenseVector, value_type > Iterator
Iterator class for sequential access.
Definition: densevector.hh:302
@ blocklevel
The number of block levels we contain.
Definition: densevector.hh:270
bool operator==(const DenseVector< Other > &y) const
Binary vector comparison.
Definition: densevector.hh:503
FieldTraits< value_type >::real_type infinity_norm() const
infinity norm (maximum of absolute values of entries)
Definition: densevector.hh:607
std::enable_if< std::is_convertible< ValueType, value_type >::value, derived_type >::type & operator*=(const ValueType &kk)
vector space multiplication with scalar
Definition: densevector.hh:471
derived_type & operator+=(const DenseVector< Other > &y)
vector space addition
Definition: densevector.hh:379
ConstIterator begin() const
begin ConstIterator
Definition: densevector.hh:344
Traits::value_type block_type
export the type representing the components
Definition: densevector.hh:262
value_type & operator[](size_type i)
random access
Definition: densevector.hh:285
Traits::value_type field_type
export the type representing the field
Definition: densevector.hh:259
bool operator!=(const DenseVector< Other > &y) const
Binary vector incomparison.
Definition: densevector.hh:515
FieldTraits< value_type >::real_type one_norm_real() const
simplified one norm (uses Manhattan norm for complex values)
Definition: densevector.hh:580
Iterator find(size_type i)
return iterator to given element or end()
Definition: densevector.hh:333
FieldTraits< value_type >::real_type one_norm() const
one norm (sum over absolute values of entries)
Definition: densevector.hh:570
size_type N() const
number of blocks in the vector (are of size 1 here)
Definition: densevector.hh:643
Base class for stl conformant forward iterators.
Definition: iteratorfacades.hh:430
Provides the functions dot(a,b) := and dotT(a,b) := .
Type traits to determine the type of reals (when working with complex numbers)
Implements a generic iterator class for writing stl conformant iterators.
std::ostream & operator<<(std::ostream &s, const array< T, N > &e)
Output operator for array.
Definition: array.hh:26
enable_if<!IsVector< A >::value &&!is_same< typenameFieldTraits< A >::field_type, typenameFieldTraits< A >::real_type >::value, typenamePromotionTraits< A, B >::PromotedType >::type dot(const A &a, const B &b)
computes the dot product for fundamental data types according to Petsc's VectDot function: dot(a,...
Definition: dotproduct.hh:44
Documentation of the traits classes you need to write for each implementation of DenseVector or Dense...
Provides some promotion traits.
get the 'mutable' version of a reference to a const object
Definition: genericiterator.hh:114
|
Legal Statements / Impressum |
Hosted by TU Dresden |
generated with Hugo v0.111.3
(Dec 22, 23:30, 2024)