spline interpolation method power pointahsheikh.github.io/courses/na/splineinterp_slides.pdf10...

32
ahsheikh.quest.edu.pk 1 Spline Interpolation Method Numerical Analysis-I BS (Mathematics), QUEST

Upload: others

Post on 10-Oct-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

ahsheikh.quest.edu.pk

1

Spline Interpolation Method

Numerical Analysis-I

BS (Mathematics), QUEST

Page 2: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

2

What is Interpolation ?

Given (x0,y0), (x1,y1), …… (xn,yn), find the value of ‘y’ at a value of ‘x’ that is not given.

Page 3: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

3

Interpolants

Polynomials are the most common choice of interpolants because they are easy to:

Evaluate

Differentiate, and

Integrate.

Page 4: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

http://numericalmethods.eng.usf.edu 4

Why Splines ? 2251

1)(

xxf

Table : Six equidistantly spaced points in [-1, 1]

Figure : 5th order polynomial vs. exact function

x 2251

1

xy

-1.0 0.038461

-0.6 0.1

-0.2 0.5

0.2 0.5

0.6 0.1

1.0 0.038461

Page 5: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

http://numericalmethods.eng.usf.edu 5

Why Splines ?

Figure : Higher order polynomial interpolation is a bad idea

-0.8

-0.4

0

0.4

0.8

1.2

-1 -0.5 0 0.5 1

x

y

19th Order Polynomial f (x) 5th Order Polynomial

Page 6: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

Spline Development a) First-order splines find straight-line

equations between each pair of points that

• Go through the points

b) Second-order splines find quadratic equations between each pair of points that

• Go through the points

• Match first derivatives at the interior points

c) Third-order splines find cubic equations between each pair of points that

• Go through the points

• Match first and second derivatives at the interior points Note that the results of cubic spline interpolation are different from the results of an interpolating cubic.

Page 7: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

7

Linear Interpolation Given nnnn yxyxyxyx ,,,......,,,, 111100 , fit linear splines to the data. This simply involves

forming the consecutive data through straight lines. So if the above data is given in an ascending

order, the linear splines are given by )( ii xfy

Figure : Linear splines

Page 8: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

8

Linear Interpolation (contd)

),()()(

)()( 0

01

01

0 xxxx

xfxfxfxf

10 xxx

),()()(

)( 1

12

12

1 xxxx

xfxfxf

21 xxx

.

.

.

),()()(

)( 1

1

1

1

n

nn

nn

n xxxx

xfxfxf nn xxx 1

Note the terms of

1

1)()(

ii

ii

xx

xfxf

in the above function are simply slopes between 1ix and ix .

Page 9: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

9

Example The upward velocity of a rocket is given as a

function of time in Table 1. Find the velocity at t=16 seconds using linear splines.

Table Velocity as a function of time

Figure. Velocity vs. time data for the rocket example

(s) (m/s)

0 0

10 227.04

15 362.78

20 517.35

22.5 602.97

30 901.67

t )(tv

Page 10: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

10

Linear Interpolation

10 12 14 16 18 20 22 24350

400

450

500

550517.35

362.78

y s

f range( )

f x de sire d

x s1

10x s0

10 x s range x de sire d

,150 t 78.362)( 0 tv

,201 t 35.517)( 1 tv

)()()(

)()( 0

01

01

0 tttt

tvtvtvtv

)15(1520

78.36235.51778.362

t

)15(913.3078.362)( ttv

At ,16t

)1516(913.3078.362)16( v

7.393 m/s

Page 11: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

11

Quadratic Interpolation

Given nnnn yxyxyxyx ,,,,......,,,, 111100 , fit quadratic splines through the data. The splines

are given by

,)( 11

2

1 cxbxaxf 10 xxx

,22

2

2 cxbxa 21 xxx

.

.

.

,2

nnn cxbxa nn xxx 1

Find ,ia ,ib ,ic i 1, 2, …, n

Page 12: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

12

Quadratic Interpolation (contd)

Each quadratic spline goes through two consecutive data points

)( 0101

2

01 xfcxbxa

)( 1111

2

11 xfcxbxa .

.

.

)( 11

2

1 iiiiii xfcxbxa

)(2

iiiiii xfcxbxa .

.

.

)( 11

2

1 nnnnnn xfcxbxa

)(2

nnnnnn xfcxbxa

This condition gives 2n equations

Page 13: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

13

Quadratic Splines (contd)

The first derivatives of two quadratic splines are continuous at the interior points.

For example, the derivative of the first spline

11

2

1 cxbxa is 112 bxa

The derivative of the second spline

22

2

2 cxbxa is 222 bxa

and the two are equal at 1xx giving

212111 22 bxabxa

022 212111 bxabxa

Page 14: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

14

Quadratic Splines (contd) Similarly at the other interior points,

022 323222 bxabxa

.

.

.

022 11 iiiiii bxabxa

.

.

.

022 1111 nnnnnn bxabxa

We have (n-1) such equations. The total number of equations is )13()1()2( nnn .

We can assume that the first spline is linear, that is 01 a

Page 15: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

15

Quadratic Splines (contd)

This gives us ‘3n’ equations and ‘3n’ unknowns. Once we find the ‘3n’ constants,

we can find the function at any value of ‘x’ using the splines,

,)( 11

2

1 cxbxaxf 10 xxx

,22

2

2 cxbxa 21 xxx

.

.

.

,2

nnn cxbxa nn xxx 1

Page 16: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

16

Quadratic Spline Example

The upward velocity of a rocket is given as a function of time. Using quadratic splines a) Find the velocity at t=16 seconds b) Find the acceleration at t=16 seconds c) Find the distance covered between t=11 and t=16 seconds

