MATLAB逐元運算

by 龍冥
code

你有在寫MATLAB的時候,覺得他的乘除法怪怪的,不如你的預期嗎?
有可能是你沒有使用逐元運算來去做乘除造成的,若直接輸入*/的符號時,會做數學的矩陣運算,試試看在符號前面再加上「.」,變成逐元乘除法,來解決你遇到的疑惑?

陣列運算(array peration)或逐元運算(element by element operation;元素對元素)

符號運算形式範例
.*陣列乘法A.*B
./陣列右除A./B
.\陣列左除A.\B
.^陣列指數運算A.^B

需要注意逐元運算中,需要兩個相同維度大小的陣列才能運算,若是不同維度的運算,會產生錯誤訊息。

image 19

矩陣運算(matrix operation)

符號運算形式範例
*乘法A*B
/右除A/B
\左除A\B
^指數運算A^B

image 18
有無逐元運算,會得到不同的結果

Related Posts

Copyright © 2024 龍冥 | 本站採用 reCAPTCHA保護機制 隱私權&條款