???In an assignment A(I) = B, the number of elements in B and I must be the same.???
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Jose
am 20 Aug. 2014
Kommentiert: Jose
am 20 Aug. 2014
Hi I am getting this error ???In an assignment A(I) = B, the number of elements in B and I must be the same.??? ???Error in lab6 (line 17) t(i+1) = t +(i.*h)???
So basically I want to calculate the values in a for loop and put them in a zeros matrix. I am trying to program a Euler's Method.
%%Tasks
clc, clear all
func = @(t,x) -t.*x;
% func = @(t,x) sinh(x ./ (t+1));
% func = @(t,x) (t*x.^2)*cos(x.^2);
t0 = 0; %Initial Value
t1 = 5; %Final Value
x = 1; %Initial Value
h = 0.1; %Step size
steps = (t1 - t0) / h %Steps need to be taken
xarrays = zeros(1,steps);
tarrays = zeros(1,steps);
t = t0
for i = 1:steps
t(i+1) = t +(i.*h)
x(i+1) = x(i) + h.*func(t(i),x(i));
xarrays = x(i+1)
tarrays = t(i+1)
end
xarrays(:,t1)
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 20 Aug. 2014
t is an array. A 2D array of many elements. You cannot assign a whole array to just one element of it, t(i).
For example, let's say t was a 4 by 4 array and i was 3. Then you're trying to assign a 4 by 4 array (16 elements) to just a single element, t(3). You can't do that.
Try to think some more about the logic of this lab6 homework problem.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Pulsed Waveforms finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!