[問題] 如何把算出來的矩陣一一存下來?已回收

看板MATLAB作者 (WAN)時間15年前 (2010/05/04 14:12), 編輯推噓1(1017)
留言18則, 3人參與, 最新討論串1/1
原po是自學的初學者, 常常卡在一些看似簡單的小地方.... 很頭痛啊> <!!! 目前的問題: 有500個(X,Y,Z)座標值,分別要做對"角度A"旋轉, A也有500個值。 目前的寫法: for ii=1:500 Rotation_a = [cos(A(ii)) sin(A(ii)) 0;-sin(A(ii)) cos(A(iit)) 0;0 0 1] end XYZ_NEW = Rotation_a * XYZ; 發現算出來是錯的, 好像是我的Rotation_a沒有每個值都存出來, 要如何把他每個跑出來的矩陣存下來, 然後再做接下來的運算呢...... 不知道這樣敘述大家看不看的懂..... 麻煩幫幫忙了 > <!!! 謝謝!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.65.92

05/04 15:34, , 1F
把w(:,:,ii)=Rotation_a;放在end上一行試試
05/04 15:34, 1F

05/04 15:51, , 2F
出現錯誤...Assignment has more non-singleton rhs dimen
05/04 15:51, 2F

05/04 15:52, , 3F
nsions than non-singleton
05/04 15:52, 3F

05/04 17:08, , 4F
w是3維矩陣,處理時有注意過維度問題嗎?
05/04 17:08, 4F

05/04 22:13, , 5F
我有是過用三維,可是接下來的運算我就不會做了...(傻笑)
05/04 22:13, 5F

05/05 04:48, , 6F
因為我也不曉得你需要的矩陣維度、大小
05/05 04:48, 6F

05/05 04:50, , 7F
所以就很單純的把矩陣存下來而已
05/05 04:50, 7F

05/05 06:35, , 8F
XYZ是3*500的矩陣(是指這個嗎?)
05/05 06:35, 8F

05/05 09:24, , 9F
3維矩陣 X Y Z各500個? 這樣是 500*500*500 3D陣列
05/05 09:24, 9F

05/05 09:26, , 10F
X Y Z各自是1D的陣列 代表座標 這個3D陣列 代表f(X,Y,Z)
05/05 09:26, 10F

05/05 09:27, , 11F
如果是4D的話 叫做box(我覺得應該叫book= =)因為3D的第
05/05 09:27, 11F

05/05 09:28, , 12F
三個下標叫做第幾"頁" 那4D的第四個應該叫第幾"本"QQ
05/05 09:28, 12F

05/05 09:31, , 13F
X Y Z的大小各500的話 陣列w(1,2,3)代表f(X(1),Y(2),Z(3
05/05 09:31, 13F

05/05 09:32, , 14F
這樣f(X(1),Y(2),Z(3))的值 剛好就存在w的第3頁,第1列,
05/05 09:32, 14F

05/05 09:32, , 15F
然後是第二行 我的程式是這樣寫的 因為我是這樣理解的
05/05 09:32, 15F

05/05 09:34, , 16F
之前問一個 3D陣列作微分積分 沒人告訴我 自己查出答案
05/05 09:34, 16F

05/05 09:35, , 17F
網路上也沒人分享= = 可是論文都寫出來了 應該沒有人不
05/05 09:35, 17F

05/05 09:35, , 18F
會做吧?!
05/05 09:35, 18F
文章代碼(AID): #1Btxh5eu (MATLAB)