作者boo0930 (Delike)
看板MATLAB
標題[討論] 純量與向量
時間Wed Sep 11 11:03:36 2013
各位午安,小的今天早上在寫一個簡單的函數並跑圖形
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
1F:推 profyang:看不太懂你想問啥 不過我猜你要的是.* 09/11 11:08
好心的大大我修改了,這樣你看得懂嗎= =
※ 編輯: boo0930 來自: 61.231.224.160 (09/11 11:25)
2F:推 profyang:x=0:0.1:10; y=0.5*exp(x/3)-x.^2.*sin(x); plot(x,y); 09/11 11:43
3F:→ 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)
4F:推 profyang:所以就我說的阿XDD你要用.*和.^2 因為他是向量不可以直接 09/11 12:28
5F:→ profyang:* *代表矩陣相乘 所以你這邊要的應該是點乘 也就是.* 09/11 12:29
天啊,我成功了,真的很感謝你,但如果方便可以告訴我為什麼跟矩陣有關嗎?
※ 編輯: boo0930 來自: 61.231.224.160 (09/11 12:39)
6F:推 profyang:基本上你的變數matlab都是當作是矩陣(或說array比較好) 09/11 12:40
7F:→ profyang:所以他的基本運算都是照矩陣需要的寫的 *就是矩陣的乘 09/11 12:40
8F:→ profyang:所以你這裡其實要的是點乘或一般說的dot純量積 matlab就 09/11 12:41
9F:→ profyang:給他另外一個符號.* 09/11 12:41
感謝這位大哥精闢的解說,讓我學到一課
※ 編輯: boo0930 來自: 61.231.224.160 (09/11 12:43)