Generalized T-splines and VMCR T-meshes

# Generalized T-splines and VMCR T-meshes

Cesare Bracco and Durkbin Cho111Corresponding author. E-mail: durkbin@dongguk.edu, Phone: +82 2 2260 3197, Fax: +82 2 2290 1380.

Department of Mathematics “G. Peano”, University of Turin
V. Carlo Alberto 10, Turin 10123, Italy
Department of Mathematics, Dongguk University - Seoul
Pil-dong 3-ga, Jung-gu, Seoul 100-715, Korea
###### Abstract

The paper considers the extension of the T-spline approach to the Generalized B-splines (GB-splines), a relevant class of non-polynomial splines. The Generalized T-splines (GT-splines) are based both on the framework of classical polynomial T-splines and on the Trigonometric GT-splines (TGT-splines), a particular case of GT-splines. Our study of GT-splines introduces a class of T-meshes (named VMCR T-meshes) for which both the corresponding GT-splines and the corresponding polynomial T-splines are linearly independent. A practical characterization can be given for a sub-class of VMCR T-meshes, which we refer to as weakly dual-compatible T-meshes, which properly includes the class of dual-compatible (equivalently, analysis-suitable) T-meshes for an arbitrary (polynomial) order.

Keywords: T-spline, T-mesh, GB-spline, analysis-suitable, dual-compatible, linear independence.

## 1 Introduction

footnotetext: Email addresses: cesare.bracco@unito.it (C. Bracco).

In the last years, the introduction of the so-called T-splines and of the spline spaces defined over T-meshes introduced significant advancements for the use of polynomial spline functions in the CAD and CAGD techniques. The main idea of this approach, in the basic case of surface modelling in , is to free the control points of the surface from the constraint to lie, topologically, on a rectangular grid whose edges intersect only at “cross junctions”, and allow instead partial lines of control points, which leads to the possibility to have “T-junctions”between the edges of the grid. Such a framework gave some important improvements in CAD and CAGD methods: the possibility to locally refine the surfaces, a considerable reduction of the quantity of control points needed, the ability to easily avoid gaps between surfaces to be joined (see, e.g., [19] and [20]), just to name a few. All these advantages became even more important in the applications, such as the isogeometric approach for the analysis problems represented by partial differential equations (see, e.g., [7], [8] and [1]).

The T-spline idea has been applied mainly to polynomial splines, while we know that several types of non-polynomial splines are used for certain applications because of their particular properties. For this reason, recently we proposed a generalization of the T-spline approach to the trigonometric GB-splines (see [3]), a particularly relevant class of non-polynomial splines because of their adaptability and their application to the already mentioned isogeometric analysis (see, e.g., [10] and [12]). Roughly speaking, the GB-splines are a basis of spaces of piecewise functions, locally spanned both by polynomials and by non-polynomial functions, which in the trigonometric case are and , with a given frequency . Note that these splines can be seen as particular cases of the piecewise Extended Chebyshevian splines (see, e.g., [13], [14] and [15]). GB-splines have been successfully used to construct tensor-product surfaces (see, e.g., [12] and references therein) with control points on rectangular grids.

In this paper, we will first extend the results in [3] to any type of GB-splines of arbitrary bi-order , so that we can take full advantage of the good features of GB-splines and T-splines. In order to achieve this goal, we will start by presenting the univariate GB-splines and their properties, including a knot insertion formula with necessary conditions, which will be also essential in the study of the linear independence of the GT-spline functions. Then, we will introduce the GT-splines, whose definition (and notations) is based both on the polynomial T-splines (see, e.g., [4], [5] and [11]) and on the TGT-splines (see [3]). Similarly to the case of TGT-splines [3], we will show that there exists a relation between the GT-splines of bi-order and the polynomial T-splines of the same bi-order. The study of their linear independence will lead us to the introduction of the class of VMCR T-meshes (Void Matrix after Column Reduction T-meshes), which guarantee the linear independence of the associated GT-spline and T-spline blending functions of the same bi-order. The basic concept behind VMCR T-meshes involves the idea of column reduction (used in [11]), and implicitly helped to show in [3] that in the case of bi-order the well-known analysis-suitable T-meshes are also VMCR T-meshes. In this paper we provide a simple characterization of a sub-class of VMCR T-meshes, which we refer to as weakly dual-compatible T-meshes: we will prove that such class strictly includes the one of dual-compatible/analysis-suitable T-meshes (see, e.g., [5] and [11]) for any bi-order . Finally, we will present an explicit example of weakly dual-compatible T-meshes which is not dual-compatible/analysis-suitable.

