数值分析第七章节 用Python实现非线性方程与方程组的数值解法

news2024/11/17 13:48:34

参考书籍:数值分析 第五版 李庆杨 王能超 易大义编 第7章 非线性方程与方程组的数值解法
文章声明:如有发现错误,欢迎批评指正


7.1方程求根与二分法:太简单了(程序设计竞赛这些都是基本)。直接跳过。注意一下一些概念。
7.2不动点迭代法及其收敛性:7.2.1不动点与不动点迭代法: f ( x ) = 0 f(x)=0 f(x)=0恒等变为 x = φ ( x ) x=\varphi(x) x=φ(x)。用迭代方程 x k + 1 = φ ( x k ) x_{k+1}=\varphi(x_k) xk+1=φ(xk) x ( 0 ) x_{(0)} x(0)随便选。如 lim ⁡ k → ∞ x k = x ∗ \lim\limits_{k\rightarrow\infty}x_k=x^* klimxk=x,则称迭代方程收敛;反之,发散。7.2.2不动点的存在性与迭代法的收敛性:定理1 设 φ ( x ) ∈ C [ a , b ] \varphi(x)\in C[a,b] φ(x)C[a,b]满足以下两个条件:(1)对任意的 x ∈ [ a , b ] x\in[a,b] x[a,b] a ≤ φ ( x ) ≤ b a\leq\varphi(x)\leq b aφ(x)b(2)存在正常数 L < 1 L<1 L<1,使对任意 x , y ∈ [ a , b ] x,y\in[a,b] x,y[a,b]都有 ∣ φ ( x ) − φ ( y ) ∣ ≤ L ∣ x − y ∣ |\varphi(x)-\varphi(y)|\leq L|x-y| φ(x)φ(y)Lxy,则 φ ( x ) \varphi(x) φ(x) [ a , b ] [a,b] [a,b]上存在唯一的不动点 x ∗ x^* x。证明可以看下,不是特别困难。7.2.3局部收敛性与收敛阶:不作讨论。

迭代法求解 x e x − 1 = 0 xe^x-1=0 xex1=0

from math import e
x=0.5
print(f"k={0:02d},{x:.10f}")
for i in range(10):
    x=1/pow(e,x)
    print(f"k={i+1:02d},{x:.10f}")

在这里插入图片描述

