追赶法求解块三对角矩阵以及matlab代码实现

这篇具有很好参考价值的文章主要介绍了追赶法求解块三对角矩阵以及matlab代码实现。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

数值分析课的作业

追赶法matlab代码

单从题目来看,矩阵A和矩阵B都是三对角矩阵

参考资料:块三对角矩阵方程的追赶法及其应用 - 豆丁网Docin

推导过程如下:

追赶法matlab代码

 求解matlab程序:

function x=tridiagsolver_block(n)
c=(1:n^2);
for i=1:n,
    a{i}=c(i:i+n-1);
    b{i}=a{i}';
end
B=diag(repmat([4], 1, n))+diag(repmat([-1], 1, n-1), 1)+diag(repmat([-1], 1, n-1), -1);%矩阵B
G{1}=B;
D{1}=-inv(G{1});
y{1}=inv(B)*b{1};
for i=2:n-1,
    G{i}=B+D{i-1};
    D{i}=-inv(G{i});
    y{i}=inv(G{i})*(b{i}+y{i-1});
end
G{n}=B+D{n-1};
D{n}=-inv(G{n});
y{n}=inv(G{n})*(b{n}+y{n-1});
x{n}=y{n};
for i=n-1:-1:1,
    x{i}=y{i}-D{i}*x{i+1};
end

注意,此处要使用cell数据类型将矩阵存储到A中,所以均采用“{}”,最后调用函数输入n就行啦^_^ 文章来源地址https://www.toymoban.com/news/detail-630219.html

到了这里,关于追赶法求解块三对角矩阵以及matlab代码实现的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 牛顿(Newton)迭代法求解非线性方程以及方程组的Matlab实现

    必做题目比较简单,写得有些随意,主要还是第二个拓展题目的难度比较高 传入题设数据有: 另附运行截图  

    2024年02月11日
    浏览(49)
  • C创建一个4x4的矩阵,显示该矩阵。求该矩阵的外围元素之和、主对角线元素之和以及副对角线元素之和。

            编写程序,创建一个4x4的矩阵,矩阵的值为{{1,2,4,5},{6,7,8,9},{10,11,12,13},{14,15,16,17}},显示该矩阵。求该矩阵的外围元素之和、主对角线元素之和以及副对角线元素之和。         求三类元素的和,可以定义3 个不同的和变量,在遍历数组元素的循环中通过三次条件

    2024年02月11日
    浏览(49)
  • 数值分析·学习 | 解线性方程组的直接方法(高斯消去法以及LU求解)matlab实现

    目录 一、前言: 二、算法描述: 三、实现代码: 1、高斯消去法: 2、高斯消去法-列主元消去法: 3、LU分解: 4、求逆矩阵: 四、总结: 个人学习内容分享 1、高斯消去法:         设有线性方程组         或写为矩阵形式

    2024年02月05日
    浏览(80)
  • A First course in FEM —— matlab代码实现求解传热问题(稳态)

    这篇文章会将FEM全流程走一遍,包括 网格、矩阵组装、求解、后处理 。内容是大三时的大作业,今天拿出来回顾下。     涡轮机叶片需要冷却以提高涡轮的性能和涡轮叶片的寿命。我们现在考虑一个如上图所示的叶片,叶片处在一个高温环境中,中间通有四个冷却孔。 假设

    2024年02月09日
    浏览(45)
  • Matlab: 矩阵指数求解

    Matlab: 矩阵指数求解 在矩阵计算中,矩阵指数是一种重要的运算方式。矩阵指数常用于描述微分方程的解和控制系统的稳定性分析等领域。MATLAB 提供内置函数 expm() 用于矩阵指数的求解。 下面给出一个简单的例子,利用 MATLAB 求解矩阵指数。 首先,我们先定义一个 2x2 的矩阵

    2024年02月03日
    浏览(31)
  • 矩阵方程的计算求解:使用 MATLAB

    矩阵方程的计算求解:使用 MATLAB 矩阵方程是数学中一类重要的方程,它以矩阵的形式表示,并涉及到矩阵的乘法、加法和逆运算等。在 MATLAB 中,我们可以使用多种方法来求解矩阵方程,包括直接求解、迭代法和数值方法等。本文将介绍几种常见的方法,并给出相应的 MATL

    2024年02月08日
    浏览(54)
  • 节点不连续伽辽金方法在求解线性和非线性平流方程中的一维实现(Matlab代码实现)

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码实现 本文提

    2024年02月12日
    浏览(57)
  • C语言-二维数组-求5*5矩阵的两条对角线之和,以及四周边界元素之和

    一.我的思路 (1)首先要用二维数组把数先存进去,再一想怎么存呢?我已经学了两种方法:第一就是进行数组初始化(比较单一),第二就是运用循环语句输入(也就是给数组赋值,求不同的数组很方便),我做的是题目中给了数组,我就采用了第一种。 (2)其次存完之后,就要想办

    2024年02月04日
    浏览(64)
  • matlab求解时变系统的Riccati矩阵微分方程

    对于代数Riccati方程的求解网上能找到很多的资源,matlab也有成熟的函数,但是对于时变系统的Riccati矩阵微分方程,能找到的资料还比较少。 可以在网上找到很多资料,如 https://blog.csdn.net/m0_62299908/article/details/127807014 matlab也有相应的一系列函数 lqr、icare等。 对于这些函数不

    2024年02月05日
    浏览(46)
  • 热传导方程以及Matlab求解

    设 u = u ( x ⃗ , t ) u=u(vec{x},t) u = u ( x , t ) 表示某一个均匀物体 Ω ⊂ R 3 Omegasubsetmathbb{R}^3 Ω ⊂ R 3 在位置 x ⃗ vec{x} x ,时刻 t t t 的温度(单位: K K K ), c c c 表示比热(单位: J / ( k g ⋅ K ) J/(kgcdot K) J / ( k g ⋅ K ) ), ρ rho ρ 表示密度(单位: k g / m 3 kg/m^3 k g / m 3 ),令

    2024年02月06日
    浏览(55)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包