Reference documentation for deal.II version Git c68cbde08a 2021-01-22 11:50:48 +0100
\(\newcommand{\dealvcentcolon}{\mathrel{\mathop{:}}}\) \(\newcommand{\dealcoloneq}{\dealvcentcolon\mathrel{\mkern-1.2mu}=}\) \(\newcommand{\jump}[1]{\left[\!\left[ #1 \right]\!\right]}\) \(\newcommand{\average}[1]{\left\{\!\left\{ #1 \right\}\!\right\}}\)
Public Types | Public Member Functions | Public Attributes | List of all members
AffineConstraints< number >::ConstraintLine Struct Reference

#include <deal.II/lac/affine_constraints.h>

Public Types

using Entries = std::vector< std::pair< size_type, number > >

Public Member Functions

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)

Public Attributes

size_type index
Entries entries
number inhomogeneity

Detailed Description

template<typename number = double>
struct AffineConstraints< number >::ConstraintLine

This class represents one constraint in an AffineConstraints object.

Definition at line 1571 of file affine_constraints.h.

Member Typedef Documentation

◆ Entries

template<typename number = double>
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 1577 of file affine_constraints.h.

Member Function Documentation

◆ operator<()

template<typename number = double>
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.

◆ operator==()

template<typename number = double>
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.

◆ memory_consumption()

template<typename number = double>
std::size_t AffineConstraints< number >::ConstraintLine::memory_consumption ( ) const

Determine an estimate for the memory consumption (in bytes) of this object.

◆ serialize()

template<typename number = double>
template<class Archive >
void AffineConstraints< number >::ConstraintLine::serialize ( Archive &  ar,
const unsigned  int 

Write and read the data of this object from a stream for the purpose of serialization using the BOOST serialization library.

Definition at line 1632 of file affine_constraints.h.

Member Data Documentation

◆ index

template<typename number = double>
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 1584 of file affine_constraints.h.

◆ entries

template<typename number = double>
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 1593 of file affine_constraints.h.

◆ inhomogeneity

template<typename number = double>
number AffineConstraints< number >::ConstraintLine::inhomogeneity

Value of the inhomogeneity.

Definition at line 1598 of file affine_constraints.h.

The documentation for this struct was generated from the following file: