看板 MATLAB 關於我們 聯絡資訊
各位午安,小的今天早上在寫一個簡單的函數並跑圖形 y=0.5*exp(x/3)-x*x*sin(x) [程式碼] function myFun01 x=0:0.1:10; y=0.5*exp(x/3)-x*x*sin(x); plot(x,y); [問題] 他出現了 ??? Error using ==> mtimes Inner matrix dimensions must agree. Error in ==> myFun01 at 4 y=0.5*exp(x/3)-x*x*sin(x); 我GOOGLE一下跟矩陣有關 希望大大可以不吝嗇指點,謝謝大家! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.231.224.160
profyang:看不太懂你想問啥 不過我猜你要的是.* 09/11 11:08
好心的大大我修改了,這樣你看得懂嗎= = ※ 編輯: boo0930 來自: 61.231.224.160 (09/11 11:25)
profyang:x=0:0.1:10; y=0.5*exp(x/3)-x.^2.*sin(x); plot(x,y); 09/11 11:43
profyang:你a+bi是複數嗎?為啥要轉什麼數值?還要if?不懂 09/11 11:44
※ 編輯: boo0930 來自: 61.231.224.160 (09/11 11:59) 現在問題改為這個,這樣有比較懂嗎@@ ※ 編輯: boo0930 來自: 61.231.224.160 (09/11 12:16)
profyang:所以就我說的阿XDD你要用.*和.^2 因為他是向量不可以直接 09/11 12:28
profyang:* *代表矩陣相乘 所以你這邊要的應該是點乘 也就是.* 09/11 12:29
天啊,我成功了,真的很感謝你,但如果方便可以告訴我為什麼跟矩陣有關嗎? ※ 編輯: boo0930 來自: 61.231.224.160 (09/11 12:39)
profyang:基本上你的變數matlab都是當作是矩陣(或說array比較好) 09/11 12:40
profyang:所以他的基本運算都是照矩陣需要的寫的 *就是矩陣的乘 09/11 12:40
profyang:所以你這裡其實要的是點乘或一般說的dot純量積 matlab就 09/11 12:41
profyang:給他另外一個符號.* 09/11 12:41
感謝這位大哥精闢的解說,讓我學到一課 ※ 編輯: boo0930 來自: 61.231.224.160 (09/11 12:43)