数值分析中直接三角分解法matlab程序
- 格式:docx
- 大小:12.68 KB
- 文档页数:3
1,秦九韶算法,求出P(x=3)=2+4x+5x^2+2x^3的值clear all;x=3;n=3;a(1)=2;a(2)=4;a(3)=5;a(4)=2v(1)=a(n+1);for k=2:(n+1);v(k)=x*v(k-1)+a(n-k+2);endp=v(n+1)p=,1132,一次线型插值程序:利用100.121.求115的开方。
clear all;x1=100;x2=121;y1=10;y2=11;x=115;l1=(x-x2)/(x1-x2);l2=(x-x1)/(x2-x1);p1=l1*y1+l2*y2p1=10.71433,分段插值程序,已知为S1(x)为(0,0),(1,1),(2,5)(3,8)上的分段一次插值,求S1(1.5).clear allx=[0123];y=[0158];n=length(x);a=1.5;for i=2:nif(x(i-1)<=a<x(i));endendH1=y(i-1)+(y(i)-y(i-1))/(x(i)-x(i-1))*(a-x(i-1))H1=3.50004)曲线拟合:用一个5次多项式在区间[0,2π]内逼近函数sin(x)。
clear allX=linspace(0,2*pi,50);Y=sin(X);[P,S]=polyfit(X,Y,5)plot(X,Y,'k*',X,polyval(P,X),'k-')P=-0.00560.0874-0.39460.26850.87970.0102S=R:[6x6double]df:44normr:0.03375)求有理分式的导数clear allP=[3,5,0,-8,1,-5];Q=[10,5,0,0,6,0,0,7,-1,0,-100];[p,q]=polyder(P,Q)6)将以下数据按从小到大排序:4.3 5.7 5.2 1.89.4a=[4.35.75.21.89.4];b(1:100)=0;n=1;b(a*10)=1;for k=1:100a(n)=k/10;if b(k)>0a(n)=k/10;n=n+1;endendaa=1.8000 4.3000 5.2000 5.70009.400010.00007)用二分法求方程x 3-x-1=0在[1,2]内的近似根,要求误差不超过10-3。
第二章线性方程组的解法--------学习小结姓名班级学号一、本章学习体会通过对第二章的学习,学会了线性方程组的很多解法,主要学习了高斯消去法、直接三角分解法以及迭代法三种方法。
(1)高斯消去法中,我们又学习了顺序高斯消去法以及列主元素高斯消去法。
顺序高斯消去法可以得到方程组的精确解,但要求系数矩阵的主对角线元素不为零,而且该方法的数值稳定性没有保证。
但列主元素高斯消去法因为方程顺序的调整,其有较好的数值稳定性。
(2)直接三角分解法中,我们主要学习了Doolitte分解法与Crout分解法。
其思想主要是:令系数矩阵A=UL,其中L为下三角矩阵,U是上三角矩阵,为求AX=b 的解,则引进Ly=b,Ux=y两个方程,以求X得解向量。
这种方法计算量较小,但是条件苛刻,且不具有数值稳定性。
(3)迭代法(逐次逼近法)是从一个初始向量出发,按照一定的计算格式,构造一个向量的无穷序列,其极限才是所求问题的精确解,只经过有限次运算得不到精确解。
该方法要求迭代收敛,而且只经过有限次迭代,减少了运算次数,但是该方法无法得到方程组的精确解。
Matlab上实现编程语言,我觉得这是我在本章遇到的最大难题。
二、本章知识梳理第2章 线性方程组的解法2.2 直接三角分解法2.1 Gauss 消去法顺序Gauss 消去法列主元素Gauss 消去法顺序Gauss 消去法的数值稳定性是没有保证的主元Gauss 消元法有很好的数值稳定性Doolittle 分解法Crout 分解法 选主元的Doolitte 分解法 三角分解法解带状定理:若矩阵A 非奇异,则存在置换矩阵Q ,使得QA 可做Doolitte 分解,QA=LU ,其中L 是单位下三角矩阵,U 是上三角矩阵。
推论:矩阵A 有唯一的能进行Crout 分解的充分必要条件是:A 的前n-1个顺序主子式不等于0 定理:矩阵A=有唯一的能进行Doolittle(杜利特尔)分解的充分必要条件是:A 的前n-1个顺序主子式不等于0定理:(1)A=是上半带宽为s 下半带宽为r 的带状矩阵(2)A 的前n-1个顺序主子式均不为零,则A 有唯一的Doolitte 分解A=LU ,其中L 是下半带宽为r 的单位下三角矩阵,U 是上半带宽为s 的上三角矩阵。
数值分析简述及求解应用摘要:数值分析是研究分析用计算机求解数学计算问题的数值计算方法及其理论的学科,本文主要介绍了数值分析的一些求解方法的原理和过程,并应用在电流回路和单晶硅提拉过程中的,进一步体现数值分析的实际应用。
关键字:解方程组插值法牛顿法一、引言随着科学技术的发展,提出了大量复杂的数值计算问题,在建立电子计算机成为数值计算的主要工具以后,它以数字计算机求解数学问题的理论和方法为研究对象。
有可靠的理论分析,要有数值实验,并对计算的结果进行误差分析。
数值分析的主要内容包括插值法,函数逼近,曲线拟和,数值积分,数值微分,解线性方程组的直接方法,解线性方程组的迭代法,非线性方程求根,常微分方程的数值解法。
运用数值分析解决问题的过程包括:实际问题→数学建模→数值计算方法→程序设计→上机计算求出结果。
在自然科学研究和工程技术中有许多问题可归结为求解方程组的问题,方程组求解是科学计算中最常遇到的问题。
如在应力分析、电路分析、分子结构、测量学中都会遇到解方程组问题。
在很多广泛应用的数学问题的数值方法中,如三次样条、最小二乘法、微分方程边值问题的差分法与有限元法也都涉及到求解方程组。
在工程中常会遇到求解线性方程组的问题,解线性方程组的方法有直接法和迭代法,直接法就是经过有限步算术运算,可求的线性方程组精确解的方法(若计算过程没有舍入误差),但实际犹如舍入误差的存在和影响,这种方法也只能求得近似解,这类方法是解低阶稠密矩阵方程组级某些大型稀疏矩阵方程组的有效方法。
直接法包括高斯消元法,矩阵三角分解法、追赶法、平方根法。
迭代法就是利用某种极限过程去逐步逼近线性方程组精确解的方法。
将方程组的解看作是某极限过程的极限值,且计算这一极限值的每一步是利用前一步所得结果施行相同的演算步骤而进行。
迭代法具有需要计算机的存储单元少,程序设计简单,原始系数矩阵在计算过程始终不变等优点,但存在收敛性级收敛速度问题。
迭代法是解大型稀疏矩阵方程组(尤其是微分方程离散后得到的大型方程组)的重要方法。
matlab 矩阵上三角化的方法
在MATLAB中,有几种方法可以将矩阵上三角化。
这里介绍两种常用的方法:
方法一:利用MATLAB中的函数
可以使用MATLAB中的内置函数`triu()`将矩阵上三角化。
具体的步骤如下:
1. 开始之前,先定义一个矩阵。
例如,假设我们有一个3×3
的矩阵A:
A = [1 2 3; 4 5 6; 7 8 9]
2. 使用`triu()`函数将矩阵A转换为上三角矩阵B:
B = triu(A)
现在,矩阵B就是上三角形式的矩阵。
方法二:使用高斯消元法
将矩阵转换为上三角形式,也可以使用高斯消元法。
可以通过以下步骤实现:
1. 开始之前,先定义一个矩阵。
例如,假设我们有一个3×3
的矩阵A:
A = [1 2 3; 4 5 6; 7 8 9]
2. 使用高斯消元法将矩阵A转换为上三角矩阵。
可以使用MATLAB的`rref()`函数进行高斯消元。
具体步骤如下:
B = rref(A)
现在,矩阵B就是上三角形式的矩阵。
无论使用哪种方法,上述步骤都可以将矩阵上三角化。
数值分析思考题11、讨论绝对误差(限)、相对误差(限)与有效数字之间的关系。
2、相对误差在什么情况下可以用下式代替?3、查阅何谓问题的“病态性”,并区分与“数值稳定性”的不同点。
4、取,计算,下列方法中哪种最好?为什么?(1)(33-,(2)(27-,(3)()313+,(4)()611,(5)99-数值实验数值实验综述:线性代数方程组的解法是一切科学计算的基础与核心问题。
求解方法大致可分为直接法和迭代法两大类。
直接法——指在没有舍入误差的情况下经过有限次运算可求得方程组的精确解的方法,因此也称为精确法。
当系数矩阵是方的、稠密的、无任何特殊结构的中小规模线性方程组时,Gauss消去法是目前最基本和常用的方法。
如若系数矩阵具有某种特殊形式,则为了尽可能地减少计算量与存储量,需采用其他专门的方法来求解。
Gauss消去等同于矩阵的三角分解,但它存在潜在的不稳定性,故需要选主元素。
对正定对称矩阵,采用平方根方法无需选主元。
方程组的性态与方程组的条件数有关,对于病态的方程组必须采用特殊的方法进行求解。
数值计算方法上机题目11、实验1. 病态问题实验目的:算法有“优”与“劣”之分,问题也有“好”和“坏”之别。
所谓坏问题就是问题本身的解对数据变化的比较敏感,反之属于好问题。
希望读者通过本实验对此有一个初步的体会。
数值分析的大部分研究课题中,如线性代数方程组、矩阵特征值问题、非线性方程及方程组等都存在病态的问题。
病态问题要通过研究和构造特殊的算法来解决,当然一般要付出一些代价(如耗用更多的机器时间、占用更多的存储空间等)。
问题提出:考虑一个高次的代数多项式re x xex x*****-==141.≈)61∏=-=---=201)()20)...(2)(1()(k k x x x x x p (E1-1)显然该多项式的全部根为l ,2,…,20,共计20个,且每个根都是单重的(也称为简单的)。
现考虑该多项式方程的一个扰动0)(19=+xx p ε (E1-2)其中ε是一个非常小的数。