Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (14.97 MB, 219 trang )

2.4.1 B-spline curves

Performing summation over each univariate B-spline basis function multiplied

with its associated control point, Pi a B-spline curve of order p in d is obtained as

=

C (ξ )

n

N i , p (ξ ) Pi N (ξ ) P,

∑=

T

(2. 1)

i =1

where n is the number of univariate B-spline basis function in ξ direction and the

univariate B-spline basis N i , p (ξ ) is then defined recursively over p starting with

piecewise constants (p = 0) as

1 if ξi ≤ ξ < ξi +1

,

N i ,0 (ξ ) =

otherwise

0

ξ

−ξ

ξ − ξi

=

N i , p (ξ )

N i , p −1 (ξ ) + i + p +1

N

(ξ )

ξi + p − ξi

ξi + p +1 − ξi +1 i +1, p −1

(2. 2)

where it is assumed that whenever the denominator in an arbitrary coefficient term

equals zero, that term is defined to take zero value. Each control point, Pi is

accompanied by its own corresponding basis function which qualifies the influence

of control point to the curve. These are similar to nodal coordinates in FEA in the

sense that they are the corresponding coefficients of the basis functions, but the noninterpolatory nature of the B-splines does not lead to a usual interpretation of the

control point values. Figure 2. 1 illustrates a quartic B-spline curve for a given knot

vector Ξ = {0,0,0,0,0,1 / 3,1 / 3,1 / 3, 2 / 3,1,1,1,1,1} , where the red squares indicate

physical knots (element’s boundaries) and the two end control points are interpolated

as a result of the open knot vector. It can be seen that owing to the multiplicity of four

of the knot 1/3, the curve interpolates one control point, and thus the curve is C 0

continuous at this knot.

18

Figure 2. 1: A quartic B-spline curve

A B-spline curve possesses the following properties:

• If p= n − 1 (i.e., the order of a B-spline curve is equal to the number of control

points minus 1), this B-spline curve reduces to a Bézier curve

• B-spline curve is a piecewise polynomial curve

• Clamped B-spline curve interpolates the two end control points P1 and Pn+1

• Strong convex hull property: an arbitrary B-spline curve is kept inside the

convex hull of its control polygon

• Invariance with respect to affine transformations

• Local modification: modifying the position of Pi affects C (ξ ) only in the

interval ξi , ξi + p +1

)

• C (ξ ) is C p − k continuous at a knot of multiplicity k

Each of these Bézier segments is able to join to another at a desired continuity

with a maximum of C p −1 . This also indicates that an arbitrary curve can be

represented by two different approaches (see Figure 2. 2).

19

Figure 2. 2: The B-spline curve in Figure 2. 1 can be described by three

concatenated Bézier curves. Due to interelement C 0 continuity, this representation

produces more control points than the B-spline one.

2.4.2 B-spline surface

A tensor-product B-spline surface of order (p, q) for an arbitrary patch is

constructed parametrically by a sum over B-spline functions multiplied with the

associated control points as for B-spline curve

n

m

S (ξ ,η ) = ∑∑ N ip, j,q (ξ ,η ) Pi , j ,

(2. 3)

=i 1 =j 1

where m and n are the number of univariate B-spline basis functions in the two

parametric directions, Pi , j is the corresponding control net formed by connecting

m × n control points, and N ip, j,q (ξ ,η ) is the bivariate B-spline basis function defined

as follow:

N ip, j,q (ξ ,η ) = N i , p (ξ ) M j ,q (η ) ,

(2. 4)

Properties of a B-spline surface inherit directly from their univariate counterparts as

the result of its tensor product nature.

2.5 Refinement technique

When B-splines is employed as a basis for geometry description and analysis,

its polynomial bases can be enriched in several ways without causing any change to

the underlying geometry description or the need to interact with the CAD program.

20

The two elementary refinement strategies of B-splines are called knot insertion

and degree elevation which are equivalent to h-refinement (subdivision) and prefinement (order elevation) in FEA, respectively. The combination of these two

gives rise to the so-called hp-refinement in FEA. However, unlike FEA, the order in

which h- and p-refinement are performed in IGA leads to differences in the refined

polynomial basis. That means besides the ability to control element size and

polynomial order of the basis, the continuity of the basis also easily manipulated

which results in a number of different additional degrees of freedom. This entails a

whole new refinement strategy, referred to as k-refinement. In the following subsections, these three refinements are briefly and partially represented for univariate

B-splines. For multivariate B-splines, by taking advantage of tensor product structure

the parameter space, the univariate algorithms can be independently applied to each

parameter direction at a time and likewise for control mesh.

2.5.1 h-refinement

This kind of refinement is equivalent to mesh refinement, that is, the mesh size

h is reduced while the global continuity of the approximation space is kept

unchanged. This technique is accomplished via knot insertion. In contrast to mesh

refinement in FEA which only produces C 0 continuity between element boundaries,

knot insertion provides a much more flexible way to control element size and

continuity between elements. The knot insertion technique is based on the following

relation

=

C (ξ )

n

N i , p (ξ ) Pi

