|
NiHu
2.0
|
The geometrical element representation. More...
#include <element.hpp>
Public Types | |
| enum | { id = element_traits::id<Derived>::value, num_nodes = lset_t::num_nodes } |
| typedef Derived | type |
| self-returning metafunction | |
| typedef element_traits::space_type< Derived >::type | space_t |
| the element space type | |
| typedef element_traits::lset< Derived >::type | lset_t |
| the element's L-set | |
| typedef space_t::scalar_t | scalar_t |
| the element's scalar variable | |
| typedef lset_t::domain_t | domain_t |
| the element's reference domain | |
| typedef domain_t::xi_t | xi_t |
| type of the shape functions' independent variable \(\xi\) | |
| typedef element_traits::location_value_type< Derived, 0 >::type | x_t |
| type of the element's physical location variable \( x \) | |
| typedef element_traits::location_return_type< Derived, 0 >::type | x_return_type |
| return type of the element physical location variable when obtained by get_x | |
| typedef element_traits::location_value_type< Derived, 1 >::type | dx_t |
| type of the gradient of the element's physical location variable \( x'_{\xi} \) | |
| typedef element_traits::location_return_type< Derived, 1 >::type | dx_return_type |
| return type of the element physical location derivative | |
| typedef element_traits::location_value_type< Derived, 2 >::type | ddx_t |
| type of the second derivative of the element's physical location variable \( x''_{\xi} \) | |
| typedef element_traits::location_return_type< Derived, 2 >::type | ddx_return_type |
| return type of the element physical location second derivative | |
| typedef Eigen::Matrix< unsigned, num_nodes, 1 > | nodes_t |
| vector type that stores the element's corner node indices | |
| typedef element_traits::coords_type< Derived >::type | coords_t |
| matrix type that stores the element's corner nodes \(x_i\) | |
| typedef elem_id_t | id_t |
| type that stores the element's id | |
Public Member Functions | |
| NIHU_CRTP_HELPERS | element_base () |
| default constructor for std::vector container | |
| element_base (coords_t const &coords, unsigned id=0, nodes_t const &nodes=nodes_t()) | |
| constructor More... | |
| const id_t & | get_id (void) const |
| return elem id More... | |
| const nodes_t & | get_nodes (void) const |
| return nodes More... | |
| const coords_t & | get_coords (void) const |
| return coordinates More... | |
| x_return_type | get_x (xi_t const &xi) const |
| return element location More... | |
| dx_return_type | get_dx (xi_t const &xi) const |
| return element location gradient More... | |
| ddx_return_type | get_ddx (xi_t const &xi) const |
| return element location second derivative matrix More... | |
| const x_t & | get_center (void) const |
| return element center More... | |
| const scalar_t & | get_linear_size_estimate (void) const |
| return linear size estimate More... | |
| template<class OtherElem > | |
| element_overlapping | get_overlapping (OtherElem const &other) const |
| check overlapping state with other element More... | |
| Derived | get_linearized_elem (xi_t const &xi0) const |
| construct linearized elem around an intrinsic coordinate More... | |
Protected Attributes | |
| id_t | m_id |
| the element's identifier | |
| nodes_t | m_nodes |
| the element's nodal indices in the mesh | |
| coords_t | m_coords |
| the element's corner coordinates \(x_i\) | |
| x_t | m_center |
| the element's center | |
| scalar_t | m_linear_size_estimate |
| estimated linear size of an element | |
| element_traits::location_factory_functor< Derived, 0 >::type | x_computer |
| functor computing the locations | |
| element_traits::location_factory_functor< Derived, 1 >::type | dx_computer |
| functor computing the location derivative vector | |
| element_traits::location_factory_functor< Derived, 2 >::type | ddx_computer |
| functor computing the location second derivative matrix | |
The geometrical element representation.
| Derived | CRTP derived class |
Definition at line 194 of file element.hpp.
| anonymous enum |
| Enumerator | |
|---|---|
| id | the element id |
| num_nodes | the number of nodes |
Definition at line 212 of file element.hpp.
|
inline |
constructor
| [in] | id | the elem id |
| [in] | nodes | the elem node indices |
| [in] | coords | the elem coordinates |
Definition at line 270 of file element.hpp.
|
inline |
return element center
Definition at line 353 of file element.hpp.
|
inline |
|
inline |
return element location second derivative matrix
| [in] | xi | location \( \xi \) in the base domain |
Definition at line 344 of file element.hpp.
|
inline |
return element location gradient
| [in] | xi | location \(\xi\) in the base domain |
Definition at line 334 of file element.hpp.
|
inline |
|
inline |
|
inline |
construct linearized elem around an intrinsic coordinate
| [in] | xi0 | reference point |
Definition at line 416 of file element.hpp.
|
inline |
|
inline |
check overlapping state with other element
| OtherElem | type of the other element |
| [in] | other | reference to the other element |
Definition at line 374 of file element.hpp.
|
inline |