Unable to perform assignment
3 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
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 Commento
Adam
il 28 Giu 2019
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.
Risposta accettata
Jan
il 28 Giu 2019
Modificato: Jan
il 28 Giu 2019
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 Commenti
Più risposte (0)
Vedere anche
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!