The paper is organized as follows. In Section 2 we recall the definition and the basic properties of the univariate GB-splines, and we deal with the conditions needed to get a knot insertion formula. In Section 3, after having recalled the definition of T-mesh, we introduce the GT-splines and we give some properties following directly from their definition. In Section 4 we study the linear independence of the GT-spline blending functions and, more importantly, the classes of VMCR T-meshes and of weakly dual-compatible T-meshes. Finally, Section 5 contains some concluding remarks.

## 2 Univariate generalized B-splines

### 2.1 Definition and main properties

Let , , and let be a non-decreasing knot sequence (knot vector); we associate to two vectors of functions and , where, for , belong to and are such that the space spanned by the derivatives

 Ui(s)=dp−2ui(s)dsp−2,Vi(s)=dp−2vi(s)dsp−2

is a Chebyshev space, that is, any function belonging to it has at most one zero in . Let, for , be the multiplicity of in , that is, the cardinality of the set

 {k:1≤k≤n+p,sk=si}.

Note that if . We assume that , for . We consider the generalized spline space spanned, in each interval , by for and by for . For this space we can define a basis of compactly-supported splines, which are called Generalized B-splines (GB-splines).

The definition of such basis is usually given in a recursive fashion, which we briefly recall (see also [10] and [12]). Since we required that the space spanned by and , denoted by , is a Chebyshev space, it is not restrictive to choose, as generating functions of , two functions and such that

 Ui(si)>0,Ui(si+1)=0,Vi(si)=0,Vi(si+1)>0. (1)

Since is a Chebyshev space, for any and for any . We will call the selected functions and generating functions associated to . Then, following [10], [12], we can define a basis of compactly-supported spline functions for the generalized spline space in the following way: for

 N(2)i(s)=⎧⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪ ⎪⎩Vi(s)Vi(si+1),if si≤s

while, for ,

 N(p)i(s)=∫s−∞(δ(p−1)iN(p−1)i(r)−δ(p−1)i+1N(p−1)i+1(r))dr,i=1,...,n, (3)

where

 δ(p)i=[∫∞−∞N(p)i(r)dr]−1,i=1,...,n. (4)