∑=

n+ m

N (ξ ) P

∑=

i, p

=i 1 =i 1

where

Ξ = {ξ1 , ξ 2 , , ξ n+ p +1}

Ξ

and =

ξ

{=

1

i

(2. 5)

C (ξ ) ,

}

ξ1 , ξ 2 , , ξ n+ m+ p=

ξ n+ p +1 are knot

+1

vectors of the original and refined spaces, respectively and m is the number of newly

inserted knots. The knot insertion requires the reevaluations of both basis functions

and corresponding control points. For simplicity, let’s consider the insertion of one

)

single knot ξ into the knot span ξ j , ξ j +1 , where j indicates the position in the knot

21

vector. The n + 1 new basis functions are thus derived from the newly extended knot

vector Ξ and the new control points are computed as a linear combination of the old

ones as [90].

P1

i =1

=

Pi α i Pi + (1 − α i ) Pi −1 1 < i < n + 1,

P

i= n + 1

n

(2. 6)

where

1

ξ − ξi

=

αi

ξi + p − ξi

0

1≤ i ≤ j − p

(2. 7)

j − p +1 ≤ i ≤ j.

i ≥ j +1

Each single knot insertion only required the evaluation of p new control points

and all remaining control points coincide with the old layout. Note that existing knots

can be repeated to control the continuity as well as the support of the B-splines by

simply inserting its values up to the multiplicity of p. The insertion of existing knots

neither affects the polynomial order nor generates new elements. Figure 2. 3

illustrates this process by dividing the second element of the curve into two elements.

The original curve is drawn on the left while the refined one is drawn on the right.

Their associated basis functions are plotted under each curve. The original one is

determined by the knot vector Ξ ={0,0,0,0,0,0.33,0.67,1,1,1,1,1} and the control

polygon P . Inserting a knot ξ = 0.83 produces a new control polygon P which has

an additional control point and consequently an additional basis function. It is clear

that the geometry of the refined curve is the same as the original one, the only change

is the number of control points and associated bases that increased by one.

22

Figure 2. 3: An illustration of h-refinement for a B-spline curve.

2.5.2 p-refinement

This kind of refinement is equivalent to order raising with fixed interelement

regularity. Since a B-spline curve of order p is a piecewise polynomial curve, one can

elevate the degree of all spline segments by t ≥ 1 without changing the curve. Given

the incremental order of elevation t, the p-refinement algorithm aims at finding new

{

}

{ }

knot vector Ξ = ξ 0 , , ξ n+ p +t and new control points Pi such that

C=

(ξ ) C=

(ξ )

n

∑N

i , p +t

i =1

(ξ ) P i ,

(2. 8)

where n is the number of control points of C (ξ ) , and N i , p +t (ξ ) , i = 1, , n are the

B-spline basis functions of order k + m defined on the knot vector Ξ . Knot vector Ξ

and n can be inferred directly by the following procedure, given that

,

, a , ξ1 , , ξ1 , , ξ s , , ξ s , b

,

,

,

b

ξ1 , , ξ m } a

=

Ξ {=

p +1

m1

ms

p +1

(2. 9)

where m1 , , ms are positive integers denoting multiplicities of the internal knots.

Due to the fact that C (ξ ) has smoothness up to C p −mi continuity at the knot ξi , C (ξ )

must preserve the same regularity at this knot value. To satisfy this constraint, every

unique knot in the old knot vector has to be replicated as

23

(2. 10)

=

Ξ {=

,

, a , ξ1 , , ξ1 , , ξ s , , ξ s , b

,

, b ,

ξ1 , , ξ m } a

p +1+ t

m1 + t

ms + t

p +1+t

{ }

where m = m + ( s + 2 ) t and n =n + ( s + 1) t [2]. The new control points Pi of C (ξ )

regarded as a B-spline curve of order p + t can be computed by various algorithms

which can be referred in [91-94]. For the sake of simplicity, in this dissertation, the

algorithm proposed in [92] is utilized. This algorithm consists of three steps: a) to

decompose the B-spline curve into Bézier segments, b) to raise the order of each

segment, c) to rejoin the order-elevated Bézier segments to yield the new B-spline

curve. This process is demonstrated in Figure 2. 4 , where the order of the curve is

increased by one. The original curve is drawn on the left while the refined one is

drawn on the right. Their associated basis functions are plotted under each curve. The

original

quartic

one

is

determined

by

the

knot

vector

Ξ ={0,0,0,0,0,0.33,0.67,1,1,1,1,1} and the control polygon P . Rising the order of

the curve by one resulting a quintic curve with the new knot vector

Ξ ={0,0,0,0,0,0,0.33,0.33,0.67,0.67,1,1,1,1,1,1} and the new control polygon P . It

can be seen that the geometry of the curve is preserved, but each element is now

influenced by one additional control point.

Figure 2. 4: An illustration of p-refinement for a B-spline curve.

24

2.5.3 k-refinement

This refinement strategy is equivalent to applying order elevation to the coarse

mesh firstly, and then knot insertion. Due to knot insertion conducted after order

