Advertisement
Guest User

thrbsvx

a guest
Mar 25th, 2017
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scilab 0.72 KB | None | 0 0
  1. xp=0.0:0.2:1.0;
  2. yp=[0.00000, 0.20271, 0.422793, 0.684137, 1.029639, 1.557408];
  3. N=5;
  4.  
  5. for j=0:N
  6.  
  7. a(j+1,1)=yp(j+1);
  8.  
  9. end
  10.  
  11. for j=1:N
  12.  
  13. for i=j:N
  14.  
  15. a(i+1,j+1)=(a(i+1,j)-a(i,j))/(xp(i+1)-xp(i-j+1));
  16.  
  17. end
  18.  
  19. end
  20.  
  21. for j=0:N
  22.  
  23. c(j+1)=a(j+1,j+1);
  24.  
  25. end
  26.  
  27. x=input('Podaj wartośc x w przedziale [0.0 ,1.0] =');
  28.  
  29. cn=0;
  30.  
  31. pom=1;
  32.  
  33. for j=0:N
  34.  
  35. cn=cn+c(j+1)*pom;
  36.  
  37. pom=pom*(x-xp(j+1));
  38.  
  39. end
  40.  
  41. disp('Wartość obliczona metodą Newtona:;')
  42.  
  43. disp(cn)
  44.  
  45. disp('Wartość wyznaczona z funkcji interp:')
  46.  
  47. d=splin(xp,yp);
  48.  
  49. disp(d)
  50.  
  51. y=interp(x, xp, yp, d);
  52.  
  53. disp(y)
  54.  
  55. p=tan(x);
  56.  
  57. disp('Wartość obliczona z rówania funkcji:')
  58.  
  59. disp(p)
  60.  
  61. disp('Różnica między interpolacją a funkcją interp:'+string(abs(y-p)));
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement