Reference documentation for deal.II version 9.5.0
|
#include <deal.II/lac/affine_constraints.h>
Public Types | |
using | Entries = std::vector< std::pair< size_type, number > > |
Public Member Functions | |
ConstraintLine (const size_type &index=numbers::invalid_dof_index, const Entries &entries={}, const number &inhomogeneity=0.0) | |
template<typename ConstraintLineType > | |
ConstraintLine (const ConstraintLineType &other) | |
template<typename ConstraintLineType > | |
ConstraintLine & | operator= (const ConstraintLineType &other) |
bool | operator< (const ConstraintLine &) const |
bool | operator== (const ConstraintLine &) const |
std::size_t | memory_consumption () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int) |
template<typename number > | |
ConstraintLine (const size_type &index, const typename AffineConstraints< number >::ConstraintLine::Entries &entries, const number &inhomogeneity) | |
template<typename ConstraintLineType > | |
AffineConstraints< number >::ConstraintLine & | operator= (const ConstraintLineType &other) |
Public Attributes | |
size_type | index |
Entries | entries |
number | inhomogeneity |
This class represents one constraint in an AffineConstraints object.
Definition at line 1622 of file affine_constraints.h.
using AffineConstraints< number >::ConstraintLine::Entries = std::vector<std::pair<size_type, number> > |
A data type in which we store the list of entries that make up the homogeneous part of a constraint.
Definition at line 1628 of file affine_constraints.h.
AffineConstraints< number >::ConstraintLine::ConstraintLine | ( | const size_type & | index = numbers::invalid_dof_index , |
const Entries & | entries = {} , |
||
const number & | inhomogeneity = 0.0 |
||
) |
Default constructor.
|
inline |
Copy constructor.
Definition at line 2528 of file affine_constraints.h.
|
inline |
Definition at line 2515 of file affine_constraints.h.
ConstraintLine & AffineConstraints< number >::ConstraintLine::operator= | ( | const ConstraintLineType & | other | ) |
Copy assignment.
bool AffineConstraints< number >::ConstraintLine::operator< | ( | const ConstraintLine & | ) | const |
This operator is a bit weird and unintuitive: it compares the line numbers of two lines. We need this to sort the lines; in fact we could do this using a comparison predicate. However, this way, it is easier, albeit unintuitive since two lines really have no god-given order relation.
bool AffineConstraints< number >::ConstraintLine::operator== | ( | const ConstraintLine & | ) | const |
This operator is likewise weird: it checks whether the line indices of the two operands are equal, irrespective of the fact that the contents of the line may be different.
std::size_t AffineConstraints< number >::ConstraintLine::memory_consumption | ( | ) | const |
Determine an estimate for the memory consumption (in bytes) of this object.
|
inline |
Write and read the data of this object from a stream for the purpose of serialization using the BOOST serialization library.
Definition at line 1703 of file affine_constraints.h.
|
inline |
Definition at line 2544 of file affine_constraints.h.
size_type AffineConstraints< number >::ConstraintLine::index |
Global DoF index of this line. Since only very few lines are stored, we can not assume a specific order and have to store the index explicitly.
Definition at line 1635 of file affine_constraints.h.
Entries AffineConstraints< number >::ConstraintLine::entries |
Row numbers and values of the entries in this line.
For the reason why we use a vector instead of a map and the consequences thereof, the same applies as what is said for AffineConstraints::lines.
Definition at line 1644 of file affine_constraints.h.
number AffineConstraints< number >::ConstraintLine::inhomogeneity |
Value of the inhomogeneity.
Definition at line 1649 of file affine_constraints.h.