Advertisement
Guest User

Untitled

a guest
Nov 14th, 2019
108
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1. clear;
  2. clc;
  3.  
  4.  
  5. n=5;
  6. X=[-1.32;-0.84;-0.41;0.16;0.33;1.09];
  7. x_bar=0.25;
  8.  
  9. function y=f(x);
  10. y=exp(x);
  11. endfunction;
  12.  
  13. for i = 1 : n
  14. Y(i+1)=f(X(i+1));
  15. end;
  16.  
  17. function FH=test_X(X,n); // FH=[eq;h]
  18. FH(1)=1; // eq=1
  19. FH(2)=X(2)-X(1); // h=x1-x0
  20. for i=2:n
  21. if X(i+1)-X(i)<>FH(2) then
  22. FH=[0;0];
  23. break;
  24. end;
  25. end;
  26. endfunction;
  27.  
  28. function y=omega(x,n,X);
  29. for i=0:n
  30. T(i+1)=x-X(i+1);
  31. end;
  32. y=prod(T);
  33. endfunction;
  34.  
  35.  
  36. D=zeros(n+1,n+1);
  37. D(:,1)=Y;
  38. if test_X(X,n)(1)==1 then
  39. h=test_X(X,n)(2);
  40. for k=1:n
  41. for i=0:(n-k)
  42. D(i+1,k+1)=D(i+2,k)-D(i+1,k);
  43. end;
  44. end;
  45. Tmp(i+1)=D(1,1);
  46. for i=1:k
  47. Tmp(i+1)=(D(1,i+1)*omega(x_bar,i-1,X))/(factorial(i)*h^i);
  48. end;
  49. Wn=sum(Tmp);
  50. else
  51. // punkt 7
  52. for k=1:n
  53. for i=0:(n-k)
  54. D(i+1,k+1)=(D(i+2,k)-D(i+1,k))/(X(i+k+1)-X(i+1));
  55. end;
  56. end;
  57. Tmp(i+1)=D(1,1);
  58. for i=1:k
  59. Tmp(i+1)=D(1,i+1)*omega(x_bar,i-1,X);
  60. end;
  61. Wn=sum(Tmp);
  62. end;
  63.  
  64. disp(Wn,"Wn=");
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement