Rheolef  7.1
an efficient C++ finite element environment
P1qd.h
Go to the documentation of this file.
1 // file automatically generated by "../../../rheolef/fem/lib/basis_symbolic_cxx.cc"
22 #ifndef _RHEOLEF_P1qd_H
23 #define _RHEOLEF_P1qd_H
24 #include "rheolef/basis.h"
25 #include "rheolef/tensor.h"
26 namespace rheolef {
27 
28 template<class T>
29 class basis_P1qd: public basis_rep<T> {
30 public:
31  typedef basis_rep<T> base;
32  typedef typename base::size_type size_type;
33  basis_P1qd();
34  ~basis_P1qd();
35  std::string name() const { return family_name(); }
36  bool have_index_parameter() const { return false; }
37  std::string family_name() const { return "P1qd"; }
38  size_type degree() const;
39  bool is_nodal() const { return true; }
40  void evaluate (
41  reference_element hat_K,
42  const point_basic<T>& hat_x,
43  Eigen::Matrix<T,Eigen::Dynamic,1>& values) const;
44  void grad_evaluate (
45  reference_element hat_K,
46  const point_basic<T>& hat_x,
47  Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>& values) const;
48  void _compute_dofs (
49  reference_element hat_K,
50  const Eigen::Matrix<T,Eigen::Dynamic,1>& f_xnod,
51  Eigen::Matrix<T,Eigen::Dynamic,1>& dof) const;
52  void _initialize_cstor_sizes() const;
53  void _initialize_data (reference_element hat_K) const;
54  const Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>& hat_node(reference_element hat_K) const {
56  return _hat_node [hat_K.variant()]; }
57  mutable std::array<
58  Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>,
60 };
61 } // namespace rheolef
62 #endif // _RHEOLEF_P1qd_H
63 
field::size_type size_type
Definition: branch.cc:425
basis_rep< T > base
Definition: P1qd.h:31
std::string name() const
Definition: P1qd.h:35
std::array< Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 >, reference_element::max_variant > _hat_node
Definition: P1qd.h:59
base::size_type size_type
Definition: P1qd.h:32
void _initialize_cstor_sizes() const
Definition: P1qd.cc:188
const Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 > & hat_node(reference_element hat_K) const
Definition: P1qd.h:54
void _compute_dofs(reference_element hat_K, const Eigen::Matrix< T, Eigen::Dynamic, 1 > &f_xnod, Eigen::Matrix< T, Eigen::Dynamic, 1 > &dof) const
Definition: P1qd.cc:179
bool is_nodal() const
Definition: P1qd.h:39
void evaluate(reference_element hat_K, const point_basic< T > &hat_x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &values) const
Definition: P1qd.cc:141
std::string family_name() const
Definition: P1qd.h:37
bool have_index_parameter() const
Definition: P1qd.h:36
size_type degree() const
Definition: P1qd.cc:135
void grad_evaluate(reference_element hat_K, const point_basic< T > &hat_x, Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 > &values) const
Definition: P1qd.cc:160
void _initialize_data(reference_element hat_K) const
Definition: P1qd.cc:194
reference_element::size_type size_type
Definition: basis.h:214
void _initialize_data_guard(reference_element hat_K) const
Definition: basis_rep.cc:126
see the reference_element page for the full documentation
static const variant_type max_variant
variant_type variant() const
This file is part of Rheolef.