【线代&NumPy】第七章 - 向量2课后练习 | 标量三重积 | 距离计算 | 简述并提供代码
原创
©著作权归作者所有:来自51CTO博客作者柠檬叶子C的原创作品,请联系作者获取转载授权,否则将追究法律责任
💬 例1:标量三重积
三重积,又称混合积,是三个向量相乘的结果。向量空间中,有两种方法将三个向量相乘,得到三重积,分别称作标量三重积和向量三重积。
import numpy as np
def tripleProduct(u, v, w): # 计算标量三重积 u ․ (v × w)
M = np.zeros((3,3))
M[0:] = u
M[1:] = v
M[2:] = w
val = np.linalg.det(M) # 行向量为 u, v, w
return val
A = np.array([1, 2, 3])
B = np.array([0, 5, 2])
C = np.array([2, 2, 4])
D = np.array([2, 4, 1])
u = B-A
v = C-A
w = D-A
val = tripleProduct(u, v, w)
print("V: ", np.absolute(val))
🚩 运行结果:
V: 9.000000000000002
💬 例2:
import numpy as np
def distPt2Pl(A, W, P): # 计算距离
num = np.dot((P-A).T, W)
deno = np.linalg.norm(W)
val = np.absolute(num)/deno
return val
A = np.array([2, 3, 4])
W = np.array([1, 2, 3])
P = np.array([0, 1, 2])
print("距离 : ", distPt2Pl(A, W, P))
🚩 运行结果:
距离 : 3.20713490294909
参考文献
Introduction to Linear Algebra, International 4 th Edition by Gilbert Strang, Wellesley Cambridge Press.
百度百科[EB/OL]. []. https://baike.baidu.com/
本篇完。