Rheolef  7.2
an efficient C++ finite element environment
 
Loading...
Searching...
No Matches
P1.h
Go to the documentation of this file.
1// file automatically generated by "../../../rheolef/fem/lib/basis_symbolic_cxx.cc"
22#ifndef _RHEOLEF_P1_H
23#define _RHEOLEF_P1_H
24#include "rheolef/basis.h"
25#include "rheolef/tensor.h"
28namespace rheolef {
29
30template<class T>
31class basis_P1: public basis_rep<T> {
32public:
34 typedef typename base::size_type size_type;
35 basis_P1 (const basis_option& sopt);
36 ~basis_P1();
37 bool have_index_parameter() const { return true; }
38 std::string family_name() const { return "P"; }
42 Eigen::Matrix<size_type,Eigen::Dynamic,1>& loc_idof) const
43 {
44 details::Pk_get_local_idof_on_side (hat_K, sid, degree(), loc_idof);
45 }
46 size_type degree() const;
47 bool is_nodal() const { return true; }
48 void evaluate (
50 const point_basic<T>& hat_x,
51 Eigen::Matrix<T,Eigen::Dynamic,1>& values) const;
52 void grad_evaluate (
54 const point_basic<T>& hat_x,
55 Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>& values) const;
56 void _compute_dofs (
58 const Eigen::Matrix<T,Eigen::Dynamic,1>& f_xnod,
59 Eigen::Matrix<T,Eigen::Dynamic,1>& dof) const;
60 void _initialize_cstor_sizes() const;
61 void _initialize_data (reference_element hat_K) const;
62 const Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>& hat_node(reference_element hat_K) const {
63 base::_initialize_data_guard(hat_K);
64 return _hat_node [hat_K.variant()]; }
65 mutable std::array<
66 Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>,
68};
69} // namespace rheolef
70#endif // _RHEOLEF_P1_H
71
field::size_type size_type
Definition branch.cc:430
basis_rep< T > base
Definition P1.h:33
size_type degree() const
Definition P1.cc:383
std::array< Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 >, reference_element::max_variant > _hat_node
Definition P1.h:67
base::size_type size_type
Definition P1.h:34
void local_idof_on_side(reference_element hat_K, const side_information_type &sid, Eigen::Matrix< size_type, Eigen::Dynamic, 1 > &loc_idof) const
Definition P1.h:39
void _initialize_cstor_sizes() const
Definition P1.cc:466
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 P1.cc:457
const Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 > & hat_node(reference_element hat_K) const
Definition P1.h:62
bool is_nodal() const
Definition P1.h:47
void evaluate(reference_element hat_K, const point_basic< T > &hat_x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &values) const
Definition P1.cc:389
std::string family_name() const
Definition P1.h:38
bool have_index_parameter() const
Definition P1.h:37
void grad_evaluate(reference_element hat_K, const point_basic< T > &hat_x, Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 > &values) const
Definition P1.cc:423
void _initialize_data(reference_element hat_K) const
Definition P1.cc:482
see the basis_option page for the full documentation
reference_element::size_type size_type
Definition basis.h:214
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.