2013-05-09 217 views
0

下面的代碼時,我對自己的運行它的工作原理:錯誤:「指數超過矩陣尺寸」

range = multi_sptime(100,end); 
binary_input = binary_input2(1:range); 
ssignal = signal(1:range); 
signal = ssignal;% input current 
clear input2 
clear binary_input2 
dbstop if error 

然而,當我加入這個for循環:

neurons=[1,2,4,6,8,10,15,20,25,30,35,40,50,100,200]; 
for ncell=neurons 
... 

我得到的錯誤如下:

??? Index exceeds matrix dimensions.
Error in int_idc20 (line 8)
ssignal = signal(1:range);

我該如何解決它,發生了什麼?

+0

您能否縮小代碼範圍?此外,錯誤發生在循環之前,所以你有一個外部循環? – 2013-05-09 16:16:08

回答

3

首先,我想你想循環遍歷neurons元素#,因此與糾正你for行:

for ncell=1:numel(neurons) 

,然後根據您要在循環使用ncellneurons(ncell)什麼。

二,range是尋找multi_sptime第100行最後一個元素的標量,顯然它所吐出的數字大於#元素的數量是signal。嘗試到size(signal)看看你有什麼。