MATLAB程序错误?Subscript indices must either be real positive integers or logicals.>> for i=1:1:100x(i)=x(i-1)+vx(i)*1y(i)=y(i-1)+yx(i)*1r(t)=sqrt(x(i)^2+y(i)^2)ax(i)=-G*M*x(i)/r(i)^3ay(i)=-G*M*y(i)/r(i)^3vx(t+1)=vx(t)-ax(i)*1vy(t+1)=vy(t)-ay(i)*
来源:学生作业帮助网 编辑:作业帮 时间:2024/05/10 14:46:01
MATLAB程序错误?Subscript indices must either be real positive integers or logicals.>> for i=1:1:100x(i)=x(i-1)+vx(i)*1y(i)=y(i-1)+yx(i)*1r(t)=sqrt(x(i)^2+y(i)^2)ax(i)=-G*M*x(i)/r(i)^3ay(i)=-G*M*y(i)/r(i)^3vx(t+1)=vx(t)-ax(i)*1vy(t+1)=vy(t)-ay(i)*
MATLAB程序错误?Subscript indices must either be real positive integers or logicals.
>> for i=1:1:100
x(i)=x(i-1)+vx(i)*1
y(i)=y(i-1)+yx(i)*1
r(t)=sqrt(x(i)^2+y(i)^2)
ax(i)=-G*M*x(i)/r(i)^3
ay(i)=-G*M*y(i)/r(i)^3
vx(t+1)=vx(t)-ax(i)*1
vy(t+1)=vy(t)-ay(i)*1
end
MATLAB程序错误?Subscript indices must either be real positive integers or logicals.>> for i=1:1:100x(i)=x(i-1)+vx(i)*1y(i)=y(i-1)+yx(i)*1r(t)=sqrt(x(i)^2+y(i)^2)ax(i)=-G*M*x(i)/r(i)^3ay(i)=-G*M*y(i)/r(i)^3vx(t+1)=vx(t)-ax(i)*1vy(t+1)=vy(t)-ay(i)*
由于你的i和j是从1开始的,而是用中用到了i-1和j-1此时为0,但matlab得下标只能是正整数,所以报错