Advertisement
Guest User

Untitled

a guest
May 23rd, 2019
80
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.86 KB | None | 0 0
  1. function [xi,S,L] = cubicSpline(t,y)
  2. n = length(t);
  3. z = zeros(n,1); h = zeros(n-1,1); b = zeros(n-1, 1);
  4. u = zeros(n,1); v = zeros(n,1);
  5.  
  6. h = t(2:n)-t(1:n-1); b = (y(2:n)-y(1:n-1))./h;
  7. u(2) = 2*(h(1)+h(2)); v(2) = 6*(b(2)-b(1));
  8.  
  9. for i=3:n-1
  10. u(i) = 2*(h(i)+h(i-1))-h(i-1)^2/u(i-1);
  11. v(i) = 6*(b(i)-b(i-1))-h(i-1)*v(i-1)/u(i-1);
  12. endfor
  13.  
  14. for i=n-1:-1:2
  15. z(i) = (v(i)-h(i)*z(i+1))/u(i);
  16. endfor
  17.  
  18. S = [];
  19. xi = [];
  20. %Gambar garis di masing-masing titik
  21. prevp = 0;
  22. L = 0;
  23. for i=1:n-1
  24. for x=t(i):0.00005:t(i+1)+0.00005
  25. h = t(i+1)-t(i);
  26. p = z(i+1)/(6*h)*(x-t(i))^3 ...
  27. -z(i)/(6*h)*(x-t(i+1))^3 ...
  28. +(y(i+1)/h-z(i+1)*h/6)*(x-t(i)) ...
  29. -(y(i)/h-z(i)*h/6)*(x-t(i+1));
  30. L = L + sqrt((p - prevp)^2 + (0.00005)^2);
  31. prev = p;
  32. S = [S,p];
  33. xi = [xi,x];
  34. endfor
  35. endfor
  36. endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement