Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function stepEuler(A, B, C, D, steps, finish)
- t = 0:steps(1):finish;
- n = size(t, 2);
- x = zeros(size(A, 1), n);
- y = zeros(1, n);
- for i = 1:n
- x(:,i+1) = (A * x(:,i) + B) * steps(1) + x(:,i);
- y(1,i) = C * x(:,i) + D;
- end
- t1 = 0:steps(2):finish;
- n1 = size(t1, 2);
- x1 = zeros(size(A, 1), n1);
- y1 = zeros(1, n1);
- for i = 1:n1
- x1(:,i+1) = (A * x1(:,i) + B) * steps(2) + x1(:,i);
- y1(1,i) = C * x1(:,i) + D;
- end
- t2 = 0:steps(3):finish;
- n2 = size(t2, 2);
- x2 = zeros(size(A, 1), n2);
- y2 = zeros(1, n2);
- for i = 1:n2
- x2(:,i+1) = (A * x2(:,i) + B) * step(3) + x2(:,i);
- y2(1,i) = C * x2(:,i) + D;
- end
- plot(t, y(1,:));
- hold on;
- plot(t1, y1(1,:));
- hold on;
- plot(t2, y2(1,:));
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement