代码之家  ›  专栏  ›  技术社区  ›  Vilius Zem

用subs替换Sympy错误

  •  1
  • Vilius Zem  · 技术社区  · 7 年前
    q1 = Function('q1')(t)
    f=cos(q1).diff(t)
    f.subs(q1,pi/2)
    

    我有一个 function f = -sin(q1)*q1' q1=pi/2 我在这里用错方法了吗?

    1 回复  |  直到 7 年前
        1
  •  0
  •   user6764549 user6764549    7 年前

    q1(t) = pi/2 ,一个常数函数。所以它的导数必然是 0 -Derivative(q1(t),t) 只有在以下情况下才正确 q1 q1' 相互独立,就像在变分法中一样。在这种情况下,最好使用两个不同的变量——一个用于 还有一个 第一季度' . 如果我们已经知道函数 f 最好直接定义它,而不是像

    p, q, t = symbols('p, q, t')
    f = -sin(p)*q    
    f.subs( p, pi/2)
    

    如果出现以下情况,这应该是正确的替代方法: 第一季度 第一季度' 相互独立。