文档库 最新最全的文档下载
当前位置:文档库 › k-三对角Toeplitz矩阵求逆(2013)

k-三对角Toeplitz矩阵求逆(2013)

k-三对角Toeplitz矩阵求逆(2013)
k-三对角Toeplitz矩阵求逆(2013)

数学_简单三对角矩阵矩阵行列式的基本探究

简单三对角矩阵矩阵行列式的基本探究 张云鹏 (2014070904021) 指导教师:李厚彪 【摘要】三对角矩阵的行列式的计算在行列式的计算中占据特殊地位,由于三对角矩阵具有明显的规律性但其行列式运算又有一定的难度经常成为出题的热点,本篇小论文给简单三角矩阵行列式运算做出基本解法,并通过三对角矩阵得到一组Cos (nx )与Sin(nx)的简明展开公式。 【关键词】三对角矩阵; 矩阵; 数列递推; 三角函数; 斐波那契数列 1. 引言 在进行行列式计算之前我们先探究一下斐波那契数列通项公式的计算方法。 例1、现已知斐波那契数列满足如下关系:()01111,1,,1n n n F F F F F n +-===+≥,试求其通项公式。 解: 易知对于1、2项为任意值但满足() 11,1n n n F F F n +-=+≥的数列的加法与数乘满足线性 空间八条条件。 则存在满足() 11,1n n n F F F n +-=+≥的两个数列 {}n a 、{}n b 。 他们的任意;(k 0)n n a kb =≠不恒成立。 则任意{}n c 中的任意一项12n n n c k a k b =+使恒成立。 鉴于 () 11,1n n n F F F n +-=+≥的递推形式,我们不妨设数列 {}n a 、{}n b 为两组几何级数,其 公比分别为1q 、2q ;且()1n n a q =、()2n n b q = 根据 () 11,1n n n F F F n +-=+≥可列方程n n-1n-2q =q +q ,化简可知2 q -q-1=0。 又因为011,1F F ==,可求得1255k ,k 55 = =-。 经计算可知15 q=2±,则n n n n 1+51-5a =b =22???? ? ? ? ?????,。 又因为011,1F F ==,可求得1255k ,k 55 = =-。 则斐波那契数列的表示为11515225n n n F ??????+-??=- ? ? ? ????????? 我们简化上述求法为特征方程法。并可以广泛运用在三对角矩阵矩阵行列式的计算中。 2. 简单三对角矩阵行列式的特征方程

微分方程差分三对角矩阵解法C语言程序

#include #include #define N 1000 //三对角方程组Thomas算法,计算两点边值问题 //-u"(x)+u(x)=exp(x)(sin(x)-cos(x),0<=x<=pi //u(00=0, u(pi)=0. void ThomasMethodsf(double a[],double b[],double c[],double d[],int n); //Thomas算法函数 void Errorf(double x[],double d[],double e[],double *maxe_h,int n); //计算结点处数值解的误差的绝对值和数值解的最大误差函数 void prtf(double a[],double b[],double c[],double d[],int n); //打印三对角方程组系数矩阵函数 double fi(double xi);//微分方程右端项 //double qi(double xi);//微分方程u(x)系数 double ui(double xi);//微分方程精确解u(x) void res(double d[],double e[],double maxe_h,int n);//输出结果到Result.txt文档 void main() { double a[N];//系数矩阵左下非零元素集合,顺序从左到右,从上到下 double b[N];//系数矩阵对角线元素集合,顺序同上 double c[N];//系数矩阵右上非零元素集合,顺序同上 double d[N];//方程组常数项集合 double x[N];//网格节点集合 double e[N];//误差 double maxe_h=0;//最大误差 double *p_1,*p_2,*p_3;//*p_1指向数组d[N],*p_2指向数组e[N],*p_3指向maxe_h double h;//网格步长 int m;//求解区间等分度 int n;//系数矩阵阶数 int i; printf("请输入求解区间等分度:\nm="); scanf("%d",&m); h=3.1415926/m; n=m-1; for(i=1;i

