数值分析笔记(五)线性方程组解法
三角分解法

A的杜利特分解公式如下:
u 1 j = a 1 j ( j = 1 , 2 , ⋯ , n ) , l i 1 = a i 1 / u 11 ( i = 2 , 3 , ⋯ , n ) , u k j = a k j − ∑ m = 1 k − 1 l b m u m j ⇒ a k j ( j = k , k + 1 , ⋯ , n ) , l i k = ( a i k − ∑ m = 1 k − 1 l i n u m k ) / u k k ⇒ a k k ( i = k + 1 , k + 2 , ⋯ , n ) ( k = 2 , 3 , ⋯ , n ) . \begin{aligned}&u_{1j}=a_{1j}\quad(j=1,2,\cdots,n),\\&l_{i1}=a_{i1}/u_{11}\quad(i=2,3,\cdots,n) ,\\&u_{kj}=a_{kj}-\sum_{m=1}^{k-1}l_{bm}u_{mj}\Rightarrow a_{kj}\quad(j=k,k+1,\cdots,n) ,\\&l_{ik}=\left(a_{ik}-\sum_{m=1}^{k-1}l_{in}u_{mk}\right)\Big/u_{kk}\Rightarrow a_{kk}\quad(i=k+1,k+2,\cdots,n)\\&(k=2,3,\cdots,n).\end{aligned} u1j=a1j(j=1,2,⋯,n),li1=ai1/u11(i=2,3,⋯,n),ukj=akj−m=1∑k−1lbmumj⇒akj(j=k,k+1,⋯,n),lik=(aik−m=1∑k−1linumk)/ukk⇒akk(i=k+1,k+2,⋯,n)(k=2,3,⋯,n).
楚列斯基分解
对于n阶(n>1)对称正定矩阵,楚列斯基分解 A = L ∗ L T A=L*L^T A=L∗LT,是唯一的,即
( a 11 a 12 ⋯ a 1 n a 21 a 22 ⋯ a 2 n ⋮ ⋮ ⋮ a n 1 a n 2 ⋯ a m ) = ( l 11 l 21 l 22 ⋮ ⋮ ⋱ l n 1 l n 2 ⋯ l m ) ( l 11 l 21 ⋯ l n 1 l 22 ⋯ l n 2 ⋱ ⋮ l m ) , \begin{pmatrix}a_{11}&a_{12}&\cdots&a_{1n}\\a_{21}&a_{22}&\cdots&a_{2n}\\\vdots&\vdots&&\vdots\\a_{n1}&a_{n2}&\cdots&a_{m}\end{pmatrix}=\begin{pmatrix}l_{11}\\l_{21}&l_{22}\\\vdots&\vdots&\ddots\\l_{n1}&l_{n2}&\cdots&l_{m}\end{pmatrix}\begin{pmatrix}l_{11}&l_{21}&\cdots&l_{n1}\\&l_{22}&\cdots&l_{n2}\\&&\ddots&\vdots\\&&&l_{m}\end{pmatrix}, a11a21⋮an1a12a22⋮an2⋯⋯⋯a1na2n⋮am = l11l21⋮ln1l22⋮ln2⋱⋯lm l11l21l22⋯⋯⋱ln1ln2⋮lm ,
且
{ l k k = a k k − ∑ m = 1 k − 1 l k m 2 , l i k = ( a i k − ∑ m = 1 k − 1 l i m l k m ) / l k k ( i = k + 1 , k + 2 , ⋯ , n ) \begin{aligned}&\begin{cases}l_{kk}&=\sqrt{a_{kk}-\sum_{m=1}^{k-1}l_{km}^2} ,\\l_{ik}&=\left(a_{ik}-\sum_{m=1}^{k-1}l_{im}l_{km}\right)/l_{kk}&(i=k+1,k+2,\cdots,n)\end{cases}\end{aligned} ⎩ ⎨ ⎧lkklik=akk−∑m=1k−1lkm2,=(aik−∑m=1k−1limlkm)/lkk(i=k+1,k+2,⋯,n)
向量范数
∥ x ∥ 1 = ∑ i = 1 n ∣ x i ∣ , ∥ x ∥ 2 = ∑ i = 1 n x i 2 , ∥ x ∥ ∞ = max 1 ⩽ i ⩽ n ∣ x i ∣ , \begin{gathered} \parallel x\parallel_1=\sum_{i=1}^n\mid x_i\mid, \\ \parallel x\parallel_2=\sqrt{\sum_{i=1}^nx_i^2} , \\ \parallel x\parallel_\infty=\max_{1\leqslant i\leqslant n}\mid x_i\mid, \end{gathered} ∥x∥1=i=1∑n∣xi∣,∥x∥2=i=1∑nxi2,∥x∥∞=1⩽i⩽nmax∣xi∣,
矩阵范数
∥ A ∥ 1 = max 1 ⩽ j ⩽ n ∑ i = 1 n ∣ a i j ∣ , 列范数 ∥ A ∥ ∞ = max 1 ⩽ i ⩽ n ∑ j = 1 n ∣ a i j ∣ , 行函数 ∥ A ∥ 2 = λ max ( A T A ) , 谱范数 ∥ A ∥ F = ∑ i = 1 n ∑ j = 1 n a i j 2 . F − 范数 \begin{gathered} \parallel A\parallel_{1}=\max_{1\leqslant j\leqslant n}\sum_{i=1}^{n}\mid a_{ij}\mid, 列范数\\ \parallel A\parallel_{\infty}=\max_{1\leqslant i\leqslant n}\sum_{j=1}^{n}\mid a_{ij}\mid , 行函数\\ \parallel A\parallel_{2}=\sqrt{\lambda_{\max}(A^{\mathrm{T}}A)} , 谱范数\\ \parallel A\parallel_F=\sqrt{\sum_{i=1}^n\sum_{j=1}^na_{ij}^2}. F-范数 \end{gathered} ∥A∥1=1⩽j⩽nmaxi=1∑n∣aij∣,列范数∥A∥∞=1⩽i⩽nmaxj=1∑n∣aij∣,行函数∥A∥2=λmax(ATA),谱范数∥A∥F=i=1∑nj=1∑naij2.F−范数
矩阵A的条件数
C o n d ( A ) = ∥ A − 1 ∥ ∥ A ∥ \mathrm{Cond}(A)=\parallel A^{-1}\parallel\parallel A\parallel Cond(A)=∥A−1∥∥A∥
简单迭代法
设有n阶线性方程组 A x = b Ax=b Ax=b, A A A为n阶非奇异矩阵, A x = b Ax=b Ax=b等价变形为 x = B x + g x=Bx+g x=Bx+g,给定初始向量 x ( 0 ) x^{(0)} x(0)可得到
x ( k + 1 ) = B x ( k ) + g ( k = 0 , 1 , ⋯ ) x^{(k+1)}=Bx^{(k)}+g\quad(k=0,1,\cdots) x(k+1)=Bx(k)+g(k=0,1,⋯)
若向量序列收敛,其收敛的向量为原方程组的解。其收敛的充要条件是谱半径 ρ ( B ) < 1 \rho(B) < 1 ρ(B)<1.
如果在计算第 i i i个分量 x i ( k + 1 ) x_i^{(k+1)} xi(k+1),前面的 i − 1 i-1 i−1个分量用最新的 x 1 ( k + 1 ) x_1^{(k+1)} x1(k+1), x 2 ( k + 1 ) x_2^{(k+1)} x2(k+1)…, x i − 1 ( k + 1 ) x_{i-1}^{(k+1)} xi−1(k+1)
而不是 x 1 ( k ) x_1^{(k)} x1(k), x 2 ( k ) x_2^{(k)} x2(k),…, x i − 1 ( k ) x_{i-1}^{(k)} xi−1(k),则是简单迭代法对应的高斯-赛德尔迭代法。
当简单迭代法的迭代矩阵 B B B满足 ∥ B ∥ 1 < 1 \parallel B\parallel_{1} < 1 ∥B∥1<1或 ∥ B ∥ ∞ < 1 \parallel B\parallel_{\infty} < 1 ∥B∥∞<1,对应的对应的高斯-赛德尔迭代法关于任意初始向量收敛。
雅可比迭代法
设有n阶线性方程组 A x = b Ax=b Ax=b, A A A为n阶非奇异矩阵,且对角元 a i i ≠ 0 ( i = 1 , 2 , 3 , . . . , n ) a_{ii} \neq 0 (i=1,2,3,...,n) aii=0(i=1,2,3,...,n)
将A如下分解,A=L+D+U,即
A = ( 0 a 21 0 ⋮ ⋮ ⋱ a n 1 a n 2 ⋯ 0 ) + ( a 11 a 22 ⋱ a n n ) + ( 0 a 12 ⋯ a 1 n 0 ⋯ a 2 n ⋱ ⋮ 0 ) , A=\begin{pmatrix}0\\a_{21}&0\\\vdots&\vdots&\ddots\\a_{n1}&a_{n2}&\cdots&0\end{pmatrix}+\begin{pmatrix}a_{11}\\&a_{22}\\&&\ddots\\&&&a_{nn}\end{pmatrix}+\begin{pmatrix}0&a_{12}&\cdots&a_{1n}\\&0&\cdots&a_{2n}\\&&\ddots&\vdots\\&&&0\end{pmatrix}, A= 0a21⋮an10⋮an2⋱⋯0 + a11a22⋱ann + 0a120⋯⋯⋱a1na2n⋮0 ,
A x = b Ax=b Ax=b等价于 ( L + D + U ) x = b (L+D+U)x=b (L+D+U)x=b,
整理得,
x = − D − 1 ( L + U ) x + D − 1 b x=-D^{-1}\left(L+U\right)x+D^{-1}b x=−D−1(L+U)x+D−1b
记 B J = − D − 1 ( L + U ) , g = D − 1 b B_J=-D^{-1}\left(L+U\right),g=D^{-1}b BJ=−D−1(L+U),g=D−1b,则构造公式
x ( k + 1 ) = B J x ( k ) + g ( k = 0 , 1 , ⋅ ⋅ ⋅ ) x^{(k+1)}=B_Jx^{(k)}+g\quad(k=0,1,\cdotp\cdotp\cdotp) x(k+1)=BJx(k)+g(k=0,1,⋅⋅⋅)
为雅可比迭代法,称
B J = − D − 1 ( L + U ) = ( 0 − a 12 a 11 ⋯ − a 1 n a 11 − a 21 a 22 0 ⋯ − a 2 n a 22 ⋮ ⋮ ⋱ ⋮ − a n 1 a n n − a n 2 a n n ⋯ 0 ) B_J=-D^{-1}(L+U)=\begin{pmatrix}0&-\frac{a_{12}}{a_{11}}&\cdots&-\frac{a_{1n}}{a_{11}}\\\\-\frac{a_{21}}{a_{22}}&0&\cdots&-\frac{a_{2n}}{a_{22}}\\\vdots&\vdots&\ddots&\vdots\\\\-\frac{a_{n1}}{a_{nn}}&-\frac{a_{n2}}{a_{nn}}&\cdots&0\end{pmatrix} BJ=−D−1(L+U)= 0−a22a21⋮−annan1−a11a120⋮−annan2⋯⋯⋱⋯−a11a1n−a22a2n⋮0
为雅可比矩阵。
雅可比迭代法关于任意初始向量 x ( 0 ) x^{(0)} x(0)收敛的充要条件是 ρ ( B j ) < 1 \rho(B_{j}) < 1 ρ(Bj)<1.
其对应的高斯-赛德尔迭代法为
x ( k + 1 ) = − ( D + L ) − 1 U x ( k ) + ( D + L ) − 1 b x^{(k+1)}=- (D+L)^{-1}Ux^{(k)}+(D+L)^{-1}b x(k+1)=−(D+L)−1Ux(k)+(D+L)−1b
若系数矩阵A严格对角占优,高斯-赛德尔迭代法对于任意初始向量 x ( 0 ) x^{(0)} x(0)收敛。
若系数矩阵A对称正定,高斯-赛德尔迭代法对于任意初始向量 x ( 0 ) x^{(0)} x(0)收敛。
相关文章:
数值分析笔记(五)线性方程组解法
三角分解法 A的杜利特分解公式如下: u 1 j a 1 j ( j 1 , 2 , ⋯ , n ) , l i 1 a i 1 / u 11 ( i 2 , 3 , ⋯ , n ) , u k j a k j − ∑ m 1 k − 1 l b m u m j ⇒ a k j ( j k , k 1 , ⋯ , n ) , l i k ( a i k − ∑ m 1 k − 1 l i n u m k ) /…...
IDEA中Maven的配置
目录 1. 安装maven 2. 配置环境变量 3. IDEA中配置Maven 4. 配置仓库目录 1. 安装maven 官网下载地址:Maven – Download Apache Maven 下载后,将zip压缩包解压到某个目录即可。 2. 配置环境变量 变量名称随意,通常为M2_HOMEÿ…...
成人高考本科何时报名-深职训学校帮您规划学习之路
你有想过继续深造自己的学历吗?也许你已经工作多年,但总觉得学历是一块心病,想要通过成人高考本科来提升自己。不用着急,今天我们来聊一聊成人高考本科的报名时间,以及深职训学校如何帮助你顺利完成报名。 深圳成人高…...
C++ STL 协程(Coroutines)
一:什么是协程(Coroutines): 协程是轻量级线程,可以暂停和恢复执行,协程拥有自己的暂停点状态,协程暂停时,将当前状态保存起来,在恢复执行时会恢复之前保存的状态。 二:例子: #include <coroutine> #include <iostream>void doTheWork() {std::cout <…...
虚拟机下基于海思移植QT(一)——虚拟机下安装QT
0.参考资料 1.海思Hi3516DV300 移植Qt 运行并在HDMI显示器上显示 2.搭建海思3559A-Qt4.8.7Openssl开发环境 1.报错解决 通过下面命令查询 strings /lib/x86_64-linux-gnu/libc.so.6 | grep GLIBC_通过命令行没有解决: sudo apt install libc6-dev libc6参考解决…...
计算机网络部分知识点整理
停止等待协议的窗口尺寸为 1。 √以太网标准是IEEE802.3TCP/IP四层,OSI模型有7层,地址解析协议 ARP 在 OSI 参考七层协议属于数据链路层,在TCP/IP 协议属于网络层,ARP作用:将 IP 地址映射到第二层地址,交换…...
【Qt】Qt概述
目录 一. 什么是Qt 二. Qt的优势 三. Qt的应用场景 四. Qt行业发展方向 一. 什么是Qt Qt是一个跨平台的C图形用户界面应用程序框架,为应用程序开发者提供了建立艺术级图形界面所需的所有功能。 Qt是完全面向对象的,很容易扩展,同时Qt为开发…...
读书笔记-《魔鬼经济学》
这是一本非常有意思的经济学启蒙书,作者探讨了许多问题,并通过数据找到答案。 我们先来看看作者眼中的“魔鬼经济学”是什么,再选一个贴近我们生活的例子进行阐述。 01 魔鬼经济学 中心思想:假如道德代表人类对世界运转方式的期…...
2024.7.7总结
今天是惊心动魄的一天,记录一下吧! 昨天晚上害怕早上闹铃响了听不到,担心有意外出现,错过回家的车票,于是便在晚上设置了3个闹铃,6:50,7:00,7:05然后也关了静音。没想到,早上按照正…...
uniapp做小程序内打开地图展示位置信息
使用场景:项目中需要通过位置信息打开地图查看当前位置信息在地图那个位置,每个酒店有自己的经纬度和详细地址,点击地图按钮打开内置地图如图 方法如下: <view class"dttu" click"openMap(info.locationY,info.…...
leetcode 283.移动零
leetcode 283.移动零 自己刷题并且进行记录一下 题解 c class Solution { public:void moveZeroes(vector<int>& nums) {int count 0;for (int i 0; i < nums.size(); i) {if(nums[i] ! 0) {nums[count] nums[i];if (count !i) {nums[i] 0;}count;}}} };...
Unity | Shader基础知识(第十七集:学习Stencil并做出透视效果)
目录 一、前言 二、了解unity预制的材质 三、什么是Stencil 四、UGUI如何使用Stencil(无代码) 1.Canvas中Image使用Stencil制作透视效果 2.学习Stencil 3.分析透视效果的需求 五、模型如何使用Stencil 1.shader准备 2.渲染顺序 3.Stencil代码语…...
【3D->2D转换(1)】LSS(提升,投放,捕捉)
Lift, Splat, Shoot 这是一个端到端架构,直接从任意数量的摄像头数据提取给定图像场景的鸟瞰图表示。将每个图像分别“提升(lift)”到每个摄像头的视锥(frustum),然后将所有视锥“投放(splat&a…...
MyBatis 框架核心及面试知识要点
1、什么是 MyBatis? MyBatis 是一款优秀的支持自定义 SQL 查询、存储过程和高级映射的持久层框架,消除了 几乎所有的 JDBC 代码和参数的手动设置以及结果集的检索 。 MyBatis 可以使用 XML,或注解进 行配置和映射,MyBatis 通过将参数映射到配置的 SOL,形…...
《linux系统内核设计与实现》-实现最简单的字符设备驱动
开发linux内核驱动需要以下4个步骤: 1 编写hello驱动代码 驱动代码如下 helloDev.c,这是一个最小、最简单的驱动,去掉了其他的不相干代码,尽量让大家能了解驱动本身。 #include <linux/module.h> #include <linux/mod…...
【MotionCap】pycharm 远程在wsl2 ubuntu20.04中root的miniconda3环境
pycharm wsl2 链接到pycharmsbin 都能看到内容,/root 下内容赋予了zhangbin 所有,pycharm还是看不到/root 下内容。sudo 安装了miniconda3 引发了这些问题 由于是在 root 用户安装的miniconda3 所以安装路径在/root/miniconda3 里 这导致了环境也是root用户的,会触发告警 WA…...
[BJDCTF 2nd]简单注入
sqlsqlsqlsqlsql又来喽 过滤了单双引号,等于符号,还有select等,但是这里没有二次注入 。扫描发现hint.txt 看出题人的意思是,得到密码即可获得flag。 select * from users where username$_POST["username"] and passw…...
java项目的一些功能(完善登录功能、注册接口参数校验、完善分页查询、完善日期格式、更新文章分类和添加文章分类的分组校验、自定义校验、文件上传 )
目录 完善登录功能 注册接口参数校验 完善分页查询 完善日期格式 更新文章分类和添加文章分类的分组校验 编辑 自定义校验 文件上传 完善登录功能 对前端传过来的明文密码进行md5加密处理 password DigestUtils.md5DigestAsHex(password.getBytes()); 这样既可 注…...
Mac安装AndroidStudio连接手机 客户端测试
参考文档:https://www.cnblogs.com/andy0816/p/17097760.html 环境依赖 需要java 1.8 java安装 略 下载Android Studio 地址 下载 Android Studio 和应用工具 - Android 开发者 | Android Developers 本机对应的包进行下载 安装过程 https://www.cnblogs.c…...
Git 完整的提交规范教程
约定式提交规范 本文中的关键词 “必须(MUST)”、“禁止(MUST NOT)”、“必要(REQUIRED)”、“应当(SHALL)”、“不应当(SHALL NOT)”、“应该(S…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
镜像里切换为普通用户
如果你登录远程虚拟机默认就是 root 用户,但你不希望用 root 权限运行 ns-3(这是对的,ns3 工具会拒绝 root),你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案:创建非 roo…...
2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...
ElasticSearch搜索引擎之倒排索引及其底层算法
文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
智能仓储的未来:自动化、AI与数据分析如何重塑物流中心
当仓库学会“思考”,物流的终极形态正在诞生 想象这样的场景: 凌晨3点,某物流中心灯火通明却空无一人。AGV机器人集群根据实时订单动态规划路径;AI视觉系统在0.1秒内扫描包裹信息;数字孪生平台正模拟次日峰值流量压力…...
什么?连接服务器也能可视化显示界面?:基于X11 Forwarding + CentOS + MobaXterm实战指南
文章目录 什么是X11?环境准备实战步骤1️⃣ 服务器端配置(CentOS)2️⃣ 客户端配置(MobaXterm)3️⃣ 验证X11 Forwarding4️⃣ 运行自定义GUI程序(Python示例)5️⃣ 成功效果。 方法一:使用 XML 的 <foreach> 标签ÿ…...
Mysql中select查询语句的执行过程
目录 1、介绍 1.1、组件介绍 1.2、Sql执行顺序 2、执行流程 2.1. 连接与认证 2.2. 查询缓存 2.3. 语法解析(Parser) 2.4、执行sql 1. 预处理(Preprocessor) 2. 查询优化器(Optimizer) 3. 执行器…...
