首页 > 文章列表 > Java中如何表示矩阵和向量的乘法

Java中如何表示矩阵和向量的乘法

java
267 2023-04-28

Java矩阵向量乘法怎么表示

向量

点乘

公式:a ·b = |a| * |b| * cosθ 点乘又叫向量的内积、数量积,是一个向量和它在另一个向量上的投影的长度的乘积;是标量。 点乘反映着两个向量的“相似度”,两个向量越“相似”,它们的点乘越大。



例:若向量a=(a1,b1,c1),向量b=(a2,b2,c2)

向量a·向量b=a1a2+b1b2+c1c2

叉乘

公式:a × b = |a| * |b| * sinθ 叉乘又叫向量的外积、向量积。求下来的结果是一个向量

模长:|向量c|=|向量a×向量b|=|a||b|sin

方向:a向量与b向量的向量积的方向与这两个向量所在平面垂直,且遵守右手定则。



向量a×向量b=

| i j k|

|a1 b1 c1|

|a2 b2 c2|

=(b1c2-b2c1,c1a2-a1c2,a1b2-a2b1) (主对角线为正)

(i、j、k分别为空间中相互垂直的三条坐标轴的单位向量)

矩阵

元素乘法:np.multiply(a,b)

矩阵乘法:np.dot(a,b) 或 np.matmul(a,b) 或 a.dot(b) 或直接用 a @ b !

唯独注意:*,在 np.array 中重载为元素乘法,在 np.matrix 中为矩阵乘法!

非常好的链接

import numpy as np

a=np.array([[1,2],[3,4]])#生成数组矩阵b=np.array([[2,2],[1,3]])print(np.dot(a,b))>>[[ 4  8]

  [10 18]]