[問題] 陣列內的元素是矩陣已回收

看板MATLAB作者 (懷念)時間15年前 (2010/04/24 00:13), 編輯推噓1(105)
留言6則, 5人參與, 最新討論串1/1
我要算50次,每一次計算完會得到一個矩陣,要怎麼把這50個矩陣存下來呢 N=10; for t=1:50; for m=1:N if mod(N,2)==1 u(m)=2*sin(kx); end if mod(N,2)==0 u(m)=10; end end U=[u(1:m)]; b=diag(U); 每個t算一個矩陣b H(t)=b; 把b存在H(t) 中 end 我希望每個H(t) 對應到每個不同的b 出現error message: In an assignment A(I) = B, the number of elements in B and I must be the same. 該如何解決呢? 謝謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 99.57.132.92

04/24 00:23, , 1F
法1:用cell 法2:用eval輸出H1=.. H2=..~ H50=..
04/24 00:23, 1F

04/24 00:29, , 2F
H(:,:,t)?
04/24 00:29, 2F

04/24 18:31, , 3F
若每次求得矩陣的大小都相同,可以用2樓的方式
04/24 18:31, 3F

04/24 18:31, , 4F
若不同,就用一樓的法1,會比較簡單些
04/24 18:31, 4F

04/25 06:40, , 5F
我用二樓的,ok了 感恩!
04/25 06:40, 5F

04/26 02:24, , 6F
cell妙用多 可以的話最好學起來
04/26 02:24, 6F
文章代碼(AID): #1BqSSdym (MATLAB)