矩阵求逆方法大全-1

求逆矩阵的若干方法和举例 苏红杏 广西民院计信学院00数本(二)班 [摘 要] 本文详细给出了求逆矩阵的若干方法并给出相应的例子,以供学习有关矩阵方面 的读者参考。 [关键词] 逆矩阵 初等矩阵 伴随矩阵 对角矩阵 矩阵分块 多项式等 引 言 在我们学习《高等代数》时,求一个矩阵的逆矩阵是一个令人十分头痛的问题。但是,在研究矩阵及在以后学习有关数学知识时,求逆矩阵又是一个必不可缺少的知识点。为此,我介绍下面几种求逆矩阵的方法,供大家参考。 定义: n 阶矩阵A 为可逆,如果存在n 阶矩阵B ,使得E BA AB ==,这里E 是n 阶单位矩阵,此时,B 就称为A 的逆矩阵,记为1-A ,即:1-=A B 方法 一. 初等变换法(加边法) 我们知道,n 阶矩阵A 为可逆的充分必要条件是它能表示成一系列初等矩阵的乘积A=m Q Q Q 21, 从而推出可逆矩阵可以经过一系列初等行变换化成单位矩阵。即,必有一系列初等矩阵 m Q Q Q 21使 E A Q Q Q m m =-11 (1) 则1-A =E A Q Q Q m m =-11 (2) 把A ,E 这两个n 阶矩阵凑在一起,做成一个n*2n 阶矩阵(A ,E ),按矩阵的分块乘法,(1)(2)可以合并写成 11Q Q Q m m -(A ,E )=(11Q Q Q m m -,A ,E Q Q Q m m 11 -)=(E ,1-A ) (3) 这样就可以求出矩阵A 的逆矩阵1-A 。 例 1 . 设A= ???? ? ??-012411210 求1-A 。 解:由(3)式初等行变换逐步得到: ????? ??-100012010411001210→ ????? ??-100012001210010411 →???? ? ??----123200124010112001→

追赶法求解三对角线性方程组

追赶法求解三对角线性方程组 一 实验目的 利用编程方法实现追赶法求解三对角线性方程组。 二 实验内容 1、 学习和理解追赶法求解三对角线性方程组的原理及方法; 2、 利用MATLAB 编程实现追赶法; 3、 举例进行求解,并对结果进行分。 三 实验原理 设n 元线性方程组Ax=d 的系数矩阵A 为非奇异的三对角矩阵 11222=(1)(n 1)()()a c b a c A a n c b n a n ??????????--?????? ………… 这种方程组称为三对角线性方程组。显然,A 是上下半宽带都是1的带状矩阵。设A 的前n-1个顺序主子式都不为零,根据定理2.5的推论,A 有唯一的Crout 分解,并且是保留带宽的。 其中L 是下三角矩阵,U 是单位上三角矩阵。利用矩阵相乘法,可以1112212(1)1u(n 1)()()1l u m l u A LU l n m n l n ????????????????==?????--????????????……………

得到: 由上列各式可以得到L 和U 。 引入中间量y ,令 y Ux =,则有: 已知 L 和d ,可求得y 。 则可得到y 的求解表达式: 11/1 2,3,,()(1)*y()=()[()(1)]/y d l i n m i y i li i di y i di m i y i li ==-+=--… 1111111/1(2)(1)(1)u (1)(11)/(1)(1)(1)l a l u c u c l mi bi i n a i m i i l i i n ci li ui ui ci li l i a i b i ui =*===≤≤+=+++≤≤-=?=+=+-+Ax LUx Ly d Ly d ====1112222(1)(n 1)(n 1)()()(n)(n)l y d m l y d l n y d m n l n y d ?????????????????????????=??????---?????????????????? ……………

矩阵逆的模(dropping strategy)

