How do you code this set of discrete difference equations using for loop?

5 ビュー (過去 30 日間)
Ruth Porter
Ruth Porter 2018 年 11 月 29 日
回答済み: Md Muzakkir Quamar 2020 年 11 月 11 日
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 件のコメント
Akira Agata
Akira Agata 2018 年 11 月 30 日
編集済み: Akira Agata 2018 年 11 月 30 日
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.

サインインしてコメントする。

回答 (1 件)

Md Muzakkir Quamar
Md Muzakkir Quamar 2020 年 11 月 11 日
you need to create an array for x(n), y(n), z(n) to store the values

カテゴリ

Help Center および File ExchangeProgramming についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by