Tabulation Project basix
Functions
basix::dofperms Namespace Reference

Functions

Eigen::ArrayXi interval_reflection (int degree)
 
Eigen::ArrayXi triangle_reflection (int degree)
 
Eigen::ArrayXi triangle_rotation (int degree)
 
Eigen::ArrayXi quadrilateral_reflection (int degree)
 
Eigen::ArrayXi quadrilateral_rotation (int degree)
 
Eigen::ArrayXXd interval_reflection_tangent_directions (int degree)
 
Eigen::ArrayXXd triangle_reflection_tangent_directions (int degree)
 
Eigen::ArrayXXd triangle_rotation_tangent_directions (int degree)
 
Eigen::MatrixXd triangle_rt_reflection (int degree)
 
Eigen::MatrixXd triangle_rt_rotation (int degree)
 

Detailed Description

Functions to help with the creation of DOF permutation and direction correction.

Function Documentation

◆ interval_reflection()

Eigen::ArrayXi basix::dofperms::interval_reflection ( int  degree)

Reflect the DOFs on an interval

Parameters
degreeThe number of DOFs on the interval
Returns
A reordering of the numbers 0 to degree-1 representing the permutation

◆ interval_reflection_tangent_directions()

Eigen::ArrayXXd basix::dofperms::interval_reflection_tangent_directions ( int  degree)

Generate a matrix to correct the direction of tangent vector-values DOFs on an interval when that interval is reflected

Parameters
degreeThe number of DOFs on the interval
Returns
A matrix representing the effect of reversing the edge on the DOF values

◆ quadrilateral_reflection()

Eigen::ArrayXi basix::dofperms::quadrilateral_reflection ( int  degree)

Reflect the DOFs on a quadrilateral

Parameters
degreeThe number of DOFs along one side of the quadrilateral
Returns
A reordering of the numbers 0 to degree*degree-1 representing the permutation

◆ quadrilateral_rotation()

Eigen::ArrayXi basix::dofperms::quadrilateral_rotation ( int  degree)

Rotate the DOFs on a quadrilateral

Parameters
degreeThe number of DOFs along one side of the quadrilateral
Returns
A reordering of the numbers 0 to degree*degree-1 representing the permutation

◆ triangle_reflection()

Eigen::ArrayXi basix::dofperms::triangle_reflection ( int  degree)

Reflect the DOFs on a triangle

Parameters
degreeThe number of DOFs along one side of the triangle
Returns
A reordering of the numbers 0 to (degree)*(degree+1)/2-1 representing the permutation

◆ triangle_reflection_tangent_directions()

Eigen::ArrayXXd basix::dofperms::triangle_reflection_tangent_directions ( int  degree)

Generate a matrix to correct the direction of tangent vector-values DOFs on a triangle when that triangle is reflected

Parameters
degreeThe number of DOFs along one side of the triangle
Returns
A matrix representing the effect of reflecting the triangle edge on the DOF values

◆ triangle_rotation()

Eigen::ArrayXi basix::dofperms::triangle_rotation ( int  degree)

Rotate the DOFs on a triangle

Parameters
degreeThe number of DOFs along one side of the triangle
Returns
A reordering of the numbers 0 to (degree)*(degree+1)/2-1 representing the permutation

◆ triangle_rotation_tangent_directions()

Eigen::ArrayXXd basix::dofperms::triangle_rotation_tangent_directions ( int  degree)

Generate a matrix to correct the direction of tangent vector-values DOFs on a triangle when that triangle is rotated

Parameters
degreeThe number of DOFs along one side of the triangle
Returns
A matrix representing the effect of rotating the triangle edge on the DOF values

◆ triangle_rt_reflection()

Eigen::MatrixXd basix::dofperms::triangle_rt_reflection ( int  degree)

Reflect the DOFs of a RT space on a triangle

Parameters
degreeThe degree of the RT space
Returns
A reordering of DOFs of a RT space of the given degree

◆ triangle_rt_rotation()

Eigen::MatrixXd basix::dofperms::triangle_rt_rotation ( int  degree)

Rotate the DOFs of a RT space on a triangle

Parameters
degreeThe number of DOFs along one side of the triangle
Returns
A reordering of DOFs of a RT space of the given degree