您好,欢迎访问三七文档
淮阴工学院《数值分析》考试──基于Matlab的方法综合应用报告班级:金融1121姓名:姚婷婷学号:1124104129成绩:数理学院2014年6月7日《数值分析》课程综述报告前言:数值分析也称计算方法,它与计算工具的发展密切相关。数值分析是一门为科学计算提供必需的理论基础和有效、实用方法的数学课程,它的任务是研究求解各类数学问题的数值方法和有关的理论。正文:第一章近似计算与误差分析1、产生误差的原因:①模型误差;②观测误差;③截断误差;④舍入误差。2、四则运算的误差:①加减法运算****xyxy②乘法运算***************xyxyxyxyxyxyxyyyxxxyxyyx③除法运算:**********************2**xxxyxyyyyyxyxyxyxyyyxxyyyxyyxyyxxyy3、科学表示法、有效数字、近似值的精度任何一个实数都可以表示成如下的形式:其中:是正整数,是整数,如果是数的近似值并且则称该近似值具有位有效数字(significantdigit)。此时,该近似值的相对误差为另一方面,若已知*1111021nrxa那么,***1112110.10211102rmnnmnxxxxaaaa即:*x至少有n位有效数字。例:3.141592653589793...取其近似值如下:x*=3.14x*=3.14159x*=3.1415x*=3.141**213100.314110.0016...0.005101022xx**516100.314159110.0000026...0.000005101022xx**314100.31415110.000092...0.0001101022xx**213100.3141110.00059...0.001101022xx第二章线性方程组在科学计算中,问题的本身就是求解线性方程组,许多问题的求解需要最后也归结为线性方程组的求解,所以线性方程组的求解是科学计算中最常见的问题。对于线性方程组的求解一般有两种方法:(1)直接法:高斯消去法;(2)间接法:各种迭代法。(1)高斯消去法:①求解思路:先消元,即按一定的规律逐步消去未知量,将方程组AxB化为等价的上(或下)三角形方程组;然后进行回代,即由上三角形方程组逐个求出;②高斯(列、全)主元素消去法,及在消元的每一步选取(列)主元素——列中绝对值最大的元取做主元素,计算步骤:⑴消元过程:按列选主元、行交换、消元计算;⑵回代过程;③高斯列主元素消去法的MATLAB实现:。第三章解线性方程组的迭代法通常逆矩阵不易求得,特别是对于大型的线性方程组,需要用迭代法求解。用迭代法求解线性方程组,要把线性方程组写成等价的形式,右边写为迭代格式,如:kbxkAkxbxkAbkxAxkxbMxbxEAbxAxxbMxxbAxEEnn)(1)()(2、关于迭代法收敛性的两个重要结论:①充分必要条件是:矩阵的谱半径1M;②充分条件是:矩阵M的某个算子范数1M。3、线性方程组的迭代法主要有Jacobian迭代法,Gauss-Seidel迭代法。①Jacobian迭代法:11111kkAxbDLUxbADLUDxLUxbxDLUxDbMDLUfDb②Gauss-Seidel迭代法:11111kkAxbDLxUxbADLUxDLUxDLbMDLUfDLb(3.7)③Jacobian迭代法与G-S迭代法比较:11111121122111111211121000000000000kkkkkknnnnnknknnknxxaxxDaaxxxaaxDDbax(3.8)式(3.7)和(3.8)表明:Gauss-Seidel迭代法在计算第1k次迭代的第i个分量1kix时,及时地利用了在此步迭代中得到的新的迭代值:1kjx,1,2,,1ji,由于第1k步的迭代值通常比第k步的迭代值更接近方程组的精确解,所以,在Jacobian迭代法和GS迭代法都收敛的情况下,Gauss-Seidel迭代法的收敛速度比Jacobian迭代法的收敛速度高。例题:用MATLAB函数normrdn生成5阶矩阵M和向量b分别构造线性方程组Axb的Jacobi迭代格式和G-S迭代格式,并判断收敛性。Jacobian迭代法和GS迭代法程序如下:clc;clearall;%1、生成M和bM=normrnd(1,2,5)b=normrnd(1,2,5,1)%Jacobian迭代法M1=D\(L+U)f1=D\brho=max(abs(eig(M1)));R=1e-08;%设定的一个收敛标准switchsign(1-rho)case-1disp('theJocobianmethodisnotapplicable')otherwisex(:,1)=normrnd(0,9,5,1);k=1whilek=50*5x(:,k+1)=M1*x(:,k)+f1;ifnorm(x(:,k+1)-x(:,k))=Rk=k+1;elseX=x(:,k+1);disp('Jacobian迭代法迭代次数为:')IterN=k%Jacobian迭代法迭代次数breakendendend%Causs-Seidel迭代法M2=(D-L)\Uf2=(D-L)\brho=max(abs(eig(M2)));R=1e-08;switchsign(1-rho)case-1disp('theauss-seidelmethodisnotapplicable')otherwisex(:,1)=normrnd(0,9,5,1);k=1whilek=50*5x(:,k+1)=M2*x(:,k)+f2;ifnorm(x(:,k+1)-x(:,k))=Rk=k+1;elseX=x(:,k+1)disp('Causs-Seidel迭代法迭代次数为:')IterN=kbreakendendend第四章非线性代数方程(组)的数值解法:一、二分法:首先要确定适当的包含根的区间,这可以依据闭区间上连续函数的介值定理来确定,例如该方程:320.80.750fxxxx-1-0.500.511.522.5-2-1.5-1-0.500.511.52SolvetoalgebraicequationbyTheBisectionMethodxf(x)对于该方程120.80.750f00.750f所以该方程至少有一个实根位于区间,图像表明该区间中只含有一个实根;用*x表示方程0fx在区间,ab上的精确解,对于给定的精度要求0,取区间,ab的中点2abx,并按下式进行判断:***00[,]0[,]fxxxfxfaxaxfxfbxxb(1)以0fxfa为例,①如果2ba,没有达到精度要求,令xb,并重复(1)的迭代过程;②如果2ba,那么,必有*,,xxxax,因为*,xax。即区间,ax内的任何一点都可以作为方程0fx的近根,特别地,可取x做为近似解。二、牛顿迭代法:任取初始值)(],,[0xfybax上过点()(,00xxf)的切线方程为:))(()(000xxxxffy与x轴交于点x1,)()(0001xxxxff,过点))(,(11xxf的切线方程为))(()(111xxxxffy与x轴交于点x2,)()(1112xxxxff,………,如此下去得牛顿迭代公式:)()(1xxxxnnnnff例题:考虑如下三阶非线性方程组:()()()22222222=22204axyzaxyaaxayazbìï++ïï+=íïï-+-+-=ïî其中取适当的迭代初值()000,y,Txz,用Newton迭代法求方程组的数值解程序:%Newton迭代法求解x=sym('x','clear');y=sym('y','clear');symsz;F=[x^2+y^2+a^2*z^2/2-a^2;x+y-a;(2*x-a)^2+(2*y-a)^2+a^2*(z-b)/4];Fx=diff(F,x,1);Fy=diff(F,y,1);Fz=diff(F,z,1);DF=[FxFyFz];F=@(x,y,z)[x^2+y^2+a^2*z^2/2-a^2;x+y-a;(2*x-a)^2+(2*y-a)^2+a^2*(z-b)/4];%Newton迭代法求解过程Fr=10^-10;Er=10^-10;x0=[-a/4;-a;-a/2];x0=[-a/4;-a;a/2];k=1;X(:,1)=x0;whilenorm(F(X(1,k),X(2,k),X(3,k))-[0;0;0],2)=Frtic;f(:,k)=F(X(1,k),X(2,k),X(3,k));J=subs(DF,'x',X(1,k));J=subs(J,'y',X(2,k));J=subs(J,'z',X(3,k));X(:,k+1)=X(:,k)-J\f(:,k);t(k)=toc;ifnorm((X(:,k+1)-X(:,k)),2)Erbreakendk=k+1;enddisp('Newton迭代法结果为:');disp(X(:,end));运行结果:Newton迭代法结果为:3.42910.46580.6535第五章插值一、插值:插值是离散函数逼近的重要方法,利用它可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。二、常用差值法:拉格朗日(Lagrange)插值法、牛顿(Newton)插值法1、拉格朗日(Lagrange)插值法:拉格朗日插值多项式0nkkkLxLxy⑴简单的证明因为拉格朗日插值多项式的基函数有如下的性质:010,njkkjjkjjkxxxxLxxxjkxx0,1,2,,kn所以拉格朗日插值多项式0nkjkjkkkkjLxLxyLxyy0,1,2,,kn满足插值的条件。插值多项式0nkkkLxLxy⑶拉格朗日插值法的不足在实际问题中,观测的数据可能会不断增加,如果用拉格朗日插值公式构造插值多项式,那么,每当增加数据就要重新计算多项式的系数,由此增加许多不必要的计算工作量。2、(三次)样条(Spline)插值⑴插值条件要求要求所求的插值多项式Sx(三次样条函数)①在每个区间1,kkxx,0,1,2,,kn,是次数不超过三次的多项式;②kkSxy,0,1,2,,kn;③Sx在区间..上具有二阶连续导数。例题:在夏季,较大湖泊的水体按深度被跃变层分为上部的变温层和下部的均温层。水体的分层化对环境工程中污染问题的研究具有重要的意义,例如,有机物的分解将导致被跃变层隔离的底部水体中氧急剧减少。按温度随水深的变化曲线xTT,跃变层位于水深处:00maxxbottomdxTxdx现有美国普拉特湖(PlatteLake)的一组数据:深度(m):x02.34.99.113.718.322.927.2温度(C0):T
本文标题:数值分析综述报告
链接地址:https://www.777doc.com/doc-5690647 .html