Array indices must be positive integers or logical values

5 visualizzazioni (ultimi 30 giorni)
Hello, help me to solve this. I'm not into Matlab but doing this just for my assignment purpose. Had googled it but don't understand.
i=0:0.1:1;
for i = i
xt(i) = @(t) (-0.05)*t(i)^5+0.25*t(i)^4+t(i)+2-exp(-t(i));
yt(i) = @(t) t(i)^3+1;
zt(i) = @(t) (0.25*t(i)^4)+t(i)-exp(-t(i));
end
Array indices must be positive integers or logical values.
  1 Commento
Ankit
Ankit il 25 Gen 2022
Modificato: Ankit il 25 Gen 2022
It is clear from the error that your index should be positive integer ("Integers that are greater than zero are positive integers" i.e. 1,2,3...etc)

Accedi per commentare.

Risposta accettata

KSSV
KSSV il 25 Gen 2022
t=0:0.1:1;
nt = length(t) ;
xt = zeros(nt,1) ;
for i = 1:length(t)
xt(i) = (-0.05)*t(i)^5+0.25*t(i)^4+t(i)+2-exp(-t(i));
yt(i) = t(i)^3+1;
zt(i) = (0.25*t(i)^4)+t(i)-exp(-t(i));
end
Actually you can do the same without loop.
i=0:0.1:1;
xt = (-0.05)*t.^5+0.25*t.^4+t+2-exp(-t);
yt = t.^3+1;
zt = (0.25*t.^4)+t-exp(-t);

Più risposte (0)

Prodotti


Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by