Unable to perform assignment

3 ビュー (過去 30 日間)
Samson
Samson 2019 年 6 月 28 日
編集済み: Jan 2019 年 6 月 28 日
From my attached code and get the following error
Unable to perform assignment because the left and right sides have a different number of elements.
Error in aa1 (line 12)
*Y(i)yo=utput;
a= 0.2; b= 0.2; c = 5.7;
% initial condition
yo = [0.5;0.5;1];
% computing the trajectory
dt = 0.01;
tspan = (dt:dt:100);
yinput = yo;
Y = zeros(tspan(end)/dt,1);
for i = 1: tspan(end)/dt
time = i*dt;
youtput = rk4angelstepb(@rosslerb,dt,yinput,a,b,c);
Y(i) = youtput;
yinput = youtput;
end
  1 件のコメント
Adam
Adam 2019 年 6 月 28 日
You can see what size things are with a breakpoint, or using the stop on errors option and testing on command line when it stops. It's a valuable resource for finding these problems. How you solve them is very situation dependent, but the error message says what is wrong and what is expected in this case.

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

採用された回答

Jan
Jan 2019 年 6 月 28 日
編集済み: Jan 2019 年 6 月 28 日
If the initial condition has 3 elements: yo = [0.5;0.5;1], te evaluated trajectory will have 3 elements per time step also. Then you need most likely:
Y = zeros(3, tspan(end)/dt);
for i = 1: tspan(end)/dt
time = i*dt;
youtput = rk4angelstepb(@rosslerb,dt,yinput,a,b,c);
Y(:, i) = youtput;
...

その他の回答 (0 件)

カテゴリ

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

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by