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