18#ifndef LIBMESH_DOF_MAP_BASE_H
19#define LIBMESH_DOF_MAP_BASE_H
21#include "libmesh/id_types.h"
22#include "libmesh/parallel_object.h"
91 std::vector<dof_id_type> & di,
92 const unsigned int vn,
93 int p_level = -12345)
const = 0;
100 std::vector<dof_id_type> & di,
101 const unsigned int vn)
const = 0;
117 virtual void clear();
119#ifdef LIBMESH_ENABLE_AMR
166#ifdef LIBMESH_ENABLE_AMR
187 libmesh_assert_less(proc,
_first_df.size());
193 libmesh_assert_less(proc,
_end_df.size());
199 libmesh_assert_less(proc,
_first_df.size());
203#ifdef LIBMESH_ENABLE_AMR
This base class provides a minimal set of interfaces for satisfying user requests for.
dof_id_type n_dofs() const
std::size_t compute_dof_info(dof_id_type n_local_dofs)
compute the key degree of freedom information given the local number of degrees of freedom on this pr...
std::vector< dof_id_type > _end_df
Last DOF index (plus 1) on processor p.
dof_id_type n_dofs_on_processor(const processor_id_type proc) const
dof_id_type end_dof() const
std::vector< dof_id_type > _first_df
First DOF index on processor p.
virtual void dof_indices(const Node *const node, std::vector< dof_id_type > &di, const unsigned int vn) const =0
Fills the vector di with the global degree of freedom indices for the node, for one variable vn.
dof_id_type first_old_dof() const
virtual void dof_indices(const Elem *const elem, std::vector< dof_id_type > &di, const unsigned int vn, int p_level=-12345) const =0
Fills the vector di with the global degree of freedom indices for the element.
dof_id_type end_old_dof() const
dof_id_type _n_dfs
Total number of degrees of freedom.
dof_id_type _n_old_dfs
Total number of degrees of freedom on old dof objects.
std::vector< dof_id_type > _first_old_df
First old DOF index on processor p.
dof_id_type n_old_dofs() const
dof_id_type first_dof() const
virtual unsigned int n_variables() const =0
dof_id_type n_local_dofs() const
virtual const Variable & variable(const unsigned int c) const =0
std::vector< dof_id_type > _end_old_df
Last old DOF index (plus 1) on processor p.
This is the base class from which all geometric element types are derived.
A Node is like a Point, but with more information.
An object whose state is distributed along a set of processors.
processor_id_type processor_id() const
const Parallel::Communicator & comm() const
This class defines the notion of a variable in the system.
The libMesh namespace provides an interface to certain functionality in the library.
uint8_t processor_id_type