Moreover, if , we set

 ∫s−∞δ(p)iN(p)i(r)dr={1,s≥si+p,0,s

The GB-splines have essentially the same properties of the classical polynomial splines.

###### Property 2.1.

The GB-splines satisfy the following properties.

1. Continuity: each is times continuously differentiable at the knot , where is the multiplicity of in the knot vector , with .

2. Positivity: for , and , .

3. Local support: if , and , .

4. Partition of unity: for and , .

5. Linear independence: for any are linearly independent.

Therefore, the GB-splines can be used, just like the polynomial B-splines, to define a GB-spline curve:

 C(t)=n∑i=1PiN(p)i(s),s∈[s1,sn+p], (5)

where are the control points corresponding to . Because of the properties of positivity, local support and partition of unity, the control points in (5) play the same role of the control points in the polynomial B-spline curves.

### 2.2 Knot insertion formula

One of the main reasons to introduce the T-spline approach in the construction of spline surfaces is, as already mentioned, the possibility to apply local refinement techniques. Therefore, it is crucial to have a knot insertion formula in the univariate case. In the case of GB-splines, differently from the polynomial case (see Boehm’s seminal work [2]), we need to pay attention to the issue that a knot insertion requires two new additional functions and that the space refined by applying the knot insertion formula must contain the original space. The resulting knot insertion rule is stated below.

###### Theorem 2.2.

Let be a knot vector, the knot vector obtained by inserting a new knot , . Let , and , be the corresponding vectors of functions, where

 ¯uj(s)=uj(s)and¯vj(s)=vj(s)ifj≤i ¯uj(s)=uj−1(s)and¯vj(s)=vj−1(s)ifj>i. (6)

If we denote by and the GB-splines of order , respectively before and after the knot insertion, and by the multiplicity of in , then we obtain

 N(p)j(s)=αj,p¯N(p)j(s)+βj+1,p¯N(p)j+1(s), (7)

with, for ,

 αj,p=⎧⎪ ⎪ ⎪ ⎪ ⎪⎨⎪ ⎪ ⎪ ⎪ ⎪⎩1,j≤i−p,δ(p−1)j¯δ(p−1)jαj,p−1,i−p

and, for ,

 αj,2=⎧⎪ ⎪ ⎪⎨⎪ ⎪ ⎪⎩1,j

where and are the constants defined by (4) for and respectively, and and , and , and are the generating functions associated to , , , respectively, and such that .

Proof. The result can be proved either by generalizing the knot insertion formula found for trigonometric GB-splines [3] or by using the properties of piecewise Extended Chebyshev splines (see [13], [14] and [15]).

Note that knot insertion formulae for a particular case of GB-splines and for slightly different splines can be also found in [23] and [24], respectively.

## 3 Generalized T-splines

In order to define the GT-splines, we need to briefly recall some definitions and notations about the T-meshes, which are the same used for the classical polynomial case (see, e.g., [4] and [5]) and for the TGT-splines in [3].

Let and be two index vectors, where , are equal to or greater than and, for any real number , is the largest integer smaller than or equal to . Analogously, , , and are the associated vectors of functions.

An index T-mesh is a rectangular partition of the index domain such that the vertices have integer coordinates (see Figure 3(a)). In other words, is the collection of all the elements of such partition, which are called cells. Note that, since the elements are rectangular, T-junctions are allowed but L-junctions or I-junctions are not. We call edge any segment, either horizontal or vertical, linking two vertices of the mesh. We denote the set of vertices by and by , and the sets containing only horizontal, only vertical and all the edges respectively. The valence of a vertex is the number of edges such that . Finally, we denote by the union of all the edges and vertices.

We define the active region and frame region (see Figure 3(b)) as

 ARp,q=[1,μ]×[1,ν],

and

 FRp,q= ([−⌊p/2⌋+1,1]∪[μ,μ+⌊p/2⌋])×[−⌊q/2⌋+1,ν+⌊q/2⌋] ∪[−⌊p/2⌋+1,μ+⌊p/2⌋]×([−⌊q/2⌋+1,1]∪[ν,ν+⌊q/2⌋]).
###### Definition 3.1.

A T-mesh is admissible for the bi-order if includes the segments

 {l}×[−⌊q/2⌋+1,ν+⌊q/2⌋] forl=−⌊p/2⌋+1,...,1, andl=μ,...,μ+⌊p/2⌋, [−⌊p/2⌋+1,μ+⌊p/2⌋]×{l} forl=−⌊q/2⌋+1,...,1, andl=ν,...,ν+⌊q/2⌋,

and all vertices belonging to have valence 4. will denote the set of admissible T-meshes for the bi-order .

###### Definition 3.2.

A T-mesh belongs to if, for any couple of vertices both belonging to the boundary of a cell and such that (, resp.), the segment (, resp.) belongs to .

In other words, A T-mesh satisfying the definition 3.2 does not have any “facing”T-junctions. While considering this additional requirement is not necessary now, we will need it later to guarantee the equivalence between analysis-suitable and dual-compatible T-meshes (see [5]).

The so-called anchors, which are basic to the construction of T-splines, are defined as follows.

###### Definition 3.3.

Given T-mesh , the set of anchors is defined in the following way:

• if both and are even, ;

• if is odd and is even, ;

• if is even and is odd, ;

• if both and are odd, .

To each anchor we associate a global horizontal (vertical) index vector () and a local horizontal (vertical) index vector (), which is a subset of (). The construction of these vectors, which depends on the local topology of the T-mesh, is fundamental in the theory of T-splines, and a formal presentation can be found for example in [5].

The T-mesh in parameter space is naturally defined as the partition of the domain obtained by considering the elements of the form

 (si1,si2)×(tj1,tj2)≠∅,

where . Let us introduce the notation

 Σs(Is)={si∈Σs:i∈Is}, Σt(It)={tj∈Σt:j∈It}, Ωsu(Is)={usi∈Ωsu:i∈Is∖{ihp+1}}, Ωtu(It)={utj∈Ωtu:j∈It∖{jkq+1}, Ωsv(Is)={vsi∈Ωsv:i∈Is∖{ihp+1}, Ωtv(It)={vtj∈Ωtv:j∈It∖{jkq+1}.

for any index vectors , . In this way, the global and local index vectors associated to each anchor naturally define corresponding global and local knot and functions vectors.

Then, we define, for each anchor, a bivariate Generalized T-spline (GT-spline):

 NA(s,t)= N[Σs(Isl(A)),Ωsu(Isl(A)),Ωsv(Isl(A))](s) ×N[Σt(Itl(A)),Ωtu(Itl(A)),Ωtv(Itl(A))](t). (8)

where and are the univariate GB-splines in the variables and constructed on the horizontal and vertical local knot and function vectors associated to . Of course, the TGT-splines introduced in [3] are a particular case of the just defined GT-splines, obtained by setting and , where and are frequencies such that and for any .

Several properties holding for the polynomial T-splines are also satisfied by the GT-splines.

###### Property 3.4.

The GT-splines enjoy the following properties, as direct consequence of their definition.

1. Continuity: each blending function , for any , is times continuously differentiable with respect to and times continuously differentiable with respect to at the point , where and are the multiplicities of and in the knot vectors and , respectively.

2. Positivity: for , and , .

3. Local support: if , then , and , .

4. Linear independence for tensor-product case: If is a tensor-product mesh, that is, all the vertices have valence 4, then the corresponding blending functions are linearly independent.

5. Partition of unity for tensor-product case: If is a tensor-product mesh, then the corresponding blending functions form a partition of unity.

We can use the blending functions (8) to construct a spline surface in the same way as in the polynomial case:

 T(s,t)=∑A∈Ap,q(M)TAwANA(s,t)∑A∈Ap,q(M)wANA(s,t), (9)

where are given control points and are the weights.

Note that the constant function may not belong to , and then considering the rational form (9) allows to get the partition of unity property. It can be easily shown that the concepts of standard and semi-standard T-splines (see [19] and [20]) can be extended to this non-polynomial setting; therefore, if we construct standard or semi-standard GT-splines, we can avoid using the rational form, which allows us to combine the features of the T-spline approach and the reproduction properties of the GB-splines.

As in the GB-splines case, the use of GT-splines is particularly relevant to exactly represent certain shapes, which cannot be obtained with classical T-splines. For example, helical-shaped domains such as helicoids, helicoidal springs and screws can be exactly reproduced by trigonometric GT-splines.

Example 1. Let us consider the helicoid section parametrized by

 x(s,t)=scos(ωt) y(s,t)=ssin(ωt) z(s,t)=t,r1≤s≤r2,0≤t≤h.

The helicoid section in Figure 4(a), where , , and , is exactly modeled by using suitable GT-splines of bi-order (4,4), which span a space containing .

Example 2. Let us consider a helicoidal spring parametrized by

 x(s,t)=(R+rcos(ωss))cos(ωtt) y(s,t)=(R+rcos(ωss))sin(ωtt) z(s,t)=rsin(ωss)+t,0≤s≤2π,0≤t≤h,

with . The helicoidal spring in Figure 4(b), where , , , and , is exactly modeled by using suitable GT-splines of bi-order (4,4), which span a space containing .

Such shapes are used for example in boundary layer problems on helical-shaped domains (see, e.g., [16] and [17]), in modeling of dental implants (see, e.g., [6] and [22]) and in finite element methods on helical-spring models (see, e.g., [9] and [21]). Note that using VMCR T-meshes defined in Section 4.2 guarantees the linear independence of the GT-splines and then makes them suitable to numerically solve the above mentioned problems.

## 4 Linear independence of the GT-splines and VMCR T-meshes

### 4.1 GT-splines and tensor-product splines

The linear independence of the T-splines is a key point for at least one of their main applications, that is, isogeometric analysis (see, e.g., [1]). Therefore, the study of linear independence is basic for the theory of the just introduced GT-splines as well, which is the reason why we devote Section 4 to this topic. First we will generalize the results for TGT-splines in [3].

In general, the situation about linear independence of GT-splines may not coincide with the one of the classical polynomial T-splines. For instance, it has been shown that there are examples where the arguments used to prove the linear dependence of the T-splines do not hold in the case of the TGT-splines (see [3]). The linear independence of the GT-splines can be studied by examining the relation between them and the tensor-product spline functions associated to the so-called underlying tensor product mesh. Note that the tensor-product GB-spline functions are linearly independent (see Property 3.4).

###### Definition 4.1.

Given a T-mesh , its underlying tensor-product mesh is the T-mesh with the same index domain of and obtained by adding to vertices and edges such that all the vertices have valence and the knot and functions vectors , , , , and are unvaried.

Then, we can get the underlying tensor-product mesh of a T-mesh by adding edges. Therefore, there is a linear relation between the two sets of GT-splines associated to and , since adding the edges needed to get from corresponds to inserting knots belonging to ( respectively) in the global knot vectors ( respectively) and the corresponding elements in the vectors of functions and ( and respectively) for , which can be handled by using the knot insertion formula. Then these knot insertions must satisfy the requirements of Theorem 2.2. More precisely, condition (6) must be satisfied when we insert new functions belonging to and ( and respectively), in the global function vectors and ( and respectively) of an anchor . By repeatedly applying the knot insertion formula (7), we get a relation of type

 NA(s,t)=∑B∈Ap,q(^M)cA,B^NB(s,t),A∈Ap,q(M), (10)

where and are the sets of GT-splines associated to and , respectively. If we denote the sets of the anchors of and by and , (10) can be also written in the matrix form

 N=C^N, (11)

where , , and is an matrix , whose elements are obtained by re-labeling the coefficients in (10). The linear independence of the GT-spline blending functions is equivalent to being a full-rank matrix.

###### Theorem 4.2.

A necessary and sufficient condition for the GT-spline blending functions to be linearly independent is that is full rank.

Proof. See the analogous Theorem in [3].

Given the same T-mesh , the same knot vectors and , and as a consequence the same anchors and the same global and local knot vectors, we denote by the polynomial T-spline blending functions of bi-degree , and by the tensor-product B-spline functions associated to the underlying tensor-product mesh . We can obtain also in this case, by repeatedly applying Boehm’s knot insertion formula for the polynomial splines (see, e.g., [2]), the relation

 P=D^P, (12)

where , and is an matrix.

###### Theorem 4.3.

A necessary and sufficient condition for the T-spline blending functions to be linearly independent is that is full rank.

Proof. See, e.g., [11].

In the nonpolynomial and the polynomial cases, the linear independence of the respective blending functions is equivalent to the respective matrices and being full rank. We will prove that there is a strong connection between the two matrices. Since the elements of the two matrices and are obtained by a repeated application of the respective knot insertion formulae, we need to understand the relation between their knot insertion formulae, stated in the following Lemma.

###### Lemma 4.4.

Let be given a knot vector and another knot vector obtained by inserting a new knot between and . Moreover, let , and , be their respective vectors of functions, where and if or and if . Consider, for any order , the knot insertion formulas for the univariate GB-splines and for the univariate polynomial B-splines

 Nj(s)=αj,p¯Nj(s)+βj+1,p¯Nj+1(s),j=1,...,n, Pj(s)=γj,p¯Pj(s)+ηj+1,p¯Pj+1(s),j=1,...,n,

where by and we denote the GB-splines and the B-splines obtained after the knot insertion, and the coefficients are obtained by using, respectively, (7) and the classical knot insertion formula (see, e.g., [2]). Then, for , we have

 αj,p,βj,p,γj,p,ηj,p≥0, αj,p=0⟺γj,p=0,βj,p=0⟺ηj,p=0. (13)

Proof. The result, analogously to the trigonometric case considered in [3], follows from the analysis of the expressions of , .

This Lemma allows us to establish a connection between the matrices and . Combining Lemma 4.4 with the same arguments in the proof of Corollary 4.6 in [3], we prove below that the sparsity pattern of the two matrices coincide.

###### Theorem 4.5.

Let , and let and be the sets of the GT-spline blending functions and of the T-spline blending functions associated to , respectively. Moreover, let and be the sets of the GT-spline blending functions and of the T-spline blending functions associated to the underlying tensor-product mesh . If we denote by and the matrices expressing the relation between the functions and , and between and