【问题标题】:Derivative of trigonometric functions python三角函数python的导数
【发布时间】:2020-04-25 19:16:43
【问题描述】:

我正在做一个小项目,并为不同的数值分析方法构建一个计算器。我正在努力解决的是计算三角函数的导数。对于导数的计算,我使用的是 sympy 和数学 Python 库。

print(sym.diff(math.cos(x)))

这个问题的正确答案应该是-sin(x),但是我得到了:

TypeError: can't convert expression to float

有什么方法可以正确计算三角函数的导数?

【问题讨论】:

    标签: python math sympy


    【解决方案1】:

    SymPy 有自己的函数,知道如何区分。 math 版本只知道如何为数字输入给出数字答案。

    >>> from sympy import sin
    >>> from sympy.abc import x
    >>> sin(x).diff(x)
    cos(x)
    

    【讨论】:

    • 你知道什么,我今天没学到什么新东西。谢谢@smichr
    【解决方案2】:

    这应该让你知道如何去做。

    import sympy as sym
    import math
    
    x=sym.symbols('x') 
    def f(x):
        return x**2
    
    print(sym.diff(f(x)))
    

    【讨论】:

    • 请您详细说明一下吗?我使用正则方程没有问题,它的三角函数会引发错误。我尝试按照您的建议通过函数执行此操作,但是我仍然遇到相同的错误
    • 我认为您无法获得三角函数的精确导数。因为简而言之,发生微积分是因为你除以 0 而 python 做不到。
    猜你喜欢
    • 2012-06-06
    • 1970-01-01
    • 2019-05-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多