elevation process, the refined basis achieves both high order and maximum available

continuity, i.e. C p −1 [95]. This type of refinement is a new additional refinement

possibility that cannot be directly compared to classical FEA as h- and p-refinements.

Figure 2. 5: An illustration of k-refinement.

Similar to p-refinement, k-refinement results in an increased number of control

points during the refinement procedure. However, while p-refinement adds too many

degrees of freedom to the whole system, k-refinement, on the other hand, can attain

the same approximation error with significantly fewer degrees of freedom. An

25

illustration of k-refinement is shown in Figure 2. 5. Classical p-refinement compared

to k-refinement. Let’s consider the refinement of one linear element with its bases

shown in the top. On the left is the classical p-refinement procedure where knot

insertion followed by order elevation that produces nine quadratic basis functions

with C 0 continuous at element’s boundaries. On the right is the new k-refinement

approach where order elevation followed by knot insertion that gives rise to five

quadratic basis functions with interelement continuity of C1 . More detailed

discussion on k-refinement can be referred in [95].

2.6 NURBS basis function

The geometry representation in CAD as well as in isogeometric analysis is often

parametrized by Non-Uniform Rational B-splines (NURBS). NURBS in d are

generated from conic projective transformations of B-splines in d +1 . Rational basis

functions have the ability to exactly describe a broad range of objects that cannot be

exactly described by polynomial basis functions such as conic sections [96].

A NURBS curve is obtained by multiplying every control point’s component of

the control mesh Pi with an assigned positive scalar weight wi following by dividing

the Eq. (2. 1) by the weighting function W (ξ ) defined as

(2. 11)

n

W (ξ ) = ∑ N iˆ , p (ξ ) wiˆ ,

iˆ =1

which gives

(2. 12)

n

N i , p (ξ ) Pi wi

∑

i =1

C (ξ ) =

=

W (ξ )

n

∑ R (ξ ) P ,

i

i =1

p

i

where Rip (ξ ) is the univariate piecewise NURBS basis function defined by

Rip (ξ ) =

N i , p (ξ ) wi

W (ξ )

.

(2. 13)

Figure 2. 6 demonstrates two circles that are represented by both NURBS and Bspline in the corresponding solid and dotted curves. Their control points are depicted

26

by black balls with the associated weights also given for the NURBS case. It is clear

that only the NURBS curve is able to represent the circle exactly.

Figure 2. 6: Two representations of the circle. The solid curve is created by

NURBS which describes exactly the circle while the dotted curve is created by Bsplines which is unable to produce an exact circle.

Most properties of B-Splines also hold for NURBS. In case of equal weights

wi = const , ∀i =1, , n NURBS become B-Splines. Derivatives of NURBS are more

involved than those of B-Splines and are addressed in detail in Subsection 2.5.2.

Some important properties of NURBS are given as follows:

• For open knot vectors, NURBS basis functions constitute a partition of unity

n

∑ R (ξ )=

i =1

i

p

1, ∀ξ .

• The continuity and support of NURBS basis functions are the same as for Bsplines.

• NURBS are pointwise non-negative

• NURBS can represent precisely a wide class of curves, e.g. conic sections.

These properties result in a strong convex hull property. The NURBS surface can

be derived by performing projective transformation of Eq. (2. 3) as done before for

NURBS curve. The NURBS surface is then defined as

27

n

(2. 14)

m

S (ξ ,η ) = ∑∑ Rip, j,q (ξ ,η ) Pi , j ,

=i 1 =j 1

where NURBS basis functions in parameter space of two dimensions are defined by

Rip, j,q (ξ ,η ) =

N i , p (ξ ) M j ,q (η ) wi , j

W (ξ ,η )

,

(2. 15)

in which the bivariate weighting function in the denominator is given by

n

m

W (ξ ,η ) = ∑∑ N iˆ , p (ξ ) M ˆj ,q (η ) wiˆ , ˆj ,

(2. 16)

=iˆ 1 =ˆj 1

and wi , j is the associated weight to every control point of m×n control net Pi , j . One

of the most conic sections that usually encounter in modeling is the circular plate and

it can be described exactly by NURBS surface as illustrated in Figure 2. 7. Typically,

there are two approaches for parameterizing the same circular NURBS surface at

coarse mesh level. The first one is depicted on the left where eighteen control points

are used, result in four elements while the second one is shown on the right in which

only nine control points are needed that produce only one element. It is worth to

mentioning that each parameterization approach surfers from each own singularity.

The left one has one singularity at the surface center where nine control points

coincide at the same position, and the right one has four singularities at four locations

where the four control points P1 , P3 , P7 , P9 situate. Usually, in analysis, the right one

is preferred due to its nice parameterization. Another conic section that often meets

in design is the annular plate which is demonstrated in Figure 2. 7. It is important to

note that this construction way exhibits an internal interface (indicated by the red line)

where the first and last control points in the circumferential direction are met. In

analysis, one needs to pay attention to this issue and to figure out a proper way to

handle the control variables associated to these control points.

28

Tải bản đầy đủ (.pdf) (219 trang)