向量的三重积公式是经常会在向量代数中使用到的恒等式,它的表达形式如下所示: a ? × ( b ? × c ? ) = ( a ? ? c ? ) b ? ? ( a ? ? b ? ) c ? \vec{a}\times\left(\vec{b}\times\vec{c}\right) = \left(\vec{a}\cdot\vec{c}\right)\vec{b}-\left(\vec{a}\cdot\vec{b}\right)\vec{c} a ×(b ×c )=(a ?c )b ?(a ?b )c
我们可以使用以下python代码来进行证明(我们对上式稍微变形一下证明这个恒等式即可) a ? × ( b ? × c ? ) ? ( a ? ? c ? ) b ? + ( a ? ? b ? ) c ? = 0 \vec{a}\times\left(\vec{b}\times\vec{c}\right) – \left(\vec{a}\cdot\vec{c}\right)\vec{b}+\left(\vec{a}\cdot\vec{b}\right)\vec{c}=0 a ×(b ×c )?(a ?c )b +(a ?b )c =0
import sympy as symfrom sympy import sin,cos,diffx_a,y_a,z_a,x_b,y_b,z_b,x_c,y_c,z_c = sym.symbols(‘x_a,y_a,z_a,x_b,y_b,z_b,x_c,y_c,z_c’)a = sym.Matrix([x_a,y_a,z_a])b = sym.Matrix([x_b,y_b,z_b])c = sym.Matrix([x_c,y_c,z_c])A = a.cross(b.cross(c))B = a.dot(c)*bC = a.dot(b)*cprint(sym.simplify(A-B+C))
输出的结果为:
可见,这个恒等式是成立的。
当然,我们也可以手动计算,计算量稍微大一点,需要耐心和仔细。
利用三重积公式,我们可以得到另外一个有趣的恒等式,即:
a ? × ( b ? 美国高防vps × c ? ) + b ? × ( c ? × a ? ) + c ? × ( a ? × b ? ) = 0 \vec{a}\times\left(\vec{b}\times\vec{c}\right) + \vec{b}\times\left(\vec{c}\times\vec{a}\right) + \vec{c}\times\left(\vec{a}\times\vec{b}\right) = 0 a ×(b ×c )+b ×(c ×a )+c ×(a ×b )=0
我们也可以直接使用python程序进行证明:
import sympy as symfrom sympy import sin,cos,diffx_a,y_a,z_a,x_b,y_b,z_b,x_c,y_c,z_c = sym.symbols(‘x_a,y_a,z_a,x_b,y_b,z_b,x_c,y_c,z_c’)a = sym.Matrix([x_a,y_a,z_a])b = sym.Matrix([x_b,y_b,z_b])c = sym.Matrix([x_c,y_c,z_c])A = a.cross(b.cross(c))B = b.cross(c.cross(a))C = c.cross(a.cross(b))print(sym.simplify(A+B+C))
输出的结果为:
可见,这个恒等式是成立的。
当然,我们也可以手动计算,直接利用三重积公式展开然后合并同类项即可。
33043412