矩陣之間也可以進行乘法運算,但其運算過程相對複雜得多。與算術乘法不同,矩陣乘法並不是多個矩陣之和,它有自己的邏輯。其演算法的具體描述為:假設m行n列的矩陣A和r行v列的矩陣B相乘得到矩陣C,則首先矩陣A和矩陣B必須滿足n=r,也就是說,第一個矩陣的列數必須和第二個矩陣的行數相同。在運算時,第一個矩陣A的第i行的所有元素同第二個矩陣B第j列的元素對應相乘,並把相乘的結果相加,最終得到的值就是矩陣C的第i行第j列的值。
這個過程用數學公式描述為:
C(i,j)=A(i1,i2,i3……in)×B(j1,j2,j3……jv)
進而推出:
C(i,j)= i1×j1+i2 ×j2+i3×j3……+in×jv
從矩陣的乘法運算過程可以看出,矩陣A和矩陣B相乘的產生的矩陣C,必然是m行v列的。例如,一個5×3的矩陣同一個3×7的矩陣相乘,結果必然是產生一個5×7的矩陣。而一個5×3的矩陣同一個5×7的矩陣,則無法相乘。
在圖形變換時,經常用到多次變換,這會造成多個矩陣相乘。如果多個矩陣相乘,則等價於前兩個矩陣相乘的結果再乘以第三個矩陣,以此向後類推。例如,假設ABCD都是矩陣,則A×B×C×D=((A×B)×C)×D。矩陣乘法同數字乘法不同,其運算的先後順序十分敏感,矩陣A乘矩陣B的結果可能完全不同於矩陣B乘矩陣A的結果,有時甚至根本無法相乘。
矩陣相乘要求矩陣之間列與行前後對應相等。為了方便操作,在圖形學的實際應用中變換矩陣都是行數和列數相等的方陣。對於行和列不相等的矩陣,甚至要人為補足。
矩陣之間也可以進行乘法運算,但其運算過程相對複雜得多。與算術乘法不同,矩陣乘法並不是多個矩陣之和,它有自己的邏輯。其演算法的具體描述為:假設m行n列的矩陣A和r行v列的矩陣B相乘得到矩陣C,則首先矩陣A和矩陣B必須滿足n=r,也就是說,第一個矩陣的列數必須和第二個矩陣的行數相同。在運算時,第一個矩陣A的第i行的所有元素同第二個矩陣B第j列的元素對應相乘,並把相乘的結果相加,最終得到的值就是矩陣C的第i行第j列的值。
這個過程用數學公式描述為:
C(i,j)=A(i1,i2,i3……in)×B(j1,j2,j3……jv)
進而推出:
C(i,j)= i1×j1+i2 ×j2+i3×j3……+in×jv
從矩陣的乘法運算過程可以看出,矩陣A和矩陣B相乘的產生的矩陣C,必然是m行v列的。例如,一個5×3的矩陣同一個3×7的矩陣相乘,結果必然是產生一個5×7的矩陣。而一個5×3的矩陣同一個5×7的矩陣,則無法相乘。
在圖形變換時,經常用到多次變換,這會造成多個矩陣相乘。如果多個矩陣相乘,則等價於前兩個矩陣相乘的結果再乘以第三個矩陣,以此向後類推。例如,假設ABCD都是矩陣,則A×B×C×D=((A×B)×C)×D。矩陣乘法同數字乘法不同,其運算的先後順序十分敏感,矩陣A乘矩陣B的結果可能完全不同於矩陣B乘矩陣A的結果,有時甚至根本無法相乘。
矩陣相乘要求矩陣之間列與行前後對應相等。為了方便操作,在圖形學的實際應用中變換矩陣都是行數和列數相等的方陣。對於行和列不相等的矩陣,甚至要人為補足。