NiHu  2.0
plane_element_helper.hpp File Reference

helper functions to compute analytical integrals over plane elements More...

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

template<class elem_t >
void NiHu::plane_element_helper (elem_t const &elem, typename elem_t::x_t const &x0, typename elem_t::scalar_t r[], typename elem_t::scalar_t theta[], typename elem_t::scalar_t alpha[])
 compute angles and radii in a plane element More...
 
template<class matrixDerived , class vectorDerived >
void NiHu::plane_elem_helper_mid (Eigen::DenseBase< matrixDerived > const &coords, Eigen::DenseBase< vectorDerived > const &x0, double ref_distance[], double theta_lim[], double theta0[])
 
template<class V >
Eigen::Matrix< double, 3, 3 > NiHu::plane_elem_transform (Eigen::DenseBase< V > const &v1_in, Eigen::DenseBase< V > const &v2_in)
 Transformation matrix to get planar element parallel to the x-y plane. More...
 

Detailed Description

helper functions to compute analytical integrals over plane elements

Definition in file plane_element_helper.hpp.

Function Documentation

◆ plane_elem_transform()

template<class V >
Eigen::Matrix<double, 3, 3> NiHu::plane_elem_transform ( Eigen::DenseBase< V > const &  v1_in,
Eigen::DenseBase< V > const &  v2_in 
)

Transformation matrix to get planar element parallel to the x-y plane.

Template Parameters
VVector type, must be an Eigen vector
Returns
Transformation matrix of 3x3 type

Using the transformation matrix, the element can be projected such that it becomes parallel with the x-y plane. Note that as there is no translation in the transform, the element will not necessarily be shifted into the z=0 plane.

Todo:
optimize out these instantiations please

Definition at line 111 of file plane_element_helper.hpp.

◆ plane_element_helper()

template<class elem_t >
void NiHu::plane_element_helper ( elem_t const &  elem,
typename elem_t::x_t const &  x0,
typename elem_t::scalar_t  r[],
typename elem_t::scalar_t  theta[],
typename elem_t::scalar_t  alpha[] 
)

compute angles and radii in a plane element

Parameters
[in]elemthe element
[in]x0the reference position
[out]rthe radii from the collocation point
[out]thetathe angles between the radii
[out]alphathe angles between the radii and the sides
Todo:
check if elem_t::num_corners here

Definition at line 40 of file plane_element_helper.hpp.