Scilab中的“无效索引”错误

时间:2015-11-14 20:33:54

标签: matlab scilab

我正在使用以下代码:

for t = linspace(0,2,500)   

   x(t) = 1+ t^2;   
   y(t) = 2*t;  
   r(t) = sqrt((x(t))^2+(y(t))^2);  

   radius = 1.6

   if r(t) > 0.999*radius & r(t) < 1.001*radius then
       solucion = t;

   end
end;

disp(solucion, "the solution is:")

适用于t&gt; 1和不同的半径值。

但是当error 21: Invalid index取0到1之间的值时,我得到t

我也需要处理这些值。我该如何处理?

1 个答案:

答案 0 :(得分:1)

就这样,这在概述中显示为答案:

Scilab和MATLAB中的数组索引必须是正整数(或逻辑,但这绝对不是你想要的)。如果您需要t在从0开始的范围内变化,请始终写x(t+1)。如果需要非整数值,仍然迭代整数并从循环索引计算非整数值。