algorytmy 1

Uniwersytet Warmińsko – Mazurski w Olsztynie

II rok, studia stacjonarne

Mechatronika

Algorytmy i metody numeryczne

Temat: Interpolacja i aproksymacja.

Adrian Mańka

Grupa 3

Cel ćwiczenia

Praktyczne zaznajomienie sie z podstawowymi aspektami interpolacji wielomianowej, interpolacji funkcjami sklejanymi i aproksymacji średniokwadratowej.

Zadania.

  1. Napisać m-plik dla obliczenia wielomianu Lagrange'a.

%ZADANIE 1

clc;

clear;

x=0:9;

n=length(x);

y=tan(x);

xx=0:0.01:9;

n1=length(xx);

for ii=1:n1

R(ii)=0;

for i=1:n

z=y(i);

for j=1:n

if i~=j

z=z*(xx(ii)-x(j))/(x(i)-x(j));

end

end

R(ii)=R(ii)+z;

end

end

plot(x,y,'o',xx,R);

11. Znaleźć wielomian interpolacyjny dla funkcji , określonej tablicą

1 2 3 4 5
2 1 5 6 1

Rezultat

12. Dla funkcji , określonej tablicą, znaleźć wielomian aproksymujący stopnia pierwszego.

0 0.1 0.2 0.3 0.4 0.5 0.6
2.9 2.8 2.7 2.3 2.1 2.1 1.7

13. Dla funkcji , określonej tablicą, znaleźć wielomian aproksymujący stopnia pierwszego.

20.5 32.7 51.0 73.2 95.7
765 826 873 942 1032

14. Funkcja jest określona tablicą. Znaleźć wielomian aproksymujący stopnia drugiego.

0 0.2 0.4 0.6 0.8 1.0
1.026 0.768 0.648 0.401 0.272 0.193

15. Funkcja jest określona tablicą (jest to tablica wartości funkcji )

0
0 1/2 1

a) Znaleźć wielomian aproksymujący stopnia drugiego i określić średni błąd aproksymacji.

b) Znaleźć wielomian aproksymujący stopnia czwartego.

PROGRAM

clc; %czyszczenie ekranu

clear; %czyszczenie pamięci

%ZADANIE 11

disp('ZADANIE 11'); %wyświetlenie treści w oknie z wynikami

X=[1 2 3 4 5]; %zdefiniowanie x-ów zgodnie z tablicą umieszczoną w zadaniu

Y=[ 2 1 5 6 1]; %zdefiniowanie y-ów zgodnie z tablicą umieszczoną w zadaniu

a=polyfit(X,Y,4)*24 %funkcja aproksymująca, gdzie X,Y - serie danych, 4 - stopień wielomianu. Mnożenie przez liczbę 24 ma na celu pozbycie się mianownika

%ZADANIE 12

disp('ZADANIE 12'); %wyświetlenie treści w oknie z wynikami

A=[0 0.1 0.2 0.3 0.4 0.5 0.6]; %zdefiniowanie wartości zgodnie z tablicą umieszczoną w zadaniu

B=[2.9 2.8 2.7 2.3 2.1 2.1 1.7]; %zdefiniowanie wartości zgodnie z tablicą umieszczoną w zadaniu

b=polyfit(A,B,1) %funkcja aproksymująca, gdzie A,B - serie danych, 1 - stopień wielomianu

z=b(1)*A+b(2) %funkcja zamieniająca wartości z tablicy A na aproksymację

figure(1);plot(A,B,A,z) %wykres przedstawiający dwie zależności:

%wartości A od wartości B

%wartości A od funkcji z

%ZADANIE 13

disp('ZADANIE 13'); %wyświetlenie treści w oknie z wynikami

C=[ 20.5 32.7 51.0 73.2 95.7]; %zdefiniowanie wartości zgodnie z tablicą umieszczoną w zadaniu

D=[765 826 873 942 1032]; %zdefiniowanie wartości zgodnie z tablicą umieszczoną w zadaniu

c=polyfit(C,D,1) %funkcja aproksymująca, gdzie C,D - serie danych, 1 – stopień
wielomianu

g=c(1)*C+c(2) %funkcja zamieniająca wartości z tablicy C na aproksymację

figure(2);plot(C,D,C,g) %wykres przedstawiający dwie zależności:

%wartości C od wartości D

%wartości C od funkcji g

%ZADANIE 14

disp('ZADANIE 14'); %wyświetlenie treści w oknie z wynikami

E=[0 0.2 0.4 0.6 0.8 1.0]; %zdefiniowanie wartości zgodnie z tablicą umieszczoną w zadaniu

F=[1.026 0.768 0.648 0.401 0.272 0.193]; %zdefiniowanie wartości zgodnie z tablicą umieszczoną w
zadaniu

d=polyfit(E,F,2); %funkcja aproksymująca, gdzie E,F - serie danych, 2 - stopień wielomianu

e=d(1)*E+d(2) %funkcja zamieniająca wartości z tablicy E na aproksymację

figure(3);plot(E,F,E,e) %wykres przedstawiający dwie zależności:

%wartości E od wartości F

%wartości E od funkcji e

%ZADANIE 15

disp('ZADANIE 15'); %wyświetlenie treści w oknie z wynikami

x=[0 pi/6 pi/4 pi/3 pi/2] %zdefiniowanie wartości zgodnie z tablicą umieszczoną w zadaniu

y=sin(x) %zwrócenie funkcji sinus odpowiednich wartości

a2=polyfit(x,y,2) %obliczenie współczynników wielomianu aproksymującego stopnia 2

y2=polyval(a2,x) %obliczenie wartości wielomianu stopnia 2 w punktach wektora x

a6=polyfit(x,y,6) %obliczenie współczynników wielomianu aproksymującego stopnia 2

y6=polyval(a6,x) %obliczenie wartości wielomianu stopnia 2 w punktach wektora x

figure(4);plot(x,y,'o',x,y2,'x',x,y6) %wykres przedstawiający powyższe zależności

REZULTAT

ZADANIE 11

a =

5.0000 -82.0000 427.0000 -806.0000 504.0000

ZADANIE 12

b =

-2.0000 2.9714

z =

2.9714 2.7714 2.5714 2.3714 2.1714 1.9714 1.7714

ZADANIE 13

c =

3.3949 702.1721

g =

1.0e+03 *

0.7718 0.8132 0.8753 0.9507 1.0271

ZADANIE 14

e =

-1.2263 -1.1496 -1.0729 -0.9963 -0.9196 -0.8429

ZADANIE 15

x =

0 0.5236 0.7854 1.0472 1.5708

y =

0 0.5000 0.7071 0.8660 1.0000

a2 =

-0.3346 1.1685 -0.0050

y2 =

-0.0050 0.5151 0.7064 0.8517 1.0049

a6 =

0.0112 0 -0.0822 0 -0.1127 1.0253 0.0000

y6 =

0.0000 0.5000 0.7071 0.8660 1.0000


Wyszukiwarka

Podobne podstrony:
Układy Napędowe oraz algorytmy sterowania w bioprotezach
5 Algorytmy
5 Algorytmy wyznaczania dyskretnej transformaty Fouriera (CPS)
Tętniak aorty brzusznej algorytm
Algorytmy rastrowe
Algorytmy genetyczne
Teorie algorytmow genetycznych prezentacja
Algorytmy tekstowe
Algorytmy i struktury danych Wykład 1 Reprezentacja informacji w komputerze
ALGORYTM EUKLIDESA
Algorytmy z przykladami tp 7 0
ALGORYT8
5 Algorytmy i schematy blokowe

więcej podobnych podstron