for loop involving matrix with 3 indices
2 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I am trying to obtain a matrix with 3 indices (represented by m, j, n respectively) via the use of a for loop. The general idea looks something like this:
I first set up the matrix to be x=zeros(M+1,J+1,N+1), where M J N are predefined constants;
I then created a triple for loop that resembles -
for n = 2:1:N+1
for m = 2:1:M+1
for j = 2:1: J+1
x(m,j,n) = ...
end
end
end
When I tried to run the code, however, I got an error message at "x(m,j,n) = ..." that says "Index in position 3 exceeds array bounds. Index must not exceed 1." Can someone enlighten me on why this error message popped out? I was certain that x was set up properly at "x=zeros(M+1,J+1,N+1)". Thanks!
採用された回答
KSSV
2022 年 1 月 9 日
It looks like your RHS matrix is 2D and not 3D. Check your RHS matrix from which you are trying to extract elements.
A = rand(2);
A(2,2,2)
その他の回答 (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!