1. Wyznaczenie funkcji g(x):

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

wzór ogólny funkcji

2. Obliczenie przybliżeń:

a) dla punktu startowego p0=1.9

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

b) dla punktu startowego p0=3.8

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

3. Obliczenie pochodnych w punktach startowych

a) dla punktu startowego Po=1.9

0x01 graphic

0x01 graphic

0x01 graphic

a) dla punktu startowego p0=1.9

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

b) dla punktu startowego p0=3.8

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

0x01 graphic

4. Kod programu

function y=g(x)

y=0.5*x.^2-2*x+4;

>> x=linspace(1,3);

p0=1.9;tol=0.001;max1=30;

[k, p, err, P] = fixpt('g', p0, tol, max1)

k =

4

p =

2.0000

err =

1.2500e-005

P =

1.9000

2.0050

2.0000

2.0000

>> x=linspace(3,5);

p0=3.8;tol=0.001;max1=30;

[k, p, err, P] = fixpt('g', p0, tol, max1)

k =

9

p =

2.0000

err =

2.7802e-006

P =

3.8000

3.6200

3.3122

2.8609

2.3706

2.0687

2.0024

2.0000

2.0000

function y=g(x)

y=-0.5*x.^2+4*x-4;

>> x=linspace(1,3);

p0=1.9;tol=0.001;max1=30;

[k, p, err, P] = fixpt('g', p0, tol, max1)

Przekroczono maksymalna liczbe iteracji

k =

30

p =

-Inf

err =

NaN

P =

1.0e+173 *

0.0000

0.0000

0.0000

0.0000

-0.0000

-0.0000

-0.0000

-0.0000

-0.0000

-0.0000

-0.0000

-0.0000

-0.0000

-7.6519

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

-Inf

>> x=linspace(3,5);

p0=3.8;tol=0.001;max1=30;

[k, p, err, P] = fixpt('g', p0, tol, max1)

k =

4

p =

4.0000

err =

1.9998e-004

P =

3.8000

3.9800

3.9998

4.0000

>> xpom=linspace(1,5,500);

ypom=-0.5*xpom.^2+3*xpom-4;

plot(xpom,ypom,'k-');

legend('funkcja f(x)');

>> grid on

0x01 graphic

5. Wnioski

W celu poprawnego wyznaczenia miejsc zerowych badanej funkcji f(x) musimy określić dwie funkcje g(x), ponieważ w pierwszym przypadku podczas przybliżeń funkcją g(x) odnajdujemy tylko miejsce zerowe w punkcie x=2. W drugim przypadku odnajdujemy miejsce zerowe tylko zaczynając od punktu startowego P=3.8, jeżeli zaczniemy od punktu P=1.9 otrzymujemy funkcję rozbieżną. Ilość iteracji potrzebnych do wyznaczenia miejsc zerowych jest niewielka a dokładność większa niż na początku zakładano. Wynika z tego, że metodą punktu stałego zawsze wyznaczymy miejsca zerowe funkcji, wystarczy tylko określić odpowiednią funkcję g(x).

Cezary Winnik 157958

Metody numeryczne

Temat: Miejsca zerowe

Prowadzący: dr inż. P. Regucki