我使用代码
from sympy.physics.vector import *
RF = ReferenceFrame('e')
from sympy.physics.vector import gradient
scalar_field = 1/(sqrt(RF[0]**2+RF[1]**2+RF[2]**2))
gradient(scalar_field, RF)
输出
现在我想进行替换,e_x = 1等,或者可能是e_x = t。 有可能吗?怎么样?
答案 0 :(得分:1)
替换是使用subs
method执行的,例如:
gr = gradient(scalar_field, RF)
gr.subs({RF[0]: 1, RF[1]: 2, RF[2]: 3})
输出
- sqrt(14)/196*e.x - sqrt(14)/98*e.y - 3*sqrt(14)/196*e.z
您也可以替换公式,比如说
var('t')
gr.subs({RF[0]: 1, RF[1]: t, RF[2]: 3*t+2})