Reference documentation for deal.II version 9.2.0
|
#include <deal.II/base/table.h>
Public Types | |
using | size_type = typename TableBase< 1, T >::size_type |
Public Types inherited from TableBase< 1, T > | |
using | value_type = T |
using | size_type = typename AlignedVector< T >::size_type |
Public Member Functions | |
Table ()=default | |
Table (const size_type size) | |
template<typename InputIterator > | |
Table (const size_type size, InputIterator entries, const bool C_style_indexing=true) | |
AlignedVector< T >::const_reference | operator[] (const size_type i) const |
AlignedVector< T >::reference | operator[] (const size_type i) |
AlignedVector< T >::const_reference | operator() (const size_type i) const |
AlignedVector< T >::reference | operator() (const size_type i) |
AlignedVector< T >::reference | operator() (const TableIndices< 1 > &indices) |
AlignedVector< T >::const_reference | operator() (const TableIndices< 1 > &indices) const |
Public Member Functions inherited from TableBase< 1, T > | |
TableBase ()=default | |
TableBase (const TableIndices< N > &sizes) | |
TableBase (const TableIndices< N > &sizes, InputIterator entries, const bool C_style_indexing=true) | |
TableBase (const TableBase< N, T > &src) | |
TableBase (const TableBase< N, T2 > &src) | |
TableBase (TableBase< N, T > &&src) noexcept | |
~TableBase () override=default | |
TableBase< N, T > & | operator= (const TableBase< N, T > &src) |
TableBase< N, T > & | operator= (const TableBase< N, T2 > &src) |
TableBase< N, T > & | operator= (TableBase< N, T > &&src) noexcept |
bool | operator== (const TableBase< N, T > &T2) const |
void | reset_values () |
void | reinit (const TableIndices< N > &new_size, const bool omit_default_initialization=false) |
size_type | size (const unsigned int i) const |
const TableIndices< N > & | size () const |
size_type | n_elements () const |
bool | empty () const |
void | fill (InputIterator entries, const bool C_style_indexing=true) |
void | fill (const T &value) |
AlignedVector< T >::reference | operator() (const TableIndices< N > &indices) |
AlignedVector< T >::const_reference | operator() (const TableIndices< N > &indices) const |
void | swap (TableBase< N, T > &v) |
std::size_t | memory_consumption () const |
void | serialize (Archive &ar, const unsigned int version) |
Public Member Functions inherited from Subscriptor | |
Subscriptor () | |
Subscriptor (const Subscriptor &) | |
Subscriptor (Subscriptor &&) noexcept | |
virtual | ~Subscriptor () |
Subscriptor & | operator= (const Subscriptor &) |
Subscriptor & | operator= (Subscriptor &&) noexcept |
void | subscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
void | unsubscribe (std::atomic< bool > *const validity, const std::string &identifier="") const |
unsigned int | n_subscriptions () const |
template<typename StreamType > | |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int version) |
Additional Inherited Members | |
Static Public Member Functions inherited from Subscriptor | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Protected Member Functions inherited from TableBase< 1, T > | |
size_type | position (const TableIndices< N > &indices) const |
AlignedVector< T >::reference | el (const TableIndices< N > &indices) |
AlignedVector< T >::const_reference | el (const TableIndices< N > &indices) const |
Protected Attributes inherited from TableBase< 1, T > | |
AlignedVector< T > | values |
TableIndices< N > | table_size |
A class representing a one-dimensional table, i.e. a vector-like class. Since the C++ library has a vector class, there is probably not much need for this particular class, but since it is so simple to implement on top of the template base class, we provide it anyway.
For the rationale of this class, and a description of the interface, see the base class.
Default constructor. Set all dimensions to zero.
Constructor. Pass down the given dimension to the base class.
Table< 1, T >::Table | ( | const size_type | size, |
InputIterator | entries, | ||
const bool | C_style_indexing = true |
||
) |
Constructor. Create a table with a given size and initialize it from a set of iterators.
This function is entirely equivalent to creating a table t
of the given size and then calling
on it, using the TableBase::fill() function where the arguments are explained in more detail. The point, however, is that that is only possible if the table can be changed after running the constructor, whereas calling the current constructor allows sizing and initializing an object right away so that it can be marked const.
Using this constructor, you can do things like this:
You can also initialize a table right from a file, using input iterators:
size | The size of this one-dimensional table. |
entries | An iterator to a set of elements from which to initialize this table. It is assumed that iterator can be incremented and dereferenced a sufficient number of times to fill this table. |
C_style_indexing | If true, run over elements of the table with the last index changing fastest as we dereference subsequent elements of the input range. If false, change the first index fastest. |
AlignedVector<T>::const_reference Table< 1, T >::operator[] | ( | const size_type | i | ) | const |
Access operator. Since this is a one-dimensional object, this simply accesses the requested data element. Returns a read-only reference.
AlignedVector<T>::reference Table< 1, T >::operator[] | ( | const size_type | i | ) |
Access operator. Since this is a one-dimensional object, this simply accesses the requested data element. Returns a read-write reference.
AlignedVector<T>::const_reference Table< 1, T >::operator() | ( | const size_type | i | ) | const |
Access operator. Since this is a one-dimensional object, this simply accesses the requested data element. Returns a read-only reference.
AlignedVector<T>::reference Table< 1, T >::operator() | ( | const size_type | i | ) |
Access operator. Since this is a one-dimensional object, this simply accesses the requested data element. Returns a read-write reference.
AlignedVector<T>::reference Table< 1, T >::operator() | ( | const TableIndices< 1 > & | indices | ) |
Make the corresponding operator () from the TableBase base class available also in this class.
AlignedVector<T>::const_reference Table< 1, T >::operator() | ( | const TableIndices< 1 > & | indices | ) | const |
Make the corresponding operator () from the TableBase base class available also in this class.