|
dune-fem 2.12-git
|
Loading...
Searching...
No Matches
tuplediscretefunction/dofvector.hh
Go to the documentation of this file.
41 static_assert( Std::are_all_same< typename DofVectors::FieldType ... >::value, "All blocks need to have the same FieldType." );
200 std::ignore = std::make_tuple( ( std::get< i >( *this ).axpy( a, std::get< i >( other ) ), i ) ... );
228 return DofBlockType( &std::get< i >( *this )[ index / thisBlockSize ][ index % thisBlockSize ] );
233 DofBlockType blockAccess ( std::size_t index, std::integral_constant< std::size_t, sizeof ... ( DofVectors ) > )
239 ConstDofBlockType blockAccess ( std::size_t index, std::integral_constant< std::size_t, i > ) const
244 return ConstDofBlockType( &std::get< i >( *this )[ index / thisBlockSize ][ index % thisBlockSize ] );
249 ConstDofBlockType blockAccess ( std::size_t index, std::integral_constant< std::size_t, sizeof ... ( DofVectors ) > ) const
Indent & operator++()
T * operator->() const
std::ptrdiff_t index() const
#define DUNE_THROW(E,...)
bool operator==(const DiscreteFunctionInterface< ImplX > &x, const DiscreteFunctionInterface< ImplY > &y)
Definition common/discretefunction.hh:1053
bool operator!=(const DiscreteFunctionInterface< ImplX > &x, const DiscreteFunctionInterface< ImplY > &y)
Definition common/discretefunction.hh:1059
STL namespace.
Definition utility.hh:147
Definition defaultblockvectors.hh:27
Definition tuplediscretefunction/dofvector.hh:30
constexpr std::size_t blocks() const
Definition tuplediscretefunction/dofvector.hh:178
const ThisType & operator=(const ThisType &other)
Definition tuplediscretefunction/dofvector.hh:89
void reserve(SizeType size)
Definition tuplediscretefunction/dofvector.hh:175
const ThisType & operator/=(const FieldType &scalar)
Definition tuplediscretefunction/dofvector.hh:132
TupleDofVector(BaseType data)
Definition tuplediscretefunction/dofvector.hh:85
ConstDofBlockType blockAccess(std::size_t index, std::integral_constant< std::size_t, sizeof ...(DofVectors) >) const
Definition tuplediscretefunction/dofvector.hh:249
Iterator IteratorType
Definition tuplediscretefunction/dofvector.hh:47
FieldType value_type
Definition tuplediscretefunction/dofvector.hh:51
const ThisType & operator-=(const ThisType &other)
Definition tuplediscretefunction/dofvector.hh:101
DofBlockRef DofBlockType
Definition tuplediscretefunction/dofvector.hh:74
SizeType size_type
Definition tuplediscretefunction/dofvector.hh:52
ConstDofBlockType blockAccess(std::size_t index, std::integral_constant< std::size_t, i >) const
Definition tuplediscretefunction/dofvector.hh:239
DofBlockType blockAccess(std::size_t index, std::integral_constant< std::size_t, sizeof ...(DofVectors) >)
Definition tuplediscretefunction/dofvector.hh:233
FieldType operator*(const ThisType &other) const
Definition tuplediscretefunction/dofvector.hh:118
Fem::Envelope< ConstDofBlockType > ConstDofBlockPtrType
Definition tuplediscretefunction/dofvector.hh:78
const ThisType & operator+=(const ThisType &other)
Definition tuplediscretefunction/dofvector.hh:95
ConstIterator ConstIteratorType
Definition tuplediscretefunction/dofvector.hh:48
DofBlockPtrType blockPtr(std::size_t index)
Definition tuplediscretefunction/dofvector.hh:164
static const int blockSize
Definition tuplediscretefunction/dofvector.hh:54
void scale(FieldType scale, std::index_sequence< i ... >)
Definition tuplediscretefunction/dofvector.hh:192
ConstIteratorType begin() const
Definition tuplediscretefunction/dofvector.hh:150
void assign(const ThisType &other, std::index_sequence< i ... >)
Definition tuplediscretefunction/dofvector.hh:204
DofBlockType operator[](std::size_t index)
Definition tuplediscretefunction/dofvector.hh:155
Fem::Envelope< DofBlockType > DofBlockPtrType
Definition tuplediscretefunction/dofvector.hh:77
std::tuple_element< 0, DofVectorTuple >::type::FieldType FieldType
Definition tuplediscretefunction/dofvector.hh:42
SizeType size(std::index_sequence< i ... >) const
Definition tuplediscretefunction/dofvector.hh:210
std::tuple_element< i, DofVectorTuple >::type & subDofVector()
Definition tuplediscretefunction/dofvector.hh:186
SizeType size() const
Definition tuplediscretefunction/dofvector.hh:145
ConstIteratorType end() const
Definition tuplediscretefunction/dofvector.hh:153
TupleDofVector(DofVectors &... dofVectors)
Definition tuplediscretefunction/dofvector.hh:80
std::size_t SizeType
Definition tuplediscretefunction/dofvector.hh:50
TupleDofVector(const ThisType &)=default
const std::tuple_element< i, DofVectorTuple >::type & subDofVector() const
Definition tuplediscretefunction/dofvector.hh:182
ConstDofBlockPtrType blockPtr(std::size_t index) const
Definition tuplediscretefunction/dofvector.hh:168
void resize(SizeType size)
Definition tuplediscretefunction/dofvector.hh:176
void axpy(const FieldType &scalar, const ThisType &other)
Definition tuplediscretefunction/dofvector.hh:138
IteratorType begin()
Definition tuplediscretefunction/dofvector.hh:149
const ThisType & operator*=(const FieldType &scalar)
Definition tuplediscretefunction/dofvector.hh:126
TupleDofVector(ThisType &&)=default
void axpy(FieldType a, const ThisType &other, std::index_sequence< i ... >)
Definition tuplediscretefunction/dofvector.hh:198
DofBlockType blockAccess(std::size_t index, std::integral_constant< std::size_t, i >)
Definition tuplediscretefunction/dofvector.hh:223
void clear(std::index_sequence< I ... >)
Definition tuplediscretefunction/dofvector.hh:217
ConstDofBlockRef ConstDofBlockType
Definition tuplediscretefunction/dofvector.hh:75
Definition tuplediscretefunction/dofvector.hh:57
FieldType * ptr_
Definition tuplediscretefunction/dofvector.hh:58
DofBlockRef(FieldType *p=nullptr)
Definition tuplediscretefunction/dofvector.hh:59
FieldType & operator[](std::size_t i) const
Definition tuplediscretefunction/dofvector.hh:60
FieldType * operator->() const
Definition tuplediscretefunction/dofvector.hh:62
Definition tuplediscretefunction/dofvector.hh:66
ConstDofBlockRef(const FieldType *p=nullptr)
Definition tuplediscretefunction/dofvector.hh:68
const FieldType * operator->() const
Definition tuplediscretefunction/dofvector.hh:71
const FieldType & operator[](std::size_t i) const
Definition tuplediscretefunction/dofvector.hh:69
const FieldType * ptr_
Definition tuplediscretefunction/dofvector.hh:67
Definition tuplediscretefunction/dofvector.hh:260
std::size_t iterator_
Definition tuplediscretefunction/dofvector.hh:283
TupleDofVector< DofVectors ... > & container_
Definition tuplediscretefunction/dofvector.hh:282
Iterator(const Iterator &)=default
Iterator(TupleDofVector< DofVectors ... > &container, std::size_t it=0)
Definition tuplediscretefunction/dofvector.hh:261
Definition tuplediscretefunction/dofvector.hh:289
ConstIterator(const ConstIterator &)=default
std::size_t iterator_
Definition tuplediscretefunction/dofvector.hh:311
const TupleDofVector< DofVectors ... > & container_
Definition tuplediscretefunction/dofvector.hh:310
ConstIterator(const TupleDofVector< DofVectors ... > &container, std::size_t it=0)
Definition tuplediscretefunction/dofvector.hh:290
Definition envelope.hh:11
T forward(T... args)
T make_tuple(T... args)
Legal Statements / Impressum | Hosted by TU Dresden & Uni Heidelberg | Generated by
1.9.8