2011-10-17 下面的文本主要用于算法设计和算法实现的需要。 主要内容参考了Golub的书籍。 适合任何三角矩阵(无论对角元是否为1,属于通用算法) U (1) 1 估计1- 1.1 方法1: (1) 1.2 方法2: (2) 2 估计1-L (2) 2.1 方法1:estfullnrm_forward(T,D) (2) 2.2 方法2: (3) 1估计1-U 见Golub的书: 1.1 方法1:

1.2 方法2: 2 估计1 -L 参考Golub 的书,在估计1-U 的模算法基础上得到的对于下三角矩阵的算法: 2.1 方法1: 0):1(=n p for n k :1= Choose )(k d ),(/))()(()(k k T k p k d k y -= ),:1()():1():1(k n k T k y n k p n k p +++=+

end 2.2 方法2: 0):1(=n p for n k :1= ),(/))(1()(k k T k p k y -=+ ),(/))(1()(k k T k p k y --=- ),:1()():1()(k n k T k y n k p k p +++=++ ),:1()():1()(k n k T k y n k p k p +++=-- if 11||)(|||)(|||)(|||)(|--+++≥+k p k y k p k y +=)()(k y k y +=+)():1(k p n k p else -=)()(k y k y -=+)():1(k p n k p end end

追赶法解三对角方程组

《数值分析》课程设计追赶法解三对角方程组 院(系)名称信息工程学院 专业班级10普本信计 学号100111014 学生姓名刘银朋 指导教师张荣艳 2013 年05 月31日

数值分析课程设计评阅书 题目追赶法解三对角方程组 学生姓名刘银朋学号100111014 指导教师评语及成绩 指导教师签名: 年月日答辩评语及成绩 答辩教师签名: 年月日 教研室意见 总成绩: 教研室主任签名: 年月日

课程设计任务书 2012—2013学年第二学期 专业班级:10普本信息与计算科学学号:100111014 姓名:刘银朋 课程设计名称:数值分析Ⅰ、Ⅱ 设计题目:追赶法解三对角方程组 完成期限:自2013 年05月21 日至2013年05 月31日共10天 设计依据、要求及主要内容: 一、设计目的 理解追赶法,掌握追赶法的算法设计以及关于追赶法的分析和综合应用,能 够较熟练的应用Matlab软件编写求解追赶法的程序和应用Matlab软件数据库软 件. 二、设计内容 (1)认真挑选有代表性的三对角方程组. (2)认真梳理解三对角方程组的解题思路. (3)比较追赶法和高斯消去法的计算精度. 三、设计要求 1.先用Matlab数据库中的相应的函数对选定的方程,求出具有一定精度的解. 2.然后使用所用的方法编写Matlab程序求解. 3.对于使用多个方程解同意问题的,在界面上要设计成菜单的形式. 计划答辩时间:2013年06 月 5 日 工作任务鱼工作量要求: 查阅文献资料不少于3篇,课程设计报告1篇不少于3000字. 指导教师(签字):教研室主任(签字): 批准日期:2013 年05 月20 日

约化对称矩阵为三对角对称矩阵

//约化对称矩阵为三对角对称矩阵 //利用Householder变换将n阶实对称矩阵约化为对称三对角矩阵 //a-长度为n*n的数组,存放n阶实对称矩阵 //n-矩阵的阶数 //q-长度为n*n的数组,返回时存放Householder变换矩阵 //b-长度为n的数组,返回时存放三对角阵的主对角线元素 //c-长度为n的数组,返回时前n-1个元素存放次对角线元素 void eastrq(double a[],int n,double q[],double b[],double c[]); ////////////////////////////////////////////////////////////// //求实对称三对角对称矩阵的全部特征值及特征向量 //利用变型QR方法计算实对称三对角矩阵全部特征值及特征向量 //n-矩阵的阶数 //b-长度为n的数组,返回时存放三对角阵的主对角线元素 //c-长度为n的数组,返回时前n-1个元素存放次对角线元素 //q-长度为n*n的数组,若存放单位矩阵,则返回实对称三对角矩阵的特征向量组 // 若存放Householder变换矩阵,则返回实对称矩阵A的特征向量组 //a-长度为n*n的数组,存放n阶实对称矩阵 int ebstq(int n,double b[],double c[],double q[],double eps,int l); ////////////////////////////////////////////////////////////// //约化实矩阵为赫申伯格(Hessen berg)矩阵 //利用初等相似变换将n阶实矩阵约化为上H矩阵 //a-长度为n*n的数组,存放n阶实矩阵,返回时存放上H矩阵 //n-矩阵的阶数 void echbg(double a[],int n); ////////////////////////////////////////////////////////////// //求赫申伯格(Hessen berg)矩阵的全部特征值 //返回值小于0表示超过迭代jt次仍未达到精度要求 //返回值大于0表示正常返回 //利用带原点位移的双重步QR方法求上H矩阵的全部特征值 //a-长度为n*n的数组,存放上H矩阵 //n-矩阵的阶数 //u-长度为n的数组,返回n个特征值的实部 //v-长度为n的数组,返回n个特征值的虚部 //eps-控制精度要求 //jt-整型变量,控制最大迭代次数 int edqr(double a[],int n,double u[],double v[],double eps,int jt); ////////////////////////////////////////////////////////////// //求实对称矩阵的特征值及特征向量的雅格比法 //利用雅格比(Jacobi)方法求实对称矩阵的全部特征值及特征向量 //返回值小于0表示超过迭代jt次仍未达到精度要求 //返回值大于0表示正常返回 //a-长度为n*n的数组,存放实对称矩阵,返回时对角线存放n个特征值 //n-矩阵的阶数

逆矩阵的几种求法与解析

逆矩阵的几种求法与解 析 -CAL-FENGHAI.-(YICAI)-Company One1

逆矩阵的几种求法与解析 矩阵是线性代数的主要内容,很多实际问题用矩阵的思想去解既简单又快捷.逆矩阵又是矩阵理论的很重要的内容, 逆矩阵的求法自然也就成为线性代数研究的主要内容之一.本文将给出几种求逆矩阵的方法. 1.利用定义求逆矩阵 定义: 设A 、B 都是n 阶方阵, 如果存在n 阶方阵B 使得AB= BA = E, 则称A 为可逆矩阵, 而称B 为A 的逆矩阵.下面举例说明这种方法的应用. 例1 求证: 如果方阵A 满足A K = 0, 那么E-A 是可逆矩阵, 且 (E-A )1-= E + A + A 2+…+A 1-K 证明 因为E 与A 可以交换, 所以 (E- A )(E+A + A 2+…+ A 1-K )= E-A K , 因A K = 0 ,于是得 (E-A)(E+A+A 2+…+A 1-K )=E , 同理可得(E + A + A 2+…+A 1-K )(E-A)=E , 因此E-A 是可逆矩阵,且 (E-A)1-= E + A + A 2+…+A 1-K . 同理可以证明(E+ A)也可逆,且 (E+ A)1-= E -A + A 2+…+(-1)1-K A 1-K . 由此可知, 只要满足A K =0,就可以利用此题求出一类矩阵E ±A 的逆矩阵. 例2 设 A =? ? ?? ? ???? ???0000 30000020 0010,求 E-A 的逆矩阵. 分析 由于A 中有许多元素为零, 考虑A K 是否为零矩阵, 若为零矩阵, 则可以采用例2 的方法求E-A 的逆矩阵. 解 容易验证

求实对称三对角矩阵的特征值和特征向量

求实对称三对角矩阵的特征值和特征向量(一) 摘要 在特征值计算问题上,QR方法具有里程碑意义。QR 方法是一种变换方法,是计算一般矩阵(中小型矩阵)全部特征值问题的最有效方法之一。QR方法具有收敛快,算法稳定等特点.由于特征值和特征向量能从本质上揭露矩阵的某些重要性质,因而得到它们的精确解十分重要,但其计算一直是很繁琐的数学问题。特别是当矩阵的阶数较高时,计算量非常大,且不易求其精确解。 关键词:特征值;特征向量;QR分解

Solve Real Symmetry Three Diagonal Matrix Eigenvalue And Eigenvector ABSTRACT Values in the feature, the QR method has milepost sense. QR method is a transformation method, is the calculation of the general matrix ( small and medium-sized matrix ) one of the most effective methods of eigenvalue problems. The QR method has fast convergence, algorithm stability. Because the eigenvalues and eigenvectors can reveal some important properties of matrix from the nature, and thus obtain their exact solutions is very important, but the calculation is very complicated mathematical problems. Especially when the high rank of matrix, the calculation is very large, and is not easy to find the exact solution. Key words:eigenvalue; eigenvector; QR decomposition

编程求解逆矩阵

本程序是运用矩阵的初等变换的知识来求解矩阵的逆矩阵的。 1.理论基础: 若存在矩阵P使得矩阵A有 PA = E 那么 P = A’。 所以如果我们将(A,E)化成了(E,P),那么,P就是我们要求的A’。 2.由上面的分析可知,我们思路可分为以下3步: (1)申请一个新的矩阵,它是(A,E) (2) 将A先对角化 (3)再将A单位化E,这是A后面的部分就是A’了。 3.编程实现 #include #include float A1[10],A2[10][2*10],B[10][10];//原矩阵、加上单位矩阵后的矩阵、所求的逆矩阵 void ShangSanJiao(int n)//化成上三角 { int k,i,j,l=0,temp; if(A2[0][0] == 0) { while(A2[l][0]==0&&l

void DuiJiaoXian(int n)//将对角线上的数化1,这样方便将原矩阵化成单位矩阵 { int i,j; for(i=n-1;i>=0;i--) { A1[i]=A2[i][i]; } for(i=n-1;i>=0;i--) { for(j=0;j<2*n;j++) A2[i][j] = A2[i][j]/A1[i]; } } void DanWei(int n)//将原矩阵化成单位矩阵 { int i,j,l; float temp; for(i=n-1;i>0;i--) { for(j=i-1;j>=0;j--) { temp = A2[j][i]; for(l=0;l<2*n;l++) A2[j][l] = A2[j][l] - A2[i][l]*temp; } } } int main() { int n;//矩阵的阶数 scanf("%d",&n); if(n>10) { printf("矩阵不再表示的范围内!"); exit(-1); } int i,j; for(i=0;i

基于分治法求解对称三对角矩阵特征问题的混合并行实现

基于分治法求解对称三对角矩阵特征问题的 混合并行实现① 朱京乔1,2, 赵永华1 1 (中国科学院 计算机网络信息中心, 北京 100190) 2(中国科学院大学, 北京 100049) 通讯作者: 赵永华, E-mail: yhzhao@https://www.wendangku.net/doc/0f18236987.html, 摘 要: 基于对称三对角矩阵特征求解的分而治之方法, 提出了一种改进的使用MPI/Cilk 模型求解的混合并行实现, 结合节点间数据并行和节点内多任务并行, 实现了对分治算法中分治阶段和合并阶段的多任务划分和动态调度. 节点内利用Cilk 任务并行模型解决了线程级并行的数据依赖和饥饿等待等问题, 提高了并行性; 节点间通过改进合并过程中的通信流程, 使组内进程间只进行互补的数据交换, 降低了通信开销. 数值实验体现了该混合并行算法在计算效率和扩展性方面的优势. 关键词: 并行计算; 对称特征问题; 分治算法; Cilk 引用格式: 朱京乔,赵永华.基于分治法求解对称三对角矩阵特征问题的混合并行实现.计算机系统应用,2019,28(9):246–250. https://www.wendangku.net/doc/0f18236987.html,/1003-3254/7078.html Hybrid Parallel Algorithm Using MPI/Cilk for Symmetric Tridiagonal Eigenproblems ZHU Jing-Qiao 1,2, ZHAO Yong-Hua 1 1 (Computer Network Information Center, Chinese Academy of Sciences, Beijing 100190, China)2(University of Chinese Academy of Sciences, Beijing 100049, China) Abstract : Divide and conquer algorithm is widely used for tridiagonal matrix eigenproblems while computing efficiency and storage limitation are always bottlenecks for large scale problems. In this study, the proposed eigenproblem algorithm based on hybrid parallel paradigm with MPI/Cilk optimizes the divide and conquer algorithm both at data and task levels.The introduced task-based parallelization mechanism inside computing nodes solves the problem in data dependence and thread starvation by directed acyclic graph model. By coarse-grained partition of tasks the overhead of data communication among MPI nodes is also optimized, which helps to improve load balance. The numerical test is carried out and the result is compared with the pure MPI and MPI/openMP parallel algorithm, which shows the performance and efficiency of the algorithm. Key words : parallel computing; symmetric eigenproblem; DC method; Cilk 对称矩阵的特征求解问题在科学计算领域普遍存 在, 包括计算物理、计算化学、结构力学、纳米材料 等前沿学科. 通常的处理方法是先通过正交变换把原矩阵化为三对角矩阵, 如使用Householder 或Givens 方法, 再求解三对角阵的特征值和特征向量, 然后映射回原矩阵的特征值和特征向量. 三对角阵的特征求解计算机系统应用 ISSN 1003-3254, CODEN CSAOBN E-mail: csa@https://www.wendangku.net/doc/0f18236987.html, Computer Systems & Applications,2019,28(9):246?250 [doi: 10.15888/https://www.wendangku.net/doc/0f18236987.html,ki.csa.007078] https://www.wendangku.net/doc/0f18236987.html, ?中国科学院软件研究所版权所有.Tel: +86-10-62661041① 基金项目: 国家重点研发计划(2017YFB0202202, 2016YFB0201302); 中国科学院“十三五”信息化建设专项(XXH13506-405) Foundation item: National Key Research and Development Program of China (2017YFB0202202, 2016YFB0201302); CAS Special Fund for Informatization Construction in 13th Five-Year Plan (XXH13506-405) 收稿时间: 2019-03-05; 修改时间: 2019-04-02; 采用时间: 2019-04-10; csa 在线出版时间: 2019-09-05 246 研究开发 Research and Development

N阶实对称矩阵的三对角化

N阶实对称矩阵的三对角化 信计31 施昕2130602018 实验原理: 用householder矩阵对n阶实矩阵上Hessenberg化,Q’AQ=T,其中Q 是householder矩阵,T是上Hessenberg矩阵,因为A对称,则变换后的矩阵T是三对角矩阵。通过n个householder矩阵相乘,Hk使得每个Ak的第k行和第k列的后n-k分量变为ae(n-k)。最后得到三对角矩阵。 实验结果:

源程序: %Householder变换: function [v,b]=House(x) n=length(x); x=x/norm(x,'inf'); c=x(2:n)'*x(2:n); v(2:n,1)=x(2:n); if c==0 b=0; else a=sqrt((x(1))^2+c); if x(1)<=0 v(1)=x(1)-a; else v(1)=-c/(x(1)+a); end b=2*(v(1))^2/(c+(v(1))^2); v=v/v(1); end %三对角化: A=input('输入矩阵A:'); n=length(A); Q=eye(n); for k=1:n-2 [v,b]=House(A(k+1:n,k)); u=b*A(k+1:n,k+1:n)*v; w=u-(b*u'*v/2)*v; Hk=eye(n-k)-b*(v*v'); H=blkdiag(eye(k),Hk); Q=Q*H; A(k+1,k)=norm(A(k+1:n,k)); A(k,k+1)=A(k+1,k); A(k,k+2:n)=0; A(k+2:n,k)=0; A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-v*w'-w*v'; end T=A Q disp(Q*T*Q');

对称三对角矩阵特征值的二分法

数学软件实验任务书 课程名称数学软件实验班级数0901 实验课题对称三对角矩阵特征值的二分法 实验目的熟悉对称三对角矩阵特征值的二分法 运用Matlab/C/C++/Java/Maple/Mathematica等其中实验要求 一种语言完成 对称三对角矩阵特征值的二分法 实验内容 成绩教师

实验1对称三对角矩阵特征值的二分法 1 实验原理 对于对称三对角矩阵: 11122 2111 n n n n n c b b c b C b c b b c ----?? ? ? ?= ? ? ??? 设0i b ≠,1,2,,1i n =- ,记特征矩阵I C λ-的左上角的k 阶子式为()k p λ,设0()1p λ=,利用行列式的展开式,可得()k p λ的递推公式: 0112112()1() 1,2,,()()() k k k k k p p a k n p a p b p λλλλλλ---=??=-?=???=--? ()det()n p I C λλ=-为C 的特征多项式,n 个零点为矩阵C 的n 个特征值 2 实验程序 程序: int ebstq(int n,double b[],double c[],double q[],double eps,int l) { int i,j,k,m,it,u,v; double d,f,h,g,p,r,e,s; c[n-1]=0.0; d=0.0; f=0.0; for (j=0; j<=n-1; j++) { it=0; h=eps*(fabs(b[j])+fabs(c[j])); if (h>d) { d=h; } m=j; while ((m<=n-1)&&(fabs(c[m])>d)) {

追赶法解三对角矩阵

实验追赶法解三对角方程组 一、实验目的 学会用追赶法解三对角方程组,并应用该算法于实际问题. 二、实验要求 给定三对角方程组,应用追赶法解得方程组的解。 三、实验内容 1、追赶法 2、以课本数值试验2为实例 3、如果有错,修改直至运行成功,查看运行结果; 四、实验环境 matlab 五、实验步骤和方法 1、程序设计 2、带入实例 3、撰写实验报告。 六、实验预习要求 得到实例的解 一、[源程序] function x = my_zgf2(A,d,flag) %MY_ZGF2 Summary of this function goes here [m,n]=size(A); %计算矩阵的大小 if nargin==2; %输入变量等于2的时候,A中储存所有元素的值for i=1:n a(i)=A(i+1,i); b(i)=A(i,i); c(i)=A(i,i+1); end a(1)=0; %补充不足的值 b(n)=A(n,n); c(n)=0; else c=[A(1,:) 0]; %flag==1时 b=A(2,:); a=[0 A(3,:)]; end

u(1)=b(1); for i=2:n %第一次追赶,得到上、下三角矩阵 l(i)=a(i)/u(i-1); u(i)=b(i)-c(i-1)*l(i); end y(1)=d(1); %解Ly=d for i=2:n y(i)=d(i)-l(i)*y(i-1); end x(n)=y(n)/u(n); %解Ux=y for i=n-1:-1:1 x(i)=(y(i)-c(i)*x(i+1))/u(i); end 二、带入实例 A = -2.0000 -2.0000 -2.0000 -2.0000 -2.0000 -2.0000 -2.0000 0 5.0000 5.0000 5.0000 5.0000 5.0000 5.0000 5.0000 5.0000 -2.0000 -2.0000 -2.0000 -2.0000 -2.0000 -2.0000 -2.0000 0 d= 8.1400 0 0 0 0 0 0 0 >> d=A(4,:); my_zgf2(A,d,1) ans = 2.0350 1.0174 0.5086 0.2541 0.1267 0.0626 0.0298 0.0119 >>

论文_三对角矩阵的简单计算

长沙学院信息与计算科学系本科生科研训练三对角矩阵的简单计算 系(部):信息与计算科学 专业:数学与应用数学 学号: 2009031105 学生姓名:尹锋霖 成绩: 2012 年6月

三对角矩阵的简单计算 尹锋霖 长沙学院 信息与计算科学系, 湖南 长沙, 410022 摘要:三对角行列式是一类特殊而常见的行列式,其计算灵活多样,本文给出三对角行列式的两种特殊的计算方法和证明. 关键词:三对角行列式,递推法,差分法 1 引言 1.简本文主要介绍三对角行列式两种简单计算方法,然后给与证明,对以后行列式的计算有很大的帮助. 2.文献[1],主要研究了三对角行列式的递推法、差分法、数学归纳法和拆行(列)法这四种计算方法.文献[2],主要研究了三对角行列式及其运用,主要讨论了利用递归方程得到了计算了计算三对角行列式的一般方法,然后研究三对角行列式在线性代数及组合数学中的应用.文献[3],主要是在给出了三对角行列式的几种算法,利用三对角行列式证明了两类Chebyshev 多项式的几种显式. 3,本篇文章主要总结了三对角行列式的两种简单计算与证明. 定义1 形如 111 222333111 000000000000 n n n n n b a c b a c b a D c b a c b ---= 的n 阶行列式叫做三对角行列式. 2 两种方法对三对角行列式的求解 2.1 递推法 递推法可分为直接递推和间接递推.用直接递推法计算行列式n D ,依次从 123n D D D D →→→→ 逐级递推便可以求出 n D 的值;间接递推的做法是,借助于行

列式中元素的对称性,交换行列式构造出关于n D 和1n D -的方程组,从而消去1n D -就可解得n D . 例1 计算n阶行列式 000000000000 n a b c a b c a b D c a b c a = . 因此有 ()1 1 2 2 4; 1, 4; 2n n n n a a a bc D a n a bc ++? +--≠=??? ?+= ???? ? . 证明 设det n n D T =按第一行展开得 12n n n D aD bcD --=-. (1) 取p ,q 为方程20x ax bc -+=的根,即 2 a p + = ,2 a q -= , 则式(1)可改为 112()n n n n D pD q D pD ----=-. 注意到 2 21D pD q -=, 可递推求得 1n n n D pD q --=, 从而

计算方法追赶法解三对角矩阵方程

计算方法实验报告 实验:追赶法解三对角矩阵方程 1.实验目的 ①熟悉matlab 软件的使用 ②掌握追赶法的基本方法 ③编程实现追赶法解三对角矩阵方程 2.实验内容 題目:用追赶法解方程组 ????????????????--------4114114114114????????????????54321x x x x x =??????? ?????????100200200200100 3.求解: 1.追赶法代码 function [x]=ZhuiGan(a,b,c,f) r=size(a); m=r(2); r=size(b); n=r(2); if size(a)~=size(b)|(m~=n-1)|size(b)~=size(f) error('变量不匹配,检查变量输入情况!'); end p=ones(1,m); Y=ones(1,n); x=Y; p(1)=a(1)/b(1); Y(1)=f(1)/b(1); t=0; for i=2:m t=b(i)-a(i-1)*p(i-1); p(i)=c(i)/t; Y(i)=(f(i)-a(i-1)*Y(i-1))/t;

end Y(n)=(f(n)-a(n-1)*Y(n-1))/(b(n)-a(n-1)*p(n-1)); x(n)=Y(n);for i=n-1:-1:1 x(i)=Y(i)-p(i)*x(i+1); end 2.输入 >> a=-1*ones(1,4); >> c=a; >> b=4*ones(1,5); >> f=[100 200 200 200 100]; >> [x]=ZhuiGan(a,b,c,f) 4.结果 x =46.15384615384615 84.61538461538461 92.30769230769231 84.61538461538461 46.15384615384615 3总结 追赶法具有计算量少,方法简单,算法稳定等优点。

相关文档