We consider a D-NURBS curve arc or surface patch defined by consecutive knots in the parametric domain to be a type of finite element. We define an element data structure which contains the geometric specification of the D-NURBS element along with its physical properties. A complete D-NURBS curve or surface is then implemented as a data structure which consists of an ordered array of D-NURBS curve or surface elements with additional information.

The element structure includes pointers to the associated generalized coordinates (control points and weights). For instance, 9 control points and associated weights are needed to describe a patch of a quadratic D-NURBS surface (the total number of degrees of freedom is 36). The generalized coordinates associated with the entire D-NURBS curve or surface are stored in the global vector . Note that neighboring elements will share some generalized coordinates. The shared variables will have multiple pointers impinging on them.

We also allocate in each D-NURBS element an elemental mass, damping, and stiffness matrix, and include in the element data structure the quantities needed to compute these matrices. These quantities include the mass , damping , and elasticity , density functions, which may be represented as analytic functions or as parametric arrays of sample values.

Demetri Terzopoulos |