2017-09-03 48 views
2

尋找在Documentantion的vector package的我沒有發現任何方式把兩個向量的交叉/點積不計算表達式,如而不會簡化操作結果中的重複術語。這可能嗎?Sympy十字和點產品無評價

+0

已在幾周前加入到主分支。你需要最新的開發分支。 –

+0

謝謝你的回答。你可以創建一個問題的答案(可能有一個鏈接),以便我可以接受它嗎? – falematte

回答

2

假設你有最新的開發版本:

在矢量模塊還有的dotcross函數計算點和交叉的產品,並創建表示同一產品的未評估的表達式的類DotCross

導入向量模塊和SymPy:

In [1]: from sympy import *; from sympy.vector import * 

定義的座標系:

In [2]: C = CoordSys3D("C") 

此時,C.i, C.j, C.k是基矢量。

立即評估跨產品(小寫cross):

In [3]: cross(C.i, C.j) 
Out[3]: C.k 

讓我們用一個漂亮的打印機打印交叉的產物,爲運營商:

In [4]: init_printing() 

跨產品在未計算的形式(名稱以大寫C letter Cross):

In [5]: Cross(C.i, C.j) 
Out[5]: (C_i)×(C_j) 

來執行計算,只需使用.doit()

In [6]: Cross(C.i, C.j).doit() 
Out[6]: C_k 
+0

我在哪裏可以找到對此新功能的引用? – falematte