Re: [討論] 請問 關於『Error using *』如何處理?

看板MATLAB作者 (彌瑟爾)時間7年前 (2017/10/08 20:08), 7年前編輯推噓5(506)
留言11則, 6人參與, 7年前最新討論串2/3 (看更多)
我跟原po有一樣的困擾 我在嘗試run下列code的時候 t=0:60:9600 M=1000000000 D=6.5 x=1700 C = (M/((4*3.14159265359*D*t)^1.5))*exp(-(x-0.64*t)/(4*D*t)) ============= 我想要的是 在t=60的時候 C=什麼數值 t=120的時候 C=什麼數值 t=180的時候 C=什麼數值 . . . 但是我依照其他版友說的『因為t是陣列 所以要加"."』 但是我嘗試各種方法 都失敗告終 囧 現在只好把t一個一個手動輸入 求出各個C值 然後我看了版友們 回應原PO的推文 試過之後 還是沒辦法弄出來 會遇到各種失敗 囧 請問各位大大 要把t當陣列處理的話(t=0:60:9600) 我究竟要怎麼改 才會成功~__~ 薄酬P幣 1000P 感謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 49.219.163.95 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1507464499.A.BDD.htmlMizar:轉錄至看板 Programming 10/08 20:08

10/08 20:24, 7年前 , 1F
for loop
10/08 20:24, 1F

10/08 21:53, 7年前 , 2F
*是矩陣計算,.*是每個對應元素的相乘,這是基本功
10/08 21:53, 2F
不爭氣的說一下 囧 我用.*.^跑出來的都是同一個數值 很明顯錯誤 請問可以就這個算式為範例 教一下小的嗎O.Q

10/08 21:56, 7年前 , 3F
樓上正解。另,明明有pi可用,m用1e7 ok?
10/08 21:56, 3F

10/08 21:57, 7年前 , 4F
1e9, 剛剛沒數
10/08 21:57, 4F

10/08 22:00, 7年前 , 5F
突然發現為何你算式和他有點像?
10/08 22:00, 5F
這是擴散方程式 我剛好再做跟擴散有關的東西 ※ 編輯: Mizar (49.219.163.95), 10/08/2017 22:38:43

10/08 22:58, 7年前 , 6F
a=[1,2] b=[3,6] a.*b試過後學着改成你要的
10/08 22:58, 6F

10/08 23:13, 7年前 , 7F
因為你t是向量(矩陣)並非純量。
10/08 23:13, 7F

10/08 23:14, 7年前 , 8F
google一下 *、/ 與 .*、./ 的差別
10/08 23:14, 8F

10/09 00:16, 7年前 , 9F
全部的乘或除前面都要加點喔!
10/09 00:16, 9F

10/09 00:26, 7年前 , 10F
還有指數前面
10/09 00:26, 10F

10/09 12:41, 7年前 , 11F
感謝大家
10/09 12:41, 11F
文章代碼(AID): #1PsXKplT (MATLAB)
文章代碼(AID): #1PsXKplT (MATLAB)