《数值分析》课程实验报告

上传人:cl****1 文档编号:401157141 上传时间:2023-11-09 格式:DOC 页数:7 大小:26KB
返回 下载 相关 举报
《数值分析》课程实验报告_第1页
第1页 / 共7页
《数值分析》课程实验报告_第2页
第2页 / 共7页
《数值分析》课程实验报告_第3页
第3页 / 共7页
《数值分析》课程实验报告_第4页
第4页 / 共7页
《数值分析》课程实验报告_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《《数值分析》课程实验报告》由会员分享,可在线阅读,更多相关《《数值分析》课程实验报告(7页珍藏版)》请在金锄头文库上搜索。

1、数值分析p 课程实验报告数值分析p 课程实验报告 姓 名: 学 号: 学 院: 机 电 学 院 日 期: 20_ 年 _ 月_ 日 目 录 实验一 函数插值方法 1 实验二 函数逼近与曲线拟合 5 实验三 数值积分与数值微分 7 实验四 线方程组的直接解法 9 实验五 解线性方程组的迭代法 15 实验六 非线性方程求根 19 实验七 矩阵特征值问题计算 21 实验八 常微分方程初值问题数值解法 24 实验一 函数插值方法 一、问题提出 对于给定的一元函数的n+1个节点值。试用Lagrange公式求其插值多项式或分段二次Lagrange插值多项式。 数据如下: 1 0.4 0.55 0.65 0

2、.80 0.95 1.05 0.41075 0.57815 0.69675 0.90 1.00 1.25382 求五次Lagrange多项式,和分段三次插值多项式,计算, 的值。提示:结果为, 2 1 2 3 4 5 6 7 0.368 0.135 0.050 0.018 0.007 0.002 0.001 试构造Lagrange多项式,计算的,值。提示:结果为, 二、要求 1、 利用Lagrange插值公式 编写出插值多项式程序; 2、 给出插值多项式或分段三次插值多项式的表达式; 3、 根据节点选取原那么,对问题2用三点插值或二点插值,其结果如何; 4、 对此插值问题用Newton插值多项

3、式其结果如何。Newton插值多项式如下: 其中: 三、目的和意义 1、 学会常用的插值方法,求函数的近似表达式,以解决其它实际问题; 2、 明确插值多项式和分段插值多项式各自的优缺点; 3、 熟悉插值方法的程序编制; 4、 假如绘出插值函数的曲线,观察其光滑性。 四、实验步骤 1 0.4 0.55 0.65 0.80 0.95 1.05 0.41075 0.57815 0.69675 0.90 1.00 1.25382 求五次Lagrange多项式,和分段三次插值多项式,计算, 的值。提示:结果为, 第一步:先在matlab中定义lagran的M文件为拉格朗日函数代码为: functionc

