十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
先求得一个函数的导函数,然后令导函数=0
创新互联公司是一家专业提供中方企业网站建设,专注与成都做网站、成都网站设计、H5建站、小程序制作等业务。10年已为中方众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
得到关于一个x的值
他也许是极大值
或是极小值
(还要考虑定义域进行取舍),然后将所求的极值和两个端点值带入原函数进行比较
,最后确定min
max就行
#coding:utf-8
#一阶导
def fun1(X, WINDOW = 5):
result = []
for k in range(WINDOW, len(X)-WINDOW):
mid = (X[k+WINDOW]-X[k-WINDOW])/(2*WINDOW)
result.append(mid)
return result
#二阶导
def fun2(X, WINDOW = 5):
result = []
for k in range(WINDOW, len(X)-WINDOW):
mid = (X[k+WINDOW]-2*X[k]+X[k-WINDOW])/(WINDOW*WINDOW)
result.append(mid)
return result
X = [1,2,3,4,5,6,7,8,9,10]
result1 = fun1(X, 3)
result2 = fun2(X, 2)
如上自己写,或者用numpy自带的多项式的n阶导函数。
得到多项式的n阶导函数:多项式.deriv(m = n)
from numpy import *
X = [1,2,3,4,5,6,7,8,9,10]
result = X.deriv(m = n) #n是导数阶数
使用sympy.diff求导
from sympy import *init_printing(use_unicode=True)x = symbols("x")f = log(x)
一阶导数
diff(f, x)
二阶导数可以传入第三个参数,表示阶数
diff(f, x, 2)
希望可以帮助到你。
你需要知道在任意点多的一阶导数
也就是已知f'(n)=g(n)
那么f(n)=∫g(n)dn
计算这个积分就可以了
打开python运行环境。
导入微分的模块包:from sympy import *。
定义符号变量:x = symbols('x')
定义一个函数:f = x**9
diff = diff(f,x)求导
最后输入diff,即可显示其变量值了。
众多python培训视频,尽在python学习网,欢迎在线学习!
python有个符号计算的库叫sympy,可以直接用这个库求导数然后解导数=0的方程,参考代码如下:
from sympy import *
x = symbols('x')
y = (x-3)**2+2*sin(x)-3*x+1
eq = diff(y, x)
solve(eq, x)