Array indices must be positive integers or logical values.

1 次查看(过去 30 天)
function [out] = slope(t,G1,G2,G3,G4)
k1=10;k2=20;m1=2;m2=4;
out(1)=(-k1*G2+k2(G4-G2))/m1;
out(2)=G1;
out(3)=-k2(G4-G2)/m2;
out(4)=G3;
end
when I use this function liks slope(0,1,0,-1,0)
show me thia Array indices must be positive integers or logical values.
Error in slope (line 4)
out(1)=(-k1*G2+k2(G4-G2))/m1;
why? how I can fix it.

回答(1 个)

the cyclist
the cyclist 2019-7-16
编辑:the cyclist 2019-7-16
You need to explicitly put in the multiplication sign:
out(1)=(-k1*G2+k2*(G4-G2))/m1;
and similarly in the assignment to out(3):
out(3)=-k2*(G4-G2)/m2;

类别

Help CenterFile Exchange 中查找有关 Cell Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by