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

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…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
ffmpeg(四):滤镜命令
FFmpeg 的滤镜命令是用于音视频处理中的强大工具,可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下: ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜: ffmpeg…...
Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
WordPress插件:AI多语言写作与智能配图、免费AI模型、SEO文章生成
厌倦手动写WordPress文章?AI自动生成,效率提升10倍! 支持多语言、自动配图、定时发布,让内容创作更轻松! AI内容生成 → 不想每天写文章?AI一键生成高质量内容!多语言支持 → 跨境电商必备&am…...
自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
k8s业务程序联调工具-KtConnect
概述 原理 工具作用是建立了一个从本地到集群的单向VPN,根据VPN原理,打通两个内网必然需要借助一个公共中继节点,ktconnect工具巧妙的利用k8s原生的portforward能力,简化了建立连接的过程,apiserver间接起到了中继节…...
