how to solve Index exceeds the number of array elements (1).
조회 수: 7 (최근 30일)
이전 댓글 표시
Hi guys, I'm writing a code for simulink model auto generation . But when i run code, it popup this error . How can i solve this problem.
Index exceeds the number of array elements (1).
Error in Create_topology (line 42)
hmp(k) = add_line(mdl,htp{k-1}.RConn(2),htp{k}.LConn(1),'autorouting','on');
open_system('Coil_Architecture');
mdl = 'Coil_Architecture/Coil';
h = find_system(mdl,'FindAll','on','Name','Coil');
Num_Turns = 100 ;
set(h,'Num_Turns',num2str(Num_Turns));
ht = zeros(Num_Turns,1);
hmp = zeros(Num_Turns,1);
htp = cell(Num_Turns,1);
for k = 1:Num_Turns
nk = num2str(k);
% add turn
ht(k) = add_block('Unit_Turn/Turn_1', [mdl,'/Turn_',nk]);
posc = get(ht(k),'Position');
set(ht(k),'Position',posc + [0 30*(k-1) 0 30*(k-1)]);
% get port handles
htp{k} = get(ht(k),'PortHandles');
% connect turn to turn
if k > 1
hmp(k) = add_line(mdl,htp{k-1}.RConn(2),htp{k}.LConn(1),'autorouting','on');
end
end
댓글 수: 2
Sulaymon Eshkabilov
2019년 7월 23일
Hi,
could you also post your complete model: Coil_Architecture to simulate and find out more specific details of your err message?
채택된 답변
David K.
2019년 7월 23일
What this error is saying is that at some point in that line you are exceeding the number of elements in an array. The (1) is indicating that the actual number of elements in the array is 1.
My guess is that htp{k-1}.Rconn(2) may only have a length of 1.
If it is not that, right before the line display each of your variables and see that they are what you expect them to be.
Hope this helps
댓글 수: 5
David K.
2019년 7월 23일
Just did so, appears the issue you mentioned is solved by changing
htp{k-1}.RConn(2)
to
htp{k-1}.RConn(1)
Since the struct appears that RConn and LConn are single variables and so there is no .RConn(2). I could not get it working since for me it now said the Turn_1 block could not be added but I expect that may just be my stuff for now. But the indexing issue is gone.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrix Indexing에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!