1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
subroutine l2knts ( break, l, k, t, n )
c from * a practical guide to splines * by c. de boor
c to be called in main program l 2 m a i n .
converts the breakpoint sequence b r e a k into a corresponding knot
c sequence t to allow the repr. of a pp function of order k with
c k-2 continuous derivatives as a spline of order k with knot
c sequence t . this means that
c t(1), ..., t(n+k) = break(1) k times, then break(i), i=2,...,l, each
c once, then break(l+1) k times .
c therefore, n = k-1 + l.
c
c****** i n p u t ******
c k the order
c l the number of polynomial pieces
c break(1), ...,break(l+1) the breakpoint sequence
c
c****** o u t p u t ******
c t(1),...,t(n+k) the knot sequence
c n the dimension of the corresp. spline space of order k .
c
integer k,l,n, i,km1
real break(1),t(1)
c dimension break(l+1),t(n+k)
km1 = k - 1
do 5 i=1,km1
5 t(i) = break(1)
do 6 i=1,l
6 t(km1+i) = break(i)
n = km1 + l
do 7 i=1,k
7 t(n+i) = break(l+1)
return
end
|