background image

 

 

METODY OBLICZENIOWE INFORMATYKI – LABORATORIUM 

materiały pomocnicze  

 

Ćwiczenie 5 

Interpolacja. 

 

ZAGADNIENIE INTERPOLACJI 

 

Zagadnienie interpolacji może być sformułowane następująco: w pewnym przedziale 

b

a,

 danych 

jest  n+1 różnych punktów 

n

x

x

x

,...,

,

1

0

 - nazywanych węzłami interpolacji, oraz wartości 

n

y

y

y

,...,

,

1

0

 pewnej funkcji 

)

(x

f

y

=

 w tych punktach. Zadaniem interpolacji jest wyznaczenie 

przybliżonych wartości funkcji w punktach nie będących węzłami interpolacji. W tym celu należy 
znaleźć funkcję interpolującą 

)

(x

F

y

=

, która w węzłach interpolacji przyjmuje takie same 

wartości co funkcja 

)

(x

f

y

=

 (tzn. funkcję, której wykres przechodzi dokładnie przez zadane 

punkty).  

 

WIELOMIAN INTERPOLACYJNY LAGRANGE'A 

 
Poszukujemy wielomianu stopnia n, który w n+1 danych punktach 

n

x

x

x

,...,

,

1

0

 przyjmuje zadane 

wartości 

n

y

y

y

,...,

,

1

0

. Wielomian Lagrange'a spełniający powyższy warunek ma postać: 

  

=

+

+

=

n

j

n

j

j

j

j

j

j

j

n

j

j

j

n

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

x

y

x

W

0

1

1

1

0

1

1

1

0

)

)...(

)(

)...(

)(

(

)

)...(

)(

)...(

)(

(

)

(

 

 

PROCEDURY ŚRODOWISKA MATLAB REALIZUJĄCE INTERPOLACJĘ  

 
Standardowe procedury MATLAB-a realizują interpolację za pomocą następujących metod: 

-  interpolacja wielomianami pierwszego i trzeciego stopnia, 
-  interpolacja za pomocą funkcji sklejanych. 

 

Funkcja Parametry 

Działanie  

interp1(x,y,xi,'metoda') 

x, y – wektory określające 
węzły interpolacji 
xi – wektor punktów, dla 
których obliczane są 
wartości wielomianu 
interpolującego  
metoda – rodzaj interpolacji:

-  linear (interpolacja 

funkcją łamaną) 

-  spline (interpolacja 

funkcjami 
sklejanymi trzeciego 
stopnia) 

-  cubic (interpolacja 

wielomianami 
trzeciego stopnia) 

Interpolacja funkcji jednej 
zmiennej 

 

background image

 

 

 

ZADANIA

 

 
Zad.1. 
Napisać program w wybranym języku programowania obliczający wartość wielomianu Lagrange'a 
stopnia  n  w dowolnym punkcie leżącym wewnątrz przedziału 

n

x

,

0

 i różnym od węzła, przy 

zadanych węzłach interpolacji 

n

x

x

x

,...,

,

1

0

 oraz wartościach 

n

y

y

y

,...,

,

1

0

 funkcji w tych węzłach.    

Wykorzystując napisany program obliczyć wartość wielomianu interpolacyjnego Lagrange'a 
stopnia 3 dla 

0

=

x

. Wielomian interpolacyjny w punktach –2, 1, 2, 4 przyjmuje wartości 3, 1, -3, 8.   

 
Zad. 2. 
Porównać jakość dostępnych metod interpolacji w funkcji 

interp1

  środowiska MATLAB, na 

przykładzie funkcji: 

x

e

x

f

y

x

sin

2

)

(

25

.

0

=

=

. W przedziale  12

,

0

 rozmieszczonych jest 

równomiernie siedem węzłów interpolacji. 
 
Zad. 3. 
Dana jest funkcja schodkowa określona w wybranych punktach: 

<

<

=

10

5

 

dla

   

5

5

0

 

dla

   

0

)

(

n

n

n

s

 

N

n

 

Znaleźć wielomian interpolacyjny stopnia 10-go za pomocą funkcji 

polyfit

  środowiska 

MATLAB. Porównać przebieg otrzymanego wielomianu z przebiegami wielomianów 
aproksymujących otrzymanymi w zad. 3 ćwiczenia nr 2.