2016级矩阵与数值分析上机作业.docx

2016级矩阵与数值分析上机作业.docx

ID:54764764

大小:847.68 KB

页数:72页

时间:2020-04-21

2016级矩阵与数值分析上机作业.docx_第1页
2016级矩阵与数值分析上机作业.docx_第2页
2016级矩阵与数值分析上机作业.docx_第3页
2016级矩阵与数值分析上机作业.docx_第4页
2016级矩阵与数值分析上机作业.docx_第5页
资源描述:

《2016级矩阵与数值分析上机作业.docx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、2016级矩阵与数值分析上机作业学生班级:学生姓名:任课教师:所在学院:电子信息与电气学部学生学号:使用软件:MATLAB2016年12月10号1.考虑计算给定向量的范数:输入向量,输出,,请编制一个通用程序,并用你编制的程序计算如下向量的范数:,对n=10,100,1000甚至更大的n计算其范数,你会发现什么结果?你能否修改你的程序使得计算结果相对精确呢?(1)计算范数的程序function[Nor1,Nor2,Nor3]=Nor(a)b=length(a);formatlongNor11=0;format

2、longNor21=0;i=1;whilei<=bNor11=Nor11+abs(a(i));Nor21=Nor21+a(i)^2;t=a(1);ifabs(a(i))>tt=abs(a(i));endi=i+1;endNor1=Nor11;%计算1范数Nor2=sqrt(Nor21);%计算2范数Nor3=t;%计算无穷范数end(2)x与y向量的程序functiona=afun(n)a=zeros(n);a(1)=1;fori=1:1:n;a(i)=1/i;endendfunctionb=bfun(n)b

3、=zeros(n);b(1)=1;fori=1:1:n;b(i)=i;endend运行:>>n=10;>>a=afun(n);>>b=bfun(n);>>[f1,f2,f3]=Nor(a);>>[h1,h2,h3]=Nor(b);f1=2.8254f2=1.5769f3=1h1=55h2=19.8583h3=10>>n=100;a=afun(n);b=bfun(n);[f1,f2,f3]=Nor(a);>>[h1,h2,h3]=Nor(b);f1=5.9621f2=1.3052f3=1h1=5050h2=5.

4、1153e+02h3=100>>n=1000;a=afun(n);b=bfun(n);[f1,f2,f3]=Nor(a);>>[h1,h2,h3]=Nor(b);f1=7.0343f2=1.1847f3=1h1=h2=1.2642e+04h3=1000上述结果由于MATLAB的高精度运算较为准确,但是由于当n非常大时可能会出现了大数吃小数的现象使误差增大,而y向量的范数结果较为准确是由于y向量是按从小到大排列。改进范数计算程序使输入序列按从小到大排列再计算其范数:function[Nor1,Nor2,Nor3

5、]=Nor(c)a=sort(c);b=length(a);formatlongNor11=0;formatlongNor21=0;i=1;whilei<=bNor11=Nor11+abs(a(i));Nor21=Nor21+a(i)^2;t=a(1);ifabs(a(i))>tt=abs(a(i));endi=i+1;endNor1=Nor11;%计算1范数Nor2=sqrt(Nor21);%计算2范数Nor3=t;%计算无穷范数end2.考虑,其中定义,此时是连续函数。用此公式计算当时的函数值,画出图像。

6、另一方面,考虑下面算法:用此算法计算x∈[−10−15,10−15]时的函数值,画出图像。比较一下发生了什么?函数:functionF=Piecewise1_x(x)F=log(x+1)/x*(x<0)+1*(x>=0&x<=0)+log(x+1)/x*(x>0);endfunctionF=Piecewise2_x(x)F=log(x)/(x-1)*(x<1)+1*(x>=1&x<=1)+log(x)/(x-1)*(x>1);end运行:clcclearx=linspace(-10^(-15),10^(-15

7、));d=x+1;%原来图像(红色曲线)F=Piecewise1_x(x);%计算相应函数值plot(x,F,'r');%绘制曲线holdon;%改变算法后的图像(蓝色曲线)F1=Piecewise2_x(d);%计算相应函数值plot(x,F1,'b');%绘制曲线holdon;plot(0*ones(1,2),ylim,'g:');%画区间间隔线plot(xlim,1*ones(1,2),'g:');%画区间间隔线xlabel('变量X')ylabel('变量Y1&Y2')由上图可知改变后的算法画出的曲线

8、(蓝色)比直接画出的曲线(红色)更贴近实际值误差更小,且由于ln(x+1)<=x所以不会出现小数做除数导致误差增大。这可能是因为在原算法中x+1出现了大数吃小数的现象导致的结果。3.首先编制一个利用秦九韶算法计算一个多项式在给定点的函数值的通用程序,你的程序包括输入多项式的系数以及给定点,输出函数值。利用你编制的程序计算在x=2邻域附近的值。画出p(x)在x∈[1.95,20.5]上的图像。秦九韶算

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。