Advertisement
Guest User

Untitled

a guest
May 20th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.57 KB | None | 0 0
  1. function [ x, v ] = AdamsBashforthUklDwa(xp, y0, h )
  2.  
  3.     f=@(x,v) v;
  4.     g=@(x,v) -x;
  5.  
  6.     x(1) = y0(1);
  7.     v(1) = y0(2);
  8.    
  9.     n = length(xp(1):h:xp(2));
  10.    
  11.     for i = 1:n-1
  12.         x(i + 1) = x(i) + h;
  13.         v(i + 1) = v(i) + h;
  14.         if i == 1
  15.             x(i + 1) = x(i) + h * f(x(i), v(i));
  16.             v(i + 1) = v(i) + h * g(x(i), v(i));
  17.         elseif i >= 2
  18.             x(i + 1) = x(i) + h * (1.5*f(x(i), v(i)) - 0.5*f(x(i-1), v(i-1)));
  19.             v(i + 1) = v(i) + h * (1.5*g(x(i), v(i)) - 0.5*g(x(i-1), v(i-1)));
  20.         end
  21.     end
  22. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement