Facebook
From Trivial Human, 5 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 225
  1. clc;
  2. clear all;
  3. yk=0.8;
  4. x0=0;
  5. eps=0.01;
  6. h=0.1;
  7. k=0;
  8. xk=x0;
  9. while(xk<=1+h)
  10.     k1=h*rr(xk,yk);
  11.     k2=h*rr(xk+(1/2*h),yk+(1/2*k1));
  12.     k3=h*rr(xk+(1/2*h),yk+(1/2*k2));
  13.     k4=h*rr(xk+h,yk+k3);
  14.     T=abs((k2-k3)/(k1-k2));
  15.     wyn(k+1,:)=[k, xk, yk, k1, k2, k3, k4, T, h,];
  16.     if(T<=0.05)
  17.          wyn(k+2,3)=wyn(k+1,3)+(1/6*k1)+(1/3*k2)+(1/3*k3)+(1/6*k4);
  18.     else
  19.         h=h/2;
  20.         continue
  21.     end
  22.     yk=wyn(k+2,3);
  23.     k=k+1;
  24.     xk=xk+h;
  25. end
  26. k=4;
  27. xk=0.2;
  28.  
  29. while(xk<=1+h)
  30.     k=k+1;
  31.     wyn(k,1)=k-1;
  32.     wyn(k,2)=xk;
  33.     wyn(k,3)=wyn(k-1,3)+(h/24)*((55*rr(wyn(k-1,2),wyn(k-1,3)))-(59*rr(wyn(k-2,2),wyn(k-2,3)))+(37*rr(wyn(k-3,2),wyn(k-3,3)))-(9*rr(wyn(k-4,2),wyn(k-4,3))));
  34.     xk=xk+h;
  35. end
  36.  
  37. fprintf('Kolejno: k, x, y, s1...s4, T, h');
  38. wyn
  39.