How do you code this set of discrete difference equations using for loop?
3 views (last 30 days)
Show older comments
This is where ive got so far with it, but it doesnt seem to be changing the values of x,y and z
%Parameters -- Keep as constants for now.
d = 0.001;
%Parameters - Varying values of a, b and r
a=2;
b=2;
r=3;
%Initial conditions
x(1)=2;
y(1)=2;
z(1)=2;
for n=1:10
x(n+1)=x(n)+(d*a)*(x(n)-y(n));
y(n+1)=y(n)+(d*r)*(x(n)-z(n))*(x(n)-y(n));
z(n+1)=z(n)+(d*((x(n)*y(n))-(b*z(n))));
end
figure(1),
subplot(3,1,1), hold on
plot(x(n), n)
xlabel('n');
subplot(3,1,2), hold on
plot(y(n), n)
xlabel('n');
subplot(3,1,3), hold on
plot(z(n), n)
xlabel('n');
1 Comment
Akira Agata
on 30 Nov 2018
Edited: Akira Agata
on 30 Nov 2018
I think it's due to your initial condition. If you change the initial condition, like x(1) = 1, y(1) = 2, z(1) = 3, then they will change as n increases.
Answers (1)
Md Muzakkir Quamar
on 11 Nov 2020
you need to create an array for x(n), y(n), z(n) to store the values
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!