7.3迭代收敛的加速方法:不作讨论
7.4牛顿法:7.4.1牛顿法及其收敛性:牛顿法 x k + 1 = x k − f ( x k ) f ′ ( x k ) , k = 0 , 1 , … , x_{k+1}=x_k-\frac{f(x_k)}{f'(x_k)},k=0,1,\dots, xk+1=xkf(xk)f(xk),k=0,1,,(又切线法)
7.4.2牛顿法的应用举例:不作讨论。7.4.3简化牛顿法与牛顿下山法。牛顿法的优点是收敛快,缺点是每步迭代要计算 f ( x k ) f(x_k) f(xk) f ′ ( x k ) f'(x_k) f(xk),计算量较大且有时 f ′ ( x k ) f'(x_k) f(xk)计算较困难;二是初始近似 x 0 x_0 x0只在根 x ∗ x^* x附近才能保证收敛,如 x 0 x_0 x0给的不合适可能不收敛。为克服这两个缺点,通常可用下述方法。简化牛顿法 x k + 1 = x k − 1 f ′ ( x 0 ) f ( x k ) x_{k+1}=x_k-\frac{1}{f'(x_0)}f(x_k) xk+1=xkf(x0)1f(xk);牛顿下山法 x k + 1 = x k − λ f ( x k ) x_{k+1}=x_k-\lambda f(x_k) xk+1=xkλf(xk) λ \lambda λ为下山因子,从1开取,逐次减半,直到满足条件 ∣ f ( x k + 1 ) ∣ < ∣ f ( x k ) ∣ |f(x_{k+1})|<|f(x_k)| f(xk+1)<f(xk)止。

牛顿法求解 x e x − 1 = 0 xe^x-1=0 xex1=0

from math import e
def func(x):
    return x-(x*pow(e,x)-1)/(pow(e,x)*(1+x))
x=0.5
print(f"k={0:02d},{x:.10f}")
for i in range(10):
    x=func(x)
    print(f"k={i+1:02d},{x:.10f}")

在这里插入图片描述

简化牛顿法求解 x e x − 1 = 0 xe^x-1=0 xex1=0

from math import e
def func(x):
    return x*pow(e,x)-1
x=0.5
print(f"k={0:02d},{x:.10f}")
C=1/(pow(e,x)*(1+x))
for i in range(10):
    x=x-C*func(x)
    print(f"k={i+1:02d},{x:.10f}")

在这里插入图片描述
算了,开摆。就这样吧,不想写了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/809906.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PUBG(最短路BFS)

题目&#xff1a;https://ac.nowcoder.com/acm/contest/62106/E 最近&#xff0c;喜爱ACM的PBY同学沉迷吃鸡&#xff0c;无法自拔&#xff0c;于是又来到了熟悉的ERANGEL。经过一番搜寻&#xff0c;PBY同学准备动身前往安全区&#xff0c;但是&#xff0c;地图中埋伏了许多LYB&…

黑苹果如何在macOS Sonoma中驱动博通网卡

准备资源&#xff08;百度&#xff1a;黑果魏叔 下载&#xff09; 资源包中包含&#xff1a;AirportBrcmFixup.kext/IOSkywalkFamily.kext/IO80211FamilyLegacy.kext/OpenCore-Patcher 使用方法&#xff1a; 1.将 csr-active-config 设置为 03080000 全选代码 复制 2.在 …

Flutter ios真机调试连接断开后应用闪退

使用ios真机调试的时候&#xff0c;能正常打开应用&#xff0c;但是当数据线断开连接的时候&#xff0c;应用就会关闭&#xff0c;重新打开就会闪退。 原因是flutter默认在开发过程中使用debug模式编译 只需要将debug选择为release 重新编译就行。

AI工程师的崛起:填补AI革命中的空白

在一个拥有大约5000名语言学习模型&#xff08;LLM&#xff09;研究员&#xff0c;但大约有5000万软件工程师的世界中&#xff0c;供应限制决定了一种新型专业人才—AI工程师的迅猛增长。他们的崛起不仅仅是一种预测&#xff0c;更是对科技世界动态变化的必然反应。AI工程师作为…

AutoSAR系列讲解(实践篇)10.2-EcuM的上下电流程

目录 一、上电(StartUp) 二、下电(Shutdown) 三、睡眠(Sleep) 上下电,说白了就是给Ecu上下电后,Ecu的代码执行顺序。这里还讲到了大家可能经常会用到的Sleep流程,主要就是可以归纳为以下这张图,大家 掌握这张图就基本掌握了EcuM的上下电流程了。这张图的具体内容博…

MySQL的JSON操作

官网地址 1. MySQL json介绍 As of MySQL 5.7.8, MySQL supports a native JSON data type defined by RFC 7159 that enables efficient access to data in JSON (JavaScript Object Notation) documents. Automatic validation of JSON documents stored in JSON columns. …

CAPL(vTESTStudio) - CANCANFD信号检查

目录 一、获取目标报文数据 二、解析预期信号数据在目标报文中的数据

np.bincount、np.digitize、np.unique、np.histogram、np.searchsorted

np.bincount 简介 np.bincount是统计数组中数字出现数量的函数&#xff0c;数值n在输入数组x中每出现1次&#xff0c;则输出o的o[n]1。 函数 官方文档 函数参数&#xff1a; x: 输入&#xff0c;1维非负数组weights: 权重数组, 可选参数&#xff0c;如果指定了这一参数&am…

HCIP OSPF远离骨干非骨干区域-使用虚链路解决

虚链路 虚链路是OSPF针对不规则区域提出的一种解决方案&#xff0c;也被称为虚连接。 虚链路可以在任意两个ABR上建立&#xff0c;但是要求这两个ABR都有端口连接到一个相同的非骨干区域。 注&#xff1a;虚链路的建立是双向的&#xff0c;虚链路永远属于骨干区域&#xff0…

【学习笔记】关于图像YUV格式分类和排布方式的全学习

这里是尼德兰的喵学习笔记相关文章&#xff0c;欢迎您的访问&#xff01; 如果文章对您有所帮助&#xff0c;期待您的点赞收藏 让我们一起为芯片前端全栈工程师而努力 目录 前言 YUV格式导图 YUV444 packed planar I444 YV24 semi-planar NV24 NV42 YUV422 packed …

pytorch(6)——神经网络基本骨架nn.module的使用

1 神经网络框架 1.1 Module类的使用 NN (Neural network): 神经网络 Containers: 容器 Convolution Layers: 卷积层 Pooling layers: 池化层 Padding Layers: 填充层 Non-linear Activations (weighted sum, nonlinearity): 非线性激活 Non-linear Activations (other): 非线…

mpi4py包安装报错

报错情况 #include <mpi.h>^~~~~~~compilation terminated.failure.removing: _configtest.c _configtest.oerror: Cannot compile MPI programs. Check your configuration!!![end of output]note: This error originates from a subprocess, and is likely not a probl…

设备取电芯片LDR6328Q

2021年5月&#xff0c;USB-IF 协会发布了全新的USB PD3.1规范&#xff0c;该规范将快充功率上限从100 W提升至240W&#xff08;支持Extended Power Range&#xff0c;简称EPR&#xff09;。充电功率的提升也让USB PD的应用从手机、笔记本电脑&#xff0c;扩展到便携式设备、物联…

Flowable-中间事件-消息中间抛出事件

定义 消息中间事件指在流程中将一个消息事件作为独立的节点来运行。它是一种抛出事件&#xff0c;当流程 执行到消息中间事件时就会中断在这里&#xff0c;一直等待被触发&#xff0c;直接到该事件接收到相应的消息后&#xff0c;流 程沿后继路线继续执行。消息事件是一种引用…

页面访问控制远程仓库

页面访问权限控制 什么是jwt身份认证 在前后端分离模式的开发中&#xff0c;服务器如何知道来访者的身份呢&#xff1f; 在登录后&#xff0c;服务器会响应给用户一个 令牌 &#xff08;token&#xff09;令牌中会包括该用户的id等唯一标识浏览器收到令牌后&#xff0c;自己…

数据结构入门指南:链表(新手避坑指南)

目录 前言 1.链表 1.1链表的概念 1.2链表的分类 1.2.1单向或双向 1.2.2.带头或者不带头 1.2.33. 循环或者非循环 1.3链表的实现 定义链表 总结 前言 前边我们学习了顺序表&#xff0c;顺序表是数据结构中最简单的一种线性数据结构&#xff0c;今天我们来学习链表&#x…

数据结构: 线性表(顺序表实现)

文章目录 1. 线性表的定义2. 线性表的顺序表示:顺序表2.1 概念及结构2.2 接口实现2.2.1 顺序表初始化 (SeqListInit)2.2.2 顺序表尾插 (SeqListPushBack)2.2.3 顺序表打印 (SeqListPrint)2.2.6 顺序表销毁 (SeqListDestroy)2.2.5 顺序表尾删 (SeqListPopBack)2.2.6 顺序表头插 …

vue中各种混淆用法汇总

✨在生成、导出、导入、使用 Vue 组件的时候&#xff0c;像我这种新手就会常常被位于不同文件的 new Vue() 、 export default{} 搞得晕头转向。本文对常见用法汇总区分 new Vue() &#x1f4a6;Vue()就是一个构造函数&#xff0c;new Vue()是创建一个 vue 实例。该实例是一个…

UE5 与 C++ 入门教程·第二课:动画重定向

虚幻中的角色动画都是基于 骨骼网格体 &#xff08;Skeletal Mesh&#xff09;实现&#xff0c;换言之&#xff0c;动画是跟骨骼网格体绑定的。如果有两个骨骼网格体&#xff0c;各自有一套角色动画&#xff0c;那么就可以通过重定向&#xff08;Retargeting&#xff09;将两个…

cglib动态代理、jdk动态代理及spring动态代理使用

1.项目初始化 1.1 pom.xml <dependencies><!-- spring依赖 --><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>5.2.5.RELEASE</version></dependency>&l…