# my program is not working properly

1 ビュー (過去 30 日間)
shiv gaur 2022 年 3 月 11 日
コメント済み: Jan 2022 年 3 月 12 日
function kk2
close all; clear all;
% accuracy
%options = odeset('RelTol',1e-9,'AbsTol', 1e-16);
[t,y]=ode45(@f,[0 100],[0.1;0.1;0.1+1;0.1;0.1;0.1] );
plot(t,y(:,2),t,y(:,4),t,y(:,6))
function dy=f(t,y)
%x=y(1);y=y(3);z=y(5)
r=28;
b=8/3;
k=10;
dy=zeros(6,1)
dy= [y(2);k^2*y(1)-k^2*y(3)-k*y(1)*y(5)+k*r*y(5)-k*y(3);y(4);b*y(1)*y(5)-y(1)^2*y(3)-k*y(1)*y(3)+k*y(3)*y(5)-r*k*y(1)+k*r*y(3)+y(1)*y(5)-r*y(1)+y(3);y(6);-y(1)^2*y(5)+r*y(1)^2-y(1)*y(3)-k*y(1)*y(3)+k*y(3)^2-b*y(1)*y(3)+b^2*y(5)]
end
end
so sir we want to plot between t,x,t,y
and we want to plot t vs second element of dy t,fourth element t,vs sixth element
##### 1 件のコメント表示 なし非表示 なし
Jan 2022 年 3 月 12 日

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

### 回答 (1 件)

Sam Chak 2022 年 3 月 11 日

It appears that the system is highly unstable and all states blow up at around 0.35 sec except for . Please check the state equations again. Sometimes, the plus/minus signs can make a huge difference.
Edit: It has some similarities like the Lorenz system, because I recognized the magic values: 10, 8/3, 28.
clear all; clc
r = 28;
b = 8/3;
k = 10;
tspan = linspace(0, 0.3, 10001)';
fun = @(t, y) [y(2); ...
k^2*y(1) - k^2*y(3) - k*y(1)*y(5) + k*r*y(5) - k*y(3); ...
y(4); ...
b*y(1)*y(5) - y(1)^2*y(3) - k*y(1)*y(3) + k*y(3)*y(5) - r*k*y(1) + k*r*y(3) + y(1)*y(5) - r*y(1) + y(3); ...
y(6); ...
- y(1)^2*y(5) + r*y(1)^2 - y(1)*y(3) - k*y(1)*y(3) + k*y(3)^2 - b*y(1)*y(3) + b^2*y(5)];
[t, y] = ode45(fun, tspan, [0.1, 0.1, 1.1, 0.1, 0.1, 0.1]);
plot(t, y) Once you have fixed the model, please ensure that all states can propagate at least until your desired final time, sec, and then you can choose what you want to plot.
##### 6 件のコメント表示 5 件の古いコメント非表示 5 件の古いコメント
Jan 2022 年 3 月 12 日
@Sam Chak: Thanks for your effort. If a user ignores your help consequently, this is his problem.

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

### カテゴリ

Find more on Programming in Help Center and File Exchange

R2021b

### Community Treasure Hunt

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

Start Hunting!