追赶法的matlab算法,[讨论]关于追赶法算法的执行速度
[讨论]关于追赶法算法的执行速度
下面是两个程序都是执行追赶法求解三对角方程组,但是对同样的3X3矩阵,程序1用了3.8秒,程序2用了0.01秒,请教高手这个差别怎么会有如此大!
程序1
function x = trid( A, B )
% The function solves the tridiagonal system equation Ax = B with Thosmas
% algorithm
% The size of matrices A,B are supposed to be NA * NA and NA * NB
NA = size( A, 2 ); [ NB1, NB ] = size( B );
if NB1 ~= NA
error( 'A and B must have compatible dimensions' );
end
N = NA + NB;
AB = [ A( 1 : NA, 1 : NA ) B( 1 : NA, 1 : NB ) ]; % Augments matrix
for k = 2 : NA
AB( k - 1, k ) = AB( k - 1, k ) / AB( k - 1, k - 1 );
AB( k - 1, N ) = AB( k - 1, N ) / AB( k - 1, k - 1 );
AB( k - 1, k - 1 ) = 1;
AB( k, k ) = AB( k, k ) - AB( k, k - 1 ) * AB( k - 1, k );
AB( k, N ) = AB( k, N ) - AB( k, k - 1 ) * AB( k - 1, N );
AB( k, k - 1 ) = 0;
end
x( NA, : ) = AB( NA, N ) / AB( NA, NA );
for m = NA - 1 : -1 : 1
x( m, : ) = ( AB( m, N ) - AB( m, m + 1 ) * x( m + 1, : ) ) / AB( m, m );
end
程序2
function x = trid( A, b )
% solve tridiagonal system of equations
N = size( A, 2 );
for m = 2 : N % Upper Triangularization
tmp = A( m, m - 1 ) / A( m - 1, m - 1 );
A( m, m ) = A( m, m ) -A( m - 1, m ) * tmp; A( m, m - 1 ) = 0;
b( m, : ) = b( m, : ) -b( m - 1, : ) * tmp;
end
x( N, : ) = b( N, : ) / A( N, N );
for m = N - 1 : -1 : 1 % Back Substitution
x( m, : ) = ( b( m, : ) -A( m, m + 1 ) * x( m + 1 ) ) / A( m, m );
end
追赶法的matlab算法,[讨论]关于追赶法算法的执行速度相关推荐
- 含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法)
含抽水蓄能电站系统的调峰经济调度研究matlab程序(粒子群算法) 参考文献:抽水蓄能电站的最佳调度方案研究 调峰电源的优化调度是促进电力系统安全稳定运行,实现可靠供电的要措施.因为目前我国的调峰电源 ...
- 【老生谈算法】matlab实现LMS算法源码——LMS算法
matlab的LMS算法详解 1.文档下载: 本算法已经整理成文档如下,有需要的朋友可以点击进行下载 序号 文档(点击下载) 本项目文档 [老生谈算法]matlab的LMS算法.doc 2.算法详解: ...
- MATLAB 用LMS算法实现语音去噪,在Matlab中实现基于LMS算法语音信号去噪
ComputerKnowledgeand Technology 电脑知识与技术 第10卷第32期 (2014年11月) 本栏目责任编辑:谢媛媛软件设计开发 在Matlab中实现基于LMS算法语音信号去 ...
- MATLAB基于LSB的数字水印算法
摘要-LSB是一种简单传统的信息隐藏算法,属于数字水印技术中的一种.本文首先介绍了LSB技术的原理和特点,然后讨论了基于LSB的数字水印算法.最后利用MATLAB 2010 b2对这一算法的加密过程进 ...
- 基于MATLAB有噪声语音信号处理算法设计
获取项目源文件,联系Q:1415736481,可指导毕设,课设 摘要 滤波器设计在数字信号处理中占有极其重要的地位,FIR数字滤波器和IIR滤波器是滤波器设计的重要组成部分.利用MATLAB信号处理工 ...
- C语言给出任意4个数算24点,讨论24点算法。
讨论24点算法. 24点是扑克牌游戏 玩法是:从一副扑克的A到10里随意抽出4张牌 用'加''减''乘''除'四个符号算出4个数是否等于24,是 的话成功,否的话失败: 我用的是穷举法!(源码有点长) ...
- matlab 最大熵谱估计,基于Burg算法的最大熵谱估计
<基于Burg算法的最大熵谱估计>由会员分享,可在线阅读,更多相关<基于Burg算法的最大熵谱估计(6页珍藏版)>请在人人文库网上搜索. 1.基于Burg算法的最大熵谱估计一. ...
- pm模型matlab算法,18基于遗传算法(粒子群算法、人工鱼群算法等)的投影寻踪模型MATLAB源代码...
基于遗传算法(粒子群算法.人工鱼群算法等)的投影寻踪模型 MATLAB源代码 投影寻踪是一种处理多因素复杂问题的统计方法,其基本思路是将高维数据向低维空间进行投影,通过低维投影数据的散布结构来研究高维 ...
- matlab 压缩感知矩阵_【精读】基于MATLAB的钢筋下料优化算法
基于MATLAB的钢筋下料优化算法 摘要:运用MATLAB软件求解实际工程中一维钢筋下料优化的问题,提出了首先列举出单根原料分割的所有可行解,其次采用线性规划的方法求出理想条件下最优方案,最后通过整数 ...
最新文章
- 70个NumPy分级练习:用Python一举搞定机器学习矩阵运算
- 当你的技术债务到期时,LinkedIn的故事 | IDCF
- java socket send_java socket编程
- Windows下运行jekyll,编码已不再是问题
- SCVMM 2012 R2---添加Hyper-V主机
- 响应式滚动图懒加载 element ui el-carousel 组件优化代码
- [转载] Python中关于字符串的使用演示
- 使用“Apple 诊断”来测试您的Mac 是不是存在硬件问题
- LINUX查看剪贴板有哪些内容
- 运用集合把文字写入读出文件
- VB程序设计算机,VB编程:编写一个过程,用来计算并输出 S=1+1/2+1/3+……+1/100 的值。...
- 【蓝桥杯真题】蓝桥杯真题之旋转
- 使用tayga测试无状态nat64功能
- arp欺骗盗取邻居wifi密码
- POJ 计算几何入门题目推荐(转)
- 从源数据库抽取数据到中间库
- circular包绘图笔记
- GraphQL以及Apollo-GraphQL的使用(一)
- linux下挂载硬盘!
- 使用百度Clouda框架创建RSS阅读器应用