Table Velocity as a function of time

Figure. Velocity vs. time data for the rocket example

(s) (m/s)

0 0

10 227.04

15 362.78

20 517.35

22.5 602.97

30 901.67

t )(tv

Page 17: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

17

Solution

,)( 11

2

1 ctbtatv 100 t

,22

2

2 ctbta 1510 t

,33

2

3 ctbta 2015 t

,44

2

4 ctbta 5.2220 t

,55

2

5 ctbta 305.22 t

Let us set up the equations

Page 18: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

http://numericalmethods.eng.usf.edu 18

Each Spline Goes Through Two Consecutive Data Points

,)( 11

2

1 ctbtatv 100 t

0)0()0( 11

2

1 cba

04.227)10()10( 11

2

1 cba

Page 19: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

19

t v(t)

s m/s

0 0

10 227.04

15 362.78

20 517.35

22.5 602.97

30 901.67

Each Spline Goes Through Two Consecutive Data Points

04.227)10()10( 22

2

2 cba

78.362)15()15( 22

2

2 cba

78.362)15()15( 33

2

3 cba

35.517)20()20( 33

2

3 cba

67.901)30()30( 55

2

5 cba

35.517)20()20( 44

2

4 cba

97.602)5.22()5.22( 44

2

4 cba

97.602)5.22()5.22( 55

2

5 cba

Page 20: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

20

Derivatives are Continuous at Interior Data Points

,)( 11

2

1 ctbtatv 100 t

,22

2

2 ctbta 1510 t

10

22

2

2

10

11

2

1

tt

ctbtadt

dctbta

dt

d

10221011 22

tt

btabta

2211 102102 baba

02020 2211 baba

Page 21: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

21

Derivatives are continuous at Interior Data Points

0)10(2)10(2 2211 baba

0)15(2)15(2 3322 baba

0)20(2)20(2 4433 baba

0)5.22(2)5.22(2 5544 baba

At t=10

At t=15

At t=20

At t=22.5

Page 22: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

22

Last Equation

01 a

Page 23: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

23

Final Set of Equations

0

0

0

0

0

67.901

97.602

97.602

35.517

35.517

78.362

78.362

04.227

04.227

0

000000000000001

01450145000000000

00001400140000000

00000001300130000

00000000001200120

130900000000000000

15.2225.506000000000000

00015.2225.506000000000

000120400000000000

000000120400000000

000000115225000000

000000000115225000

000000000110100000

000000000000110100

000000000000100

5

5

5

4

4

4

3

3

3

2

2

2

1

1

1

c

b

a

c

b

a

c

b

a

c

b

a

c

b

a

Page 24: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

24

Coefficients of Spline i ai bi ci

1 0 22.704 0

2 0.8888 4.928 88.88

3 −0.1356 35.66 −141.61

4 1.6048 −33.956 554.55

5 0.20889 28.86 −152.13

Page 25: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

25

Quadratic Spline Interpolation Part 2 of 2

Page 26: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

26

Final Solution ,704.22)( ttv 100 t

,88.88928.48888.0 2 tt 1510 t

,61.14166.351356.0 2 tt 2015 t

,55.554956.336048.1 2 tt 5.2220 t

,13.15286.2820889.0 2 tt 305.22 t

Page 27: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

27

Velocity at a Particular Point

a) Velocity at t=16

,704.22)( ttv 100 t

,88.88928.48888.0 2 tt 1510 t

,61.14166.351356.0 2 tt 2015 t

,55.554956.336048.1 2 tt 5.2220 t

,13.15286.2820889.0 2 tt 305.22 t

m/s24.394

61.1411666.35161356.0162

v

Page 28: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

Quadratic Spline Graph

t=a:2:b;

Page 29: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

Quadratic Spline Graph

t=a:0.5:b;

Page 30: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

Natural Cubic Spline Interpolation

The domain of S is an interval [a,b].

S, S’, S’’ are all continuous functions on [a,b].

There are points ti (the knots of S) such that a = t0 < t1 < .. tn = b and such that S is a polynomial of degree at most k on each subinterval [ti, ti+1].

SPLINE OF DEGREE k = 3

yn … y1 y0 y

tn … t1 t0 x

ti are knots

Page 31: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

Natural Cubic Spline Interpolation

Si(x) is a cubic polynomial that will be used on the subinterval [ xi, xi+1 ].

Page 32: Spline Interpolation Method Power Pointahsheikh.github.io/Courses/NA/SplineInterp_slides.pdf10 227.04 15 362.78 20 517.35 22.5 602.97 30 901.67 t v(t) 10 Linear Interpolation ... a

Natural Cubic Spline Interpolation

Si(x) = aix3 + bix

2 + cix + di

• 4 Coefficients with n subintervals = 4n equations

• There are 4n-2 conditions

• Interpolation conditions

• Continuity conditions

• Natural Conditions

• S’’(x0) = 0

• S’’(xn) = 0