欢迎来到天天文库
浏览记录
ID:33992909
大小:1.70 MB
页数:91页
时间:2019-03-03
《数值分析实验教程》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、第二篇数值分析3第1章绪论41.12的平方根计算41.2计算效率探讨5实验题7第2章插值法82.1拉格朗日插值多项式的存在性82.2利用拉格朗日插值多项式计算函数值82.3差商表构造102.4利用牛顿插值多项式计算函数值112.5龙格现象122.6分段线性插值的逼近性142.7拉格朗日插值多项式与埃米特插值多项式的比较162.8拉格朗日插值多项式与三次样条插值函数的比较18实验题22第3章函数的数值逼近243.1伯恩斯坦多项式逼近连续函数的动画演示243.2函数的最佳平方逼近多项式263.3希尔伯特矩阵的病态性273.4多项式拟合模型的选取283.
2、5非线性拟合模型的选取29实验题31第4章数值积分324.1牛顿—科茨公式的数值稳定性324.2复化求积思想的动画演示344.3自动选取步长的复化梯形求积算法364.4龙贝格数表374.5龙贝格求积方法39实验题41第5章非线性方程求根435.1两分法求方程的根435.2定积分中值定理的几何证明455.3迭代法的敛散性研究475.4艾特肯方法495.5牛顿法505.6弦截法515.7快速弦截法53实验题54第6章常微分方程数值解566.1欧拉方法的几何意义566.2欧拉方法与改进的欧拉方法的比较576.3四阶经典公式596.4四阶阿当姆斯预报校正系
3、统616.5变步长的龙格库塔方法63实验题66第7章线性方程组求解687.1高斯顺序消去法687.2高斯列主元消去法707.3高斯全主元消去法727.4方阵的LU分解767.5选方阵列主元的LU分解787.6追赶法807.7平方根法827.8改进的平方根法847.9雅可比迭代857.10高斯—塞德尔迭代88实验题89第二篇数值分析在信息时代,科学技术出现了前所未有的发展,其中数学应用的广泛性和深入性已成为现代科技发展的重要特征。数学与科学计算、理论研究、科学实验并列为科学研究的三大支柱,计算机已成为科学与工程技术等领域不可缺少的工具。因此,在大学数
4、学教育中,应特别注重对实际问题的数学建模,为数学模型求解提供有效的计算算法以及运用计算机进行求解等能力的培养与训练。数值分析是研究各种数学问题求数值解的方法,离散化、递推化是它处理问题的主要手段,误差分析是它研究的核心问题,以计算机和数学软件为工具进行数值计算是它的显著特征。MATLAB具有强大的数值计算功能,可以进行数值插值、曲线拟合、数值积分、非线性方程求根、线性方程组求解、微分方程求数值解等运算。本篇主要给出了数值分析涉及到数学实验,这些实验的编程思想和MATLAB程序代码。通过本篇的学习,能对数值分析中主要概念、主要数值算法有更进一步的认识
5、,更好地掌握MATLAB编程,并学会利用MATLAB解决科学计算的问题。绪论1.12的平方根计算实验用例用递推算法求的近似值,并回答下述问题1.的有效数字是几位;2.的有效数字的位数是否为的2倍?若是,这是否表明该算法具有较高的计算效率;3.若近似值的误差精度要求为,编程计算的近似值。实验步骤及说明1.在MATLAB命令空间键入formatlong,按下Enter键,设置数值格式为实长型。2.键入sqrt(2)并按下Enter,可得到具有较高精度的近似值,我们假定该值为的精确值,其值为1.41421356237310。3.键入x=2,按下Enter
6、键,再键入x=(x+2/x)/2,再按下Enter键,得到第1次递推值x1;按下↑键,调出表达式x=(x+2/x)/2,按下Enter键,得到第2次递推值x2;再按下↑键,调出表达式x=(x+2/x)/2,再按下Enter键,得到第3次递推值x3。将该值与的精确值作比较,可知x具有6位有效数字。4.继续按下↑键,调出表达式x=(x+2/x)/2,并按下Enter键,得到第4次递推值x4。将该值与的精确值进行比较,可知x4具有12位有效数字。这表明,第4次递推值的有效数字的位数比第3次递推值的有效数字的位数增加了2倍,该算法确实具有较高的计算效率。为
7、了解决实验中的第3个问题,我们需要编写MATLAB程序。编程思想1.从数学上可以证明,序列单调下降趋向于。与的误差,可以用来近似代替。一旦,便终止递推过程,取作为的近似值。为了方便,我们引入变量err来保存误差。2.由于递推过程仅需要保留与两个值,我们分别用x1与x2来代替。3.递推开始时,我们设置误差err的初值为1。事实上,只要是满足条件err>ε的任意err值都可以作为初值。程序代码eps=10^(-8);%误差精度err=1;%初始误差x1=2;%递推初值whileerr>=epsx2=(x1+2/x1)/2;%递推err=abs(x2-x
8、1);%误差计算x1=x2;%准备下一次的递推初值endfprintf('2的平方根的近似值为%10.8f',x1)%
此文档下载收益归作者所有