P1.h
Go to the documentation of this file.
// file automatically generated by "../../../rheolef/fem/lib/basis_symbolic_cxx.cc"
#ifndef _RHEOLEF_P1_H
#define _RHEOLEF_P1_H
#include "rheolef/basis.h"
#include "rheolef/tensor.h"
#include "Pk_get_local_idof_on_side.icc"
#include "basis_fem_Pk_lagrange.h"
namespace rheolef {
template<class T>
class basis_P1: public basis_rep<T> {
public:
typedef basis_rep<T> base;
typedef typename base::size_type size_type;
basis_P1 (const basis_option& sopt);
~basis_P1();
bool have_index_parameter() const { return true; }
std::string family_name() const { return "P"; }
void local_idof_on_side (
reference_element hat_K,
const side_information_type& sid,
Eigen::Matrix<size_type,Eigen::Dynamic,1>& loc_idof) const
{
details::Pk_get_local_idof_on_side (hat_K, sid, degree(), loc_idof);
}
size_type degree() const;
bool is_nodal() const { return true; }
void evaluate (
reference_element hat_K,
const point_basic<T>& hat_x,
Eigen::Matrix<T,Eigen::Dynamic,1>& values) const;
void grad_evaluate (
reference_element hat_K,
const point_basic<T>& hat_x,
Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>& values) const;
void _compute_dofs (
reference_element hat_K,
const Eigen::Matrix<T,Eigen::Dynamic,1>& f_xnod,
Eigen::Matrix<T,Eigen::Dynamic,1>& dof) const;
void _initialize_cstor_sizes() const;
void _initialize_data (reference_element hat_K) const;
const Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>& hat_node(reference_element hat_K) const {
base::_initialize_data_guard(hat_K);
return _hat_node [hat_K.variant()]; }
mutable std::array<
Eigen::Matrix<point_basic<T>,Eigen::Dynamic,1>,
reference_element::max_variant> _hat_node;
};
} // namespace rheolef
#endif // _RHEOLEF_P1_H
Pk_get_local_idof_on_side.icc
basis_fem_Pk_lagrange.h
size_type
field::size_type size_type
Definition: branch.cc:425
rheolef::basis_P1
Definition: P1.h:31
rheolef::basis_P1::base
basis_rep< T > base
Definition: P1.h:33
rheolef::basis_P1::basis_P1
basis_P1(const basis_option &sopt)
Definition: P1.cc:370
rheolef::basis_P1::degree
size_type degree() const
Definition: P1.cc:383
rheolef::basis_P1::_hat_node
std::array< Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 >, reference_element::max_variant > _hat_node
Definition: P1.h:67
rheolef::basis_P1::size_type
base::size_type size_type
Definition: P1.h:34
rheolef::basis_P1::local_idof_on_side
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
rheolef::basis_P1::_initialize_cstor_sizes
void _initialize_cstor_sizes() const
Definition: P1.cc:466
rheolef::basis_P1::hat_node
const Eigen::Matrix< point_basic< T >, Eigen::Dynamic, 1 > & hat_node(reference_element hat_K) const
Definition: P1.h:62
rheolef::basis_P1::_compute_dofs
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
rheolef::basis_P1::is_nodal
bool is_nodal() const
Definition: P1.h:47
rheolef::basis_P1::evaluate
void evaluate(reference_element hat_K, const point_basic< T > &hat_x, Eigen::Matrix< T, Eigen::Dynamic, 1 > &values) const
Definition: P1.cc:389
rheolef::basis_P1::family_name
std::string family_name() const
Definition: P1.h:38
rheolef::basis_P1::~basis_P1
~basis_P1()
Definition: P1.cc:378
rheolef::basis_P1::have_index_parameter
bool have_index_parameter() const
Definition: P1.h:37
rheolef::basis_P1::grad_evaluate
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
rheolef::basis_P1::_initialize_data
void _initialize_data(reference_element hat_K) const
Definition: P1.cc:478
rheolef::basis_option
see the basis_option page for the full documentation
Definition: basis_option.h:93
rheolef::basis_rep
Definition: basis.h:209
rheolef::basis_rep::size_type
reference_element::size_type size_type
Definition: basis.h:214
rheolef::basis_rep::_initialize_data_guard
void _initialize_data_guard(reference_element hat_K) const
Definition: basis_rep.cc:126
rheolef::point_basic
Definition: point.h:87
rheolef::reference_element
see the reference_element page for the full documentation
Definition: reference_element.h:66
rheolef::reference_element::max_variant
static const variant_type max_variant
Definition: reference_element.h:82
rheolef::reference_element::variant
variant_type variant() const
Definition: reference_element.h:99
rheolef
This file is part of Rheolef.
Definition: compiler_eigen.h:37
rheolef::side_information_type
Definition: reference_element_face_transformation.h:37