Reference documentation for deal.II version 9.3.3
\(\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 Member Functions | Public Attributes | List of all members
MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices > Struct Template Reference

#include <deal.II/meshworker/copy_data.h>

Public Member Functions

 CopyData (const unsigned int size)
 
 CopyData (const ndarray< unsigned int, n_matrices, 2 > &matrix_sizes, const std::array< unsigned int, n_vectors > &vector_sizes, const std::array< unsigned int, n_dof_indices > &dof_indices_sizes)
 
 CopyData (const CopyData< n_matrices, n_vectors, n_dof_indices > &other)=default
 

Public Attributes

std::array< FullMatrix< double >, n_matrices > matrices
 
std::array< Vector< double >, n_vectors > vectors
 
std::array< std::vector< types::global_dof_index >, n_dof_indices > local_dof_indices
 

Detailed Description

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
struct MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >

Helper copy data struct.

This class is a good default drop in CopyData object for the WorkStream::run() and MeshWorker::mesh_loop() functions.

It arrays of (local) full matrices, vectors, and local degrees of freedom index vectors, with size determined by the corresponding template argument.

In particular, you can specify the following template arguments

Definition at line 51 of file copy_data.h.

Constructor & Destructor Documentation

◆ CopyData() [1/3]

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >::CopyData ( const unsigned int  size)
explicit

Initialize everything with the same size. This is usually the number of local degrees of freedom.

◆ CopyData() [2/3]

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >::CopyData ( const ndarray< unsigned int, n_matrices, 2 > &  matrix_sizes,
const std::array< unsigned int, n_vectors > &  vector_sizes,
const std::array< unsigned int, n_dof_indices > &  dof_indices_sizes 
)
explicit

For every object, specify the size they should have.

◆ CopyData() [3/3]

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >::CopyData ( const CopyData< n_matrices, n_vectors, n_dof_indices > &  other)
default

Deep copy constructor.

Member Data Documentation

◆ matrices

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
std::array<FullMatrix<double>, n_matrices> MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >::matrices

An array of local matrices.

Definition at line 76 of file copy_data.h.

◆ vectors

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
std::array<Vector<double>, n_vectors> MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >::vectors

An array of local vectors.

Definition at line 81 of file copy_data.h.

◆ local_dof_indices

template<int n_matrices = 1, int n_vectors = n_matrices, int n_dof_indices = n_matrices>
std::array<std::vector<types::global_dof_index>, n_dof_indices> MeshWorker::CopyData< n_matrices, n_vectors, n_dof_indices >::local_dof_indices

An array of local degrees of freedom indices.

Definition at line 87 of file copy_data.h.


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