打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Python实现所有算法-正割法(Secant)
userphoto

2022.07.12 内蒙古

关注

正割法是近似的牛顿切线法,把求导用斜率代替,用切线不断逼近函数的单根。

示意图

迭代的起点

推广的公式

核心code,直接放上去

眼熟不

你可以编写一个简单的函数来测试这个功能

就是这么简单,当然了字数这么少,还成为不了一篇原创文章。再写一个小程序。

我们可以使用Matploatlib的绘图功能模拟

引入

写好要计算的函数

def Y(x):    global i    i = i+1    plt.plot([x, x], [0, (x**3-x-1)])    plt.plot([x, result(x)], [(x**3-x-1), 0])    temp = round(x-result(x), 5)    if(temp == 0.0):        print('正割法第', i, '次')        print('解得:', round(x, 5))        x = result(x)        y = (result(x)**3 - result(x) - 1)        plt.plot(x, y, ".")        plt.plot(x, y, "g-")        plt.annotate("(1.32472,1.32472)", xy=(result(x), (result(x)**3 - result(x) - 1)),                     xytext=(result(x) - 0.5, (result(x)**3 - result(x) - 1) + 2), color='k', fontsize=10)    else:        Y(result(x))

Y(2.7)
x = 0plt.title("secant method")x = np.linspace(0, 3)plt.xlim(0, 3) # 固定坐标plt.ylim(-5, 20)plt.plot(x, x**3-x-1, "b-")plt.grid(True)plt.plot([0, 3], [0, 0], "--")plt.show()
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
数学基础之微积分-导数
Matplotlib入门(一)
为你的数据添加置信区间
tensorflow学习(三):操作图片的tf.slice()函数
【python学习笔记】21:numpy傅里叶变换
Python之Matplotlib库常用函数大全(含注释)
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服