我在Sympy中有一個索引符號x
,並且表達式是第二度單項式的和,如x[1]*x[2] + x[3]**2 + x[4]*x[1]
。我想將這樣一個表達式轉換爲x[1,2] + x[3,3] + x[4,1]
,即替換x[i]*x[j] -> x[i,j]
x [i] * x [j]用x [i,j]的Sympy替換
有一個可能出現的索引的上限,所以我可以構造一個大表,硬編碼每個替換。有沒有更好的辦法?
迴應評論 - 創建X我寫
from sympy.tensor import IndexedBase
x = IndexedBase('x')
你可以顯示你用來創建x的代碼嗎? – smichr 2014-12-04 21:20:33
請注意,它可能會給'x [i,j]'或它可能會給'x [j,i]'。 – asmeurer 2014-12-04 22:29:00