1#ifndef GLOBAL_DOF_TABLE_HPP
2#define GLOBAL_DOF_TABLE_HPP
18 class GlobalDOFTable :
public LocalDOFTable {
54 Eigen::VectorXd
restrictEdge(
size_t iE,
const Eigen::VectorXd & vh)
const;
57 Eigen::VectorXd
restrictCell(
size_t iT,
const Eigen::VectorXd & vh)
const;
60 inline Eigen::VectorXd
restrict(
const Edge & E,
const Eigen::VectorXd vh)
const
66 inline Eigen::VectorXd
restrict(
const Cell &
T,
const Eigen::VectorXd vh)
const
76 Eigen::MatrixXd
extendOperator(
const Cell &
T,
const Edge & E,
const Eigen::MatrixXd & opE)
const;
90 m_labelDOF[
i] = label;
100 std::vector<int> m_labelDOF;
Definition discrete-space-descriptor.hpp:43
Eigen::VectorXd restrict(const Edge &E, const Eigen::VectorXd vh) const
Restrict to an edge.
Definition global-dof-table.hpp:60
size_t globalOffset(const Edge &E) const
Return the global offset for the unknowns on the edge E.
Definition global-dof-table.hpp:35
void setLabelDOF(const size_t i, const int label)
Set a label to the DOF number i (default label is -1)
Definition global-dof-table.hpp:88
Eigen::VectorXd restrict(const Cell &T, const Eigen::VectorXd vh) const
Restrict to a cell.
Definition global-dof-table.hpp:66
Eigen::VectorXd restrictEdge(size_t iE, const Eigen::VectorXd &vh) const
Restrict to the edge (including its vertices) of index iE.
size_t globalOffset(const Vertex &V) const
Return the global offset for the unknowns on the vertex V.
Definition global-dof-table.hpp:28
std::vector< size_t > globalDOFIndices(const Cell &T) const
int getLabelDOF(const size_t i)
Get label of DOF number i.
Definition global-dof-table.hpp:94
GlobalDOFTable(const DiscreteSpaceDescriptor &descriptor)
Constructor.
size_t globalOffset(const Cell &T) const
Return the global offset for the unknowns on the cell T.
Definition global-dof-table.hpp:42
Eigen::MatrixXd extendOperator(const Cell &T, const Edge &E, const Eigen::MatrixXd &opE) const
Extend an edge operator to a cell.
Eigen::VectorXd restrictCell(size_t iT, const Eigen::VectorXd &vh) const
Restrict to the cell (including vertices and edges) of index iT.
DiscreteSpaceDescriptor & descriptor()
Definition local-dof-table.hpp:19
size_t m_n_local_vertex_dofs
Definition local-dof-table.hpp:151
const Mesh & mesh() const
Definition local-dof-table.hpp:14
size_t m_n_local_edge_dofs
Definition local-dof-table.hpp:150
size_t m_n_local_cell_dofs
Definition local-dof-table.hpp:149
Compute max and min eigenvalues of all matrices for i
Definition compute_eigs.m:5
Eigen::VectorXd restrictEdge(size_t iE, const Eigen::VectorXd &vh) const
Restrict to the edge (including its vertices) of index iE.
Definition global-dof-table.cpp:24
Eigen::VectorXd restrictCell(size_t iT, const Eigen::VectorXd &vh) const
Restrict to the cell (including vertices and edges) of index iT.
Definition global-dof-table.cpp:45
std::size_t n_vertices() const
number of vertices in the mesh.
Definition Mesh2D.hpp:60
std::size_t n_edges() const
number of edges in the mesh.
Definition Mesh2D.hpp:61
if(strcmp(field, 'real')) % real valued entries T
Definition mmread.m:93
Definition ddr-klplate.hpp:27