Array indices must be positive integers or logical values.

hey, im new in matlab.
I have attached the original question and my solution is written below:
clc; clear;
%t = linspace(0,2,100);
t= (0:0.05:2);
V=12;
R=4;
L=1.3;
g= zeros(1,length(t));
for j=t
if j<=0.5
g(j)=((V\R)*(1-(exp((-R*j)\L))));
else
g(j)=(exp((-R*j)\L)*(V\R)*(exp((0.5*R)\L)-1));
end
end

Respuestas (1)

KSSV
KSSV el 3 de Mayo de 2019
Editada: KSSV el 3 de Mayo de 2019
Note that the index of array cannot be zero, negative and fraction...so the error.
%t = linspace(0,2,100);
t= (0:0.05:2);
V=12;
R=4;
L=1.3;
g= zeros(1,length(t));
for j=1:length(t)
if t(j)<=0.5
g(j)=((V\R)*(1-(exp((-R*j)\L))));
else
g(j)=(exp((-R*j)\L)*(V\R)*(exp((0.5*R)\L)-1));
end
end

2 comentarios

Thank you for your answer,
can you show me how i can rewrite the code and make it work?
KSSV
KSSV el 4 de Mayo de 2019
I gave you the code right?

Iniciar sesión para comentar.

Categorías

Más información sobre Creating and Concatenating Matrices en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 3 de Mayo de 2019

Comentada:

el 4 de Mayo de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by