4、,l=lagran(_,y) w=length(_); n=w-1; l=zeros(w,w); for k=1:n+1 v=1; for j=1:n+1 if(k=j) v=conv(v,poly(_(j)/(_(k)-_(j); end end l(k,:)=v; end c=y_l; end 第二步:然后在matlab命令窗口输入: _=0.4 0.55 0.65 0.80,0.95 1.05;y=0.41075 0.57815 0.69675 0.90 1.00 1.25382; lagran(_,y) 回车得到: ans =121.6264 -422.7503 572.5667 -3

5、77.2549 121.9718 -15.0845 由此得出所求拉格朗日多项式为 p_=121.6264_5-422.7503_4+572.5667_3-377.2549_2+121.9718_-15.0845 第三步:在编辑窗口输入如下命令: _=0.4 0.55 0.65 0.80,0.95 1.05; y=121.6264_.5-422.7503_.4+572.5667_.3-377.2549_.2+121.9718_-15.0845; plot(_,y) 命令执行后得到如下列图所示图形,然后 _=0.596; y=121.6264_.5-422.7503_.4+572.5667_.3-

6、377.2549_.2+121.9718_-15.084 y =0.6262 得到f0.596=0.6262 同理得到f0.99=1.0547 2 1 2 3 4 5 6 7 0.368 0.135 0.050 0.018 0.007 0.002 0.001 试构造Lagrange多项式,和分段三次插值多项式,计算的,值。提示:结果为, 实验步骤: 第一步定义 functionc,l=lagran(_,y) w=length(_); n=w-1; l=zeros(w,w); for k=1:n+1 v=1; for j=1:n+1 if(k=j) v=conv(v,poly(_(j)/(_(k

7、)-_(j); end end l(k,:)=v; end c=y_l; end 定义完拉格朗日M文件 第二步:然后在matlab命令窗口输入: _=1 2 3 4 5 6 7; y=0.368 0.135 0.050 0.018 0.007 0.002 0.001; lagran(_,y) 回车得到: ans =0.0001 -0.0016 0.0186 -0.1175 0.4419 -0.9683 0.9950 由此得出所求拉格朗日多项式为 p_=0.0001_6-0.0016_5+0.0186_4-0.1175_3+0.4419_2-0.9683_+0.9950 第三步:在编辑窗口输入如

8、下命令: _=1 2 3 4 5 6 7; y=0.0001_.6-0.0016_.5+0.0186_.4-0.1175_.3+0.4419_.2-0.9683_+0.9950; plot(_,y) 命令执行后得到如下列图所示图形,然后 _=1.8; y=121.6264_.5-422.7503_.4+572.5667_.3-377.2549_.2+121.9718_-15.084 y =0.1650 得到f0.596=0.6262 同理得到f6.15=2.3644 五、实验结论 插值是在离散数据的根底上补插连续函数,使得这条连续曲线通过全部给定的离散数据点,它是离散函数逼近的重要方法,利用它

9、可通过函数在有限个点处的取值状况,估算出函数在其他点处的近似值。 实验二 函数逼近与曲线拟合 一、问题提出 从随机的数据中找出其规律性,给出其近似表达式的问题,在消费理论和科学实验中大量存在,通常利用数据的最小二乘法求得拟合曲线。 在某冶炼过程中,根据统计数据的含碳量与时间关系,试求含碳量与时间t的拟合曲线。 t(分) 0 5 10 15 20 25 30 35 40 45 50 55 0 1.27 2.16 2.86 3.44 3.87 4.15 4.37 4.51 4.58 4.02 4.64 二、要求 1、用最小二乘法进展曲线拟合; 2、近似解析表达式为; 3、打印出拟合函数,并打印出与

10、的误差,; 4、另外选取一个近似表达式,尝试拟合效果的比拟; 5、_绘制出曲线拟合图。 三、目的和意义 1、掌握曲线拟合的最小二乘法; 2、最小二乘法亦可用于解超定线代数方程组; 3、探究拟合函数的选择与拟合精度间的关系 四、实验步骤: 第一步先写出线性最小二乘法的M文件 function c=lspoly(_,y,m) n=length(_); b=zeros(1:m+1); f=zeros(n,m+1); for k=1:m+1 f(:,k)=_.(k-1); end a=f_f; b=f_y; c=ab; c=flipud(c); 第二步在命令窗口输入: lspoly(0,5,10,15

11、,20,25,30,35,40,45,50,55,0,1.27,2.16,2.86,3.44,3.87,4.15,4.37,4.51,4.58,4.02,4.64,2) 回车得到: ans = -0.0024 0.2037 0.2305 即所求的拟合曲线为y=-0.0024_2+0.2037_+0.2305 在编辑窗口输入如下命令: _=0,5,10,15,20,25,30,35,40,45,50,55; y=-0.0024_.2+0.2037_+0.2305; plot(_,y) 命令执行得到如下列图 五、实验结论 分析p 复杂实验数据时,常采用分段曲线拟合方法。利用此方法在段内可以实现最正

12、确逼近,但在段边界上却可能不满足连续性和可导性。分段函数的光滑算法,给出了相应的误差分析p .给出了该方法在分段曲线拟合中的应用方法以及凸轮实验数据自动分段拟合。 实验三 数值积分与数值微分 一、问题提出 选用复合梯形公式,复合Simpson公式,Romberg算法,计算 1 2 3 4 二、要求 1、 编制数值积分算法的程序; 2、 分别用两种算法计算同一个积分,并比拟其结果; 3、 分别取不同步长,试比拟计算结果如n = 10, 20等; 4、 给定精度要求,试用变步长算法,确定最正确步长。 三、目的和意义 1、 深入认识数值积分法的意义; 2、 明确数值积分精度与步长的关系; 3、 根据

13、定积分的计算方法,可以考虑二重积分的计算问题。 四、 实验步骤 第一步:编写各种积分的程序 复合梯形程序如下: function I=T_(_,y) n=length(_);m=length(y); if n=m error(The lengths of _ and Y must be equal); return; end h=(_(n)-_(1)/(n-1); a=1 2_ones(1,n-2) 1; I=h/2_sum(a._y); 复合Simpson程序如下: function s = simpr1(f,a,b,n) h=(b-a)/(2_n); s1=0; s2=0; for k=1

14、:10 _=a+h_(2_k-1); s1=s1+feval(f,_); end for k=1:(10-1) _=a+h_2_k; s2=s2+feval(f,_); end s=h_(feval(f,a)+feval(f,b)+4_s1+2_s2)/3; end Romberg程序如下: function I = Romber_yang(fun,a,b,ep) if nargin1; T(m+1,k+1)=(4k_T(m+1,k)-T(m,k)/(4k-1); M=M/2;k=k+1; end if abs(T(k,k)-T(k-1,k-1)a_ma_ a_ma_=abs(A(i,k);r=i; end end if a_ma_k for j=k:n z=A(k,j);A(k,j)=A(r,j);A(r,j)=z; end z=b(k);b(k)=b(r);b(r)=z;det=-det; end 消元过程 for i=k+1:n m=A(i,k)/A(k,k); for j=k+1:n A(i,j)=A(i,j)-m_A(k,j); end b(i

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号