8 #ifndef CRVBEZIERSHAPES_H
9 #define CRVBEZIERSHAPES_H
20 void BlendedTriangleGetLocalGradients(
apf::Mesh* m, apf::MeshEntity* e,
21 apf::Vector3 const& xi, apf::NewArray<apf::Vector3>& grads);
22 void BlendedTetGetValues(
apf::Mesh* m, apf::MeshEntity* e,
24 void BlendedTetGetLocalGradients(
apf::Mesh* m, apf::MeshEntity* e,
25 apf::Vector3 const& xi, apf::NewArray<apf::Vector3>& grads);
30 apf::NewArray<double>& values);
35 apf::NewArray<apf::Vector3>& grads);
compile-time (static) matrix
placeholder to set array sizes
const bezierShapeGrads bezierGrads[apf::Mesh::TYPES]
table of shape function gradients
void BlendedTriangleGetValues(apf::Mesh *m, apf::MeshEntity *e, apf::Vector3 const &xi, apf::NewArray< double > &values)
shape blending functions
Interface to a mesh part.
void getBezierTransformationMatrix(int type, int P, mth::Matrix< double > &A, const apf::Vector3 *range)
Get transformation matrix corresponding to a parametric range.
convenience wrapper over apf::Vector<3>
void(* bezierShape)(int P, apf::Vector3 const &xi, apf::NewArray< double > &values)
typedef for table of shape functions
void(* bezierShapeGrads)(int P, apf::Vector3 const &xi, apf::NewArray< apf::Vector3 > &grads)
typedef for table of shape function gradients
const bezierShape bezier[apf::Mesh::TYPES]
table of shape functions