Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clear all, clc,
- % punkt początkowy
- x=2;
- h0=0.2;
- % funkcja badana
- y0=@(x) exp(-x).*cos(x);
- % pierwsza pochodna
- y1=@(x) -exp(-x).*cos(x)-exp(-x).*sin(x);
- % druga pochodna
- y2=@(x) 2.*(exp(-x)).*sin(x);
- % trzecia pochodna
- y3=@(x) 2.*(-exp(-x)).*sin(x)+cos(x).*exp(-x);
- % krok
- i=1:40
- h =h0*2.^(1-i);
- % różnica progresywna
- rp=(y0(x+h)-y0(x))./h;
- % błąd względny // I BEZWZGLEDNY
- bw=abs((rp-y1(x))/y1(x));
- bgp=abs(h./2*y2(x)./y1(x));
- % różnica centralna
- rc=(y0(x+h)-y0(x-h))./(2*h);
- % błąd wzgldny // I BEZWZGLEDNY
- ec=abs((rc-y1(x))/y1(x));
- bgc=abs(h.^2/6*y3(x)/y1(x));
- % wykresy
- loglog(h,bw,'r.');
- hold on
- grid on
- loglog(h,ec,'b.');
- loglog(h,bgp);
- loglog(h,bgc);
- legend('r. progresywna', 'r. centralna', 'blad wzgledny odciecia r. progr.', 'blad wzgledny odciecia r.centr.')
- xlabel('log(h)');
- ylabel('log(blad wzgledny)');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement