27 mutable const int *
ijk;
virtual void CalcHessian(const IntegrationPoint &ip, DenseMatrix &hessian) const
Evaluate the Hessians of all shape functions of a scalar finite element in reference space at the giv...
virtual void CalcDShape(const IntegrationPoint &ip, DenseMatrix &dshape) const
Evaluate the gradients of all shape functions of a scalar finite element in reference space at the gi...
Array< const KnotVector * > kv
NURBS2DFiniteElement(int px, int py)
Construct the NURBS2DFiniteElement with x-order px and y-order py.
Array< const KnotVector * > & KnotVectors() const
void SetSize(int s)
Resize the vector to size s.
int dim
Dimension of reference space.
virtual void CalcShape(const IntegrationPoint &ip, Vector &shape) const
Evaluate the values of all shape functions of a scalar finite element in reference space at the given...
Data type dense matrix using column-major storage.
An arbitrary order and dimension NURBS element.
virtual void CalcDShape(const IntegrationPoint &ip, DenseMatrix &dshape) const
Evaluate the gradients of all shape functions of a scalar finite element in reference space at the gi...
virtual void SetOrder() const
Update the NURBSFiniteElement according to the currently set knot vectors.
NURBS3DFiniteElement(int px, int py, int pz)
NURBS1DFiniteElement(int p)
Construct the NURBS1DFiniteElement of order p.
Class for finite elements with basis functions that return scalar values.
void SetIJK(const int *IJK) const
void SetPatch(int p) const
virtual void CalcShape(const IntegrationPoint &ip, Vector &shape) const
Evaluate the values of all shape functions of a scalar finite element in reference space at the given...
int orders[Geometry::MaxDim]
Anisotropic orders.
NURBSFiniteElement(int D, Geometry::Type G, int Do, int O, int F)
Construct NURBSFiniteElement with given.
void SetElement(int e) const
virtual void CalcDShape(const IntegrationPoint &ip, DenseMatrix &dshape) const
Evaluate the gradients of all shape functions of a scalar finite element in reference space at the gi...
double p(const Vector &x, double t)
virtual void SetOrder() const
Update the NURBSFiniteElement according to the currently set knot vectors.
NURBS3DFiniteElement(int p)
Construct the NURBS3DFiniteElement of order p.
Class for integration point with weight.
NURBS2DFiniteElement(int p)
Construct the NURBS2DFiniteElement of order p.
int dof
Number of degrees of freedom.
virtual void SetOrder() const
Update the NURBSFiniteElement according to the currently set knot vectors.
virtual void CalcHessian(const IntegrationPoint &ip, DenseMatrix &hessian) const
Evaluate the Hessians of all shape functions of a scalar finite element in reference space at the giv...
virtual void SetOrder() const
Update the NURBSFiniteElement according to the currently set knot vectors.
Describes the function space on each element.
virtual void CalcShape(const IntegrationPoint &ip, Vector &shape) const
Evaluate the values of all shape functions of a scalar finite element in reference space at the given...
An arbitrary order 3D NURBS element on a cube.
virtual void CalcHessian(const IntegrationPoint &ip, DenseMatrix &hessian) const
Evaluate the Hessians of all shape functions of a scalar finite element in reference space at the giv...
An arbitrary order 1D NURBS element on a segment.
An arbitrary order 2D NURBS element on a square.