0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何利用Python实现正割算法呢

云深之无迹 来源:云深之无迹 作者:云深之无迹 2022-07-13 09:48 次阅读

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

pYYBAGLOJKOAYQ2_AABGf5lgnzo764.jpg

示意图

pYYBAGLOJLmAcoOdAAA7-QwSYEQ221.jpg

迭代的起点

poYBAGLOJNCAKk9jAAB-bSDgQPo113.jpg

推广的公式

poYBAGLOJOmAKUmIAAB7P_uKDDA101.jpg

核心code,直接放上去

poYBAGLOJP-AYlIpAACG78hYIBE887.jpg

眼熟不

poYBAGLOJRiAWzPuAABtPk06EHI705.jpg

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

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

poYBAGLOJTCAZEAEAAC7kP1UPOs255.jpg

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

poYBAGLOJUSAbQbmAABoU4krEmI955.jpg

引入

pYYBAGLOJViAL9k8AAB4XGXFOQ4848.jpg

写好要计算的函数

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 = 0
plt.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()



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 算法
    +关注

    关注

    23

    文章

    4612

    浏览量

    92879
  • python
    +关注

    关注

    56

    文章

    4796

    浏览量

    84671

原文标题:Python实现所有算法-正割法(Secant)

文章出处:【微信号:TT1827652464,微信公众号:云深之无迹】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    一个月速成python+OpenCV图像处理

    适用于哪些场景,然后通过Python编写代码来实现这些算法,并应用于实际项目中,实现图像的检测、识别、分类、定位、测量等目标。本文将介绍一个高效学习
    的头像 发表于 11-29 18:27 139次阅读
    一个月速成<b class='flag-5'>python</b>+OpenCV图像处理

    【「从算法到电路—数字芯片算法的电路实现」阅读体验】+内容简介

    内容简介这是一本深入解读基础算法及其电路设计,以打通算法研发到数字IC设计的实现屏障,以及指导芯片设计工程师从底层掌握复杂电路设计与优化方法为目标的专业技术书。任何芯片(如WiFi芯片、5G芯片
    发表于 11-21 17:14

    【「从算法到电路—数字芯片算法的电路实现」阅读体验】+一本介绍基础硬件算法模块实现的好书

    作为嵌入式开发者往往比较关注硬件和软件的协调。本书介绍了除法器,信号发生器,滤波器,分频器等基本算法的电路实现,虽然都是基础内容,但是也是最常用到的基本模块,本书的内容比较对本人胃口。 我们先来
    发表于 11-20 13:42

    如何使用Python实现PID控制

    PID控制(比例-积分-微分控制)是一种常见的反馈控制算法,广泛应用于工业控制系统中。在Python实现PID控制,我们可以遵循以下步骤: 1. 理解PID控制原理 PID控制器有三个主要参数
    的头像 发表于 11-14 09:09 467次阅读

    采用pcm9211的模拟输入1K的正弦波信号,发现正弦波信号输出半波了,请问需要怎么设置

    我采用pcm9211的模拟输入1K的正弦波信号,发现正弦波信号输出半波了,请问需要怎么设置
    发表于 10-21 08:24

    想通过使用AIC3254降噪,在purepath中的算法模块中哪个比较合适

    请问想通过使用AIC3254降噪,在purepath中的算法模块中哪个比较合适?查找资料发现有双mic降噪的方式,不知道3254芯片能否可以实现
    发表于 10-14 06:09

    利用Python脚本登录到交换机并创建VLAN

    本文将详细介绍如何利用Python脚本登录到交换机并创建VLAN。
    的头像 发表于 08-12 17:59 578次阅读

    Python建模算法与应用

    上成为理想的脚本语言,特别适用于快速的应用程序开发。本文将详细介绍Python在建模算法中的应用,包括常见的建模算法Python在建模中的优势、常用库以及实际案例。
    的头像 发表于 07-24 10:41 553次阅读

    如何实现Python复制文件操作

    Python 中有许多“开盖即食”的模块(比如 os,subprocess 和 shutil)以支持文件 I/O 操作。在这篇文章中,你将会看到一些用 Python 实现文件复制的特殊方法。下面我们开始学习这九种不同的方法来
    的头像 发表于 07-18 14:53 421次阅读

    利用Matlab函数实现深度学习算法

    在Matlab中实现深度学习算法是一个复杂但强大的过程,可以应用于各种领域,如图像识别、自然语言处理、时间序列预测等。这里,我将概述一个基本的流程,包括环境设置、数据准备、模型设计、训练过程、以及测试和评估,并提供一个基于Matlab的深度学习图像分类示例。
    的头像 发表于 07-14 14:21 2205次阅读

    神经网络的基本原理及Python编程实现

    神经网络作为深度学习算法的基本构建模块,模拟了人脑的行为,通过互相连接的节点(也称为“神经元”)实现对输入数据的处理、模式识别和结果预测等功能。本文将深入探讨神经网络的基本原理,并结合Python编程
    的头像 发表于 07-03 16:11 663次阅读

    PMSM控制利用foc算法,静止状态下是如何启动的?

    PMSM控制利用foc算法,静止状态下是如何启动的,跟无刷直流电机梯形波控制的启动方案一样吗?
    发表于 04-01 06:22

    通过Python脚本实现WIFI密码的自动猜解

    本文将记录学习下如何通过 Python 脚本实现 WIFI 密码的自动猜解。
    的头像 发表于 01-25 10:46 3437次阅读
    通过<b class='flag-5'>Python</b>脚本<b class='flag-5'>实现</b>WIFI密码的自动猜解

    如何使用Python进行图像识别的自动学习自动训练?

    如何使用Python进行图像识别的自动学习自动训练? 使用Python进行图像识别的自动学习和自动训练需要掌握一些重要的概念和技术。在本文中,我们将介绍如何使用Python中的一些常用库和算法
    的头像 发表于 01-12 16:06 591次阅读

    如何使用Python PySNMP模块获取设备指标

    PySNMP 是一个跨平台的纯Python SNMP 引擎实现
    的头像 发表于 01-12 13:59 3141次阅读