• Nie Znaleziono Wyników

Interpolacja sklejkami kubicznymi Naszym zadaniem będzie interpolacja funkcji: f

N/A
N/A
Protected

Academic year: 2021

Share "Interpolacja sklejkami kubicznymi Naszym zadaniem będzie interpolacja funkcji: f"

Copied!
1
0
0

Pełen tekst

(1)

Interpolacja sklejkami kubicznymi

Naszym zadaniem będzie interpolacja funkcji:

f (x) = sin(x)e−x w przedziale x ∈ [0..2π].

Interpolację sklejkami kubicznymi powyższej funkcji należy wykonać przy użyciu procedur spline i splint z biblioteki Numerical Recipes.

Wywołanie procedury spline w Fortranie (wywoływana jest ona tylko 1 raz):

call spline(x,y,n,yp1,ypn,y2) gdzie:

x jest tablicą: real*4 x(1:n) - zawierającą położenia węzłów funkcji interpolowanej y jest tablicą: real*4 y(1:n) - zawierającą wartości funkcji interpolowanej w węzłach xi

n - ilość węzłów

yp1 - wartość pierwszej pochodnej funkcji interpolowanej w x1

ypn - wartość pierwszej pochodnej funkcji interpolowanej w xn

y2 jest tablicą: real*4 y2(1:2) - zawierającą drugie pochodne funkcji interpolowanej

Proszę przyjąć: yp1 > 1030 oraz ypn > 1030, wówczas druga pochodna dla skrajnych węzłów (1 i n) jest zerowana. Otrzymujemy wtedy tzw. sklejki normalne.

Wywołanie procedury splint w Fortranie (wywoływana jest ona dla każdego xa dla którego chcemy znać wartość ya - pomiędzy węzłami interpolacji):

call splint(x,y,y2,n,xa,ya) gdzie:

x, y, y2, n - identyczne jak dla procedury spline

xa - aktualna wartość argumentu funkcji (dana wejściowa)

ya - wartość funkcji dla argumentu xa leżącego pomiędzy węzłami interpolacji (dana wyjściowa) Zadania do wykonania:

1. Stablicować funkcję f (x) = sin(x)e−x w przedziale x ∈ [0..2π] w n węzłach 2. Przeprowadzić interpolację sklejkami kubicznymi dla n=4,8,12,16

3. Narysować na jednym wykresie w przedziale x ∈ [0..2π]:

• wartości funkcji f(x) interpolowanej (w n punktach)

• wartości uzyskanej dla danego n funkcji interpolującej (sklejki kubicznej) w 50 punktach

4. W celu porównania liczbowego dokładności interpolacji proszę dla każdej wartości n policzyć średnie odchylenie wartości funkcji interpolującej od wartości funkcji interpolowanej (dla k=50 punktów) wg wzoru:

n= Pk

i=1|fdok(xi) − fint(xi)|

k Wyniki porównania zamieścić w tabeli.

Tomasz Chwiej

Cytaty

Powiązane dokumenty

Figure V.10: An environment map mapped into a sphere proje tion.

Wywołanie procedury splint w C (wywoływana jest ona dla każdego xa dla którego chcemy znać wartość ya - pomiędzy węzłami interpolacji):1.

jest funk j¡ Lips hitza lokalnie, je»eli speªnia warunek Lips hitza w ka»dym punk ie

2) Interpolacja funkcji, której przebieg znacznie różni się od przebiegu wielomianu interpolacyjnego, może nie dawać dobrych wyników przy dużej liczbie węzłów..

Dla każdego n sporządzić rysunek zawierający przebieg funkcji y(x) oraz obu wielomia- nów interpolacyjnych (węzły równomiernie i nierównomiernie rozłożone)3. Wykresy mają

Funkcję dzielimy na kawałki w ten sposób, że do kawałka należą dokładnie 2 punkty leżące na końcach przedziału.. Rozwiązując układ równań wyznaczy-

• Wykonać interpolację funkcją progową, liniową i spline’ami kubicznymi dla dwóch wybranych funkcji nieliniowych jednej zmiennej, w tym jedna z nich jest funkcją

[r]