2013-04-05 40 views

回答

8

因爲情節,你沒有得到那個錯誤。你是因爲

temp=y^2 

相反,你應該使用

temp=y.^2 

^意味着矩陣功率得到它。 .^是元素的力量。你可以找到更多關於MATLAB運算符here。假設你有一個3x3的矩陣,magic(3)。

A=magic(3) 
A = 
    8  1  6 
    3  5  7 
    4  9  2 

這裏是矩陣A的平方(這是A * A,丹建議的):

A^2 
ans = 

    91 67 67 
    67 91 67 
    67 67 91 

這裏是含有A的元素的平方矩陣:

A.^2 
ans = 
    64  1 36 
    9 25 49 
    16 81  4 
+0

值得說明的是,由於您已經寫出了一個數值例子,所以'A^2'與'A * A'(即與自身的矩陣乘法)相同。 – Dan 2013-04-05 07:33:09

+0

好主意@丹。我編輯它。 – HebeleHododo 2013-04-05 07:37:26

0

作爲上述答案的替代方案,您可以考慮以下情況:

A = magic(3); 

temp = bsxfun(@times,A,A); 

其檢索的結果相同

temp = A.^2; 

.運營商將應用您方逐元素。 bsxfun完全一樣。

我希望這會有所幫助。