大连理工大学矩阵与数值分析上机作业13388.docx
《大连理工大学矩阵与数值分析上机作业13388.docx》由会员分享,可在线阅读,更多相关《大连理工大学矩阵与数值分析上机作业13388.docx(25页珍藏版)》请在冰点文库上搜索。
大连理工大学矩阵与数值分析上机作业13388
共享知识分享快乐
大连理工大学
矩阵与数值分析上机作业
课程名称:
矩阵与数值分析
研究生姓名:
12交作业日时间:
日20月年2016
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
第1题
1.1程序:
Clear;alln=input('请输入向量的长度n:
')
fori=1:
n;
v(i)=1/i;
end
Y1=norm(v,1)
Y2=norm(v,2)
Y3=norm(v,inf)
1.2结果
n=10Y1=2.9290
Y2=1.2449
Y3=1
n=100Y1=5.1874
Y2=1.2787
Y3=1
n=1000Y1=7.4855
Y2=1.2822
Y3=1
N=10000Y1=9.7876
Y2=1.2825
Y3=1
1.3分析
一范数逐渐递增,随着n的增加,范数的增加速度减小;二范数随着n的增加,逐渐趋于定值,无群范数都是1.
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
第2题
2.1程序
;clearallx
(1)=-10^-15;dx=10^-18;L=2*10^3;i=1:
Lfory1(i)=log(1+x(i))/x(i);d=1+x(i);d==1if
y2(i)=1;else
y2(i)=log(d)/(d-1);end
x(i+1)=x(i)+dx;endx=x(1:
length(x)-1););'r'plot(x,y1,onhold
plot(x,y2);
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
2.2结果
2.3分析
红色的曲线代表未考虑题中算法时的情况,如果考虑题中的算法则数值大小始终为1,这主要是由于大数加小数的原因。
第3题
3.1程序
;clearallA=[1-18144-6722016-40325376-46082304-512];x=1.95:
0.005:
2.05;i=1:
length(x);fory1(i)=f(A,x(i));y2(i)=(x(i)-2)^9;endfigure(3);plot(x,y1);;onhold
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
);'r'plot(x,y2,
F.m文件
y=f(A,x)functiony=A
(1);i=2:
length(A);fory=x*y+A(i);;end3.2结果
第4题
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
4.1程序
;clearalln=input('请输入向量的长度n:
')
A=2*eye(n)-tril(ones(n,n),0);i=1:
nforA(i,n)=1;endn=length(A);U=A;e=eye(n);fori=1:
n-1
[max_data,max_index]=max(abs(U(i:
n,i)));e0=eye(n);max_index=max_index+i-1;U=e0*U;e1=eye(n);j=i+1:
nfor
e1(j,i)=-U(j,i)/U(i,i);end
U=e1*U;中把变换矩阵存到PP{i}=e0;%L{i}=e1;e=e1*e0*e;endk=1:
n-2forLdot{k}=L{k};i=k+1:
n-1for
Ldot{k}=P{i}*Ldot{k}*P{i};end
endLdot{n-1}=L{n-1};LL=eye(n);PP=eye(n);i=1:
n-1forPP=P{i}*PP;LL=Ldot{i}*LL;end
b=ones(n,2);解方程%b=e*b;x=zeros(n,1);x(n)=b(n)/U(n,n);i=n-1:
-1:
1for卑微如蝼蚁、坚强似大象.
共享知识分享快乐
x(i)=(b(i)-U(i,:
)*x)/U(i,i);end计算逆矩阵%X=U^-1*e^-1*eye(n);AN=X';result2{n-4,1}=AN;result1{n-4,1}=x;,n)'%d:
\n'fprintf(fprintf('%d',AN);
4.2结果
n=5
1.0625-0.875-0.75-0.5-0.0625
-0.06250.0625-0.751.125-0.5
-0.06250.1250.06251.25-0.5
-0.06250.125
0.250.0625
1.5
0.0625
-0.5
-0.25
-0.0625-0.125
n=10
1.0625-0.875-0.75-0.5-0.06251.0625-0.875-0.75-0.5-0.0625
-0.06251.1250.0625-0.75-0.5-0.50.06251.125-0.75-0.0625
-0.06250.06250.1251.251.25-0.0625-0.50.06250.125-0.5
-0.06250.25
0.25
0.06250.125
1.51.5-0.06250.125
0.0625
0.0625-0.0625-0.125-0.250.0625-0.5-0.0625-0.125-0.25-0.5
-0.0625-0.751.0625-0.5-0.0625-0.875-0.5-0.751.0625-0.875
-0.0625-0.50.06251.125-0.50.06251.125-0.75-0.0625-0.75
1.250.1250.0625-0.0625-0.0625-0.5-0.50.06250.1251.25
0.25
-0.0625-0.06251.5
0.125
0.06250.06250.25
0.125
1.5
-0.0625-0.125-0.250.0625
-0.50.0625-0.0625-0.125-0.25
-0.5
同样的方法可以算出n=20,n=30时的结果,这里就不罗列了。
第5题
5.1程序
;clearalln=input('请输入向量的长度n:
10至20')
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
i=1:
nforj=1:
nfor
a(i,j)=1/(i+j-1);end
endj=1:
nforsum=0;k=1:
j-1for
sum=sum+l(j,k)^2;end
l(j,j)=sqrt(a(j,j)-sum);i=j+1:
nfor
sum=0;k=1:
j-1forsum=sum+l(i,k)*l(j,k);end
l(i,j)=(a(i,j)-sum)/l(j,j);end
endb=ones(n,1);y=zeros(n,1);y(n)=b(n)/l(n,n);i=n-1:
-1:
1fory(i)=(b(i)-l(i,:
)*y)/l(i,i);endl=l';x=zeros(n,1);x(n)=y(n)/l(n,n);i=n-1:
-1:
1forx(i)=(y(i)-l(i,:
)*x)/l(i,i);end,x);'%d\t'fprintf();fprintf('\n'
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
5.2结果
n=10
n=11
n=12
n=13
n=14
n=15
n=16n=17
n=18
n=19
n=20
-746517.83111493.4-11884558478355909497329749519377549378885969341571897102094396994971030445748685
.6
0
.6
688
23
.85
.5
.9
.7
.8
-1.68795E-1.76915E69820595.-35465847163411090-77484610-80547115-82914903-72327488-62111481-60010758+11
08
9.9
5
111
920
907
690
037
946
+11
-15874441987554340-549934613.06265E+3.18327E+3.23484E+2.86169E+2.48062E+2.55037E+7.40163E+6.93865E+97
7
592
12
12
12
12
12
12
12
12
152439746-1.17236E7.93546E+-5.20373E-5.40791E-5.42806E-4.8713E+-4.26882E-4.65382E-1.3123E+-1.21156E43
+11
11
+13
+13
+13
13
+13
+13
14
+14
-761846207.35352E+-6.11155E4.7524E+14.93812E+4.89563E+4.46792E+3.97243E+4.57473E+1.22E+151.11E+15
048
11
+12
4
14
14
14
14
14
2.18036E+-2.70378E2.80302E+-2.62E+15-2.72E+15-2.66E+15-2.48E+15-2.25E+15-2.72E+15-6.64E+15-5.98E+15
11
+12
13
-3.70513E6.12295E+1.94E+16
1.04E+162.17E+169.59E+159.27E+158.90E+158.30E+15-8.11E+139.24E+15
12
+11
1.51789E+-8.64269E3.69292E+-2.17E+16-2.25E+16-2.14E+16-2.14E+16-2.07E+16-2.60E+16-4.18E+16-3.74E+16
14
+12
11
-1.83339E7.40507E+-1.99261E3.77E+16
4.06E+163.56E+164.28E+163.40E+163.53E+163.34E+163.52E+16
+14
+11
12
1.3792E+1-3.52275E449059794-3.55E+16-3.68E+16-3.47E+16-3.89E+16-4.12E+16-4.38E+16-4.89E+15-1.01E+16
4
+12
30
-5.87483E7.13565E+-1.64E+16-5.28E+15
2.73E+162.37E+162.35E+162.44E+162.40E+162.94E+16
+1311
1.08203E+-8.98E+15-9.29E+15-1.03E+16-9.10E+15-7.78E+15-4.50E+15-1.23E+16-1.58E+16
13
1.04E+16
1.50E+151.55E+153.06E+15-2.94E+15-6.68E+151.72E+151.63E+16
-7.94676E2.17168E+3.85E+16
7.29E+155.08E+15-1.45E+153.84E+16
+1412
1.58892E+-2.50E+15-2.19E+15-8.57E+15-2.64E+16-2.01E+16
14
-3.1296E+4.80384E+-8.62E+16-7.98E+16
1.48E+16
14
14
1.19E+172.304E+14-9.01E+151.40E+17
-8.07E+16-6.35E+161.99E+15
1.09E+16
1.70E+16
7.5453E+1
4
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
第6题
6.1程序
;clearallA=[1234;-13sqrt
(2)sqrt(3);-22exp
(1)pi;-sqrt(10)2-37;0275/2;];U=f61(A(:
2));HA=f62(U,A);
f.m文件
U=f61(x)functione1=eye(length(x),1);U=x-sign(x
(1))*sqrt(dot(x,x))*e1;U=U./sqrt(dot(U,U));
HA=f62(U,A)functionHA=A-2*U*U'*A;
6.2结果
-2.26491106454.7358408697.695867546
-0.321627306-1.9638167384.44E-162.264911064
1.5610545834.44E-160.1766073760.677680956
-4.157227246-0.9856702844.5360883034.44E-16
0.036088303
5.8427727542.176607376
4.44E-16
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
第7题
7.1程序
;allclear
max=1000;x(1,:
)=[123];i=1:
maxforx(i+1,1)=(-2+x(i,2)+3*x(i,3))/5;x(i+1,2)=(1+x(i,1)-4*x(i,3))/2;x(i+1,3)=(10+3*x(i,1)-4*x(i,2))/15;err(i)=sqrt(dot(x(i+1,:
)-x(i,:
),x(i+1,:
)-x(i,:
)));(err(i)<10^-6)if;breakend
endfigure(7);plot(err);;errclear
x(1,:
)=[123];i=1:
maxforx(i+1,1)=(-2+x(i,2)+3*x(i,3))/5;x(i+1,2)=(1+x(i+1,1)-4*x(i,3))/2;x(i+1,3)=(10+3*x(i+1,1)-4*x(i+1,2))/15;err(i)=sqrt(dot(x(i+1,:
)-x(i,:
),x(i+1,:
)-x(i,:
)));(err(i)<10^-6)if;break
end
endonhold
);'r'plot(err,
7.2结果
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
误差越来越小。
8题第
8.1程序;allclear
max=100;x
(1)=1;i=1:
maxforx(i+1)=x(i)-(x(i)^3+2*x(i)^2+10*x(i)-100)/(3*x(i)^2+4*x(i)+10);(abs(x(i+1)-x(i))<10^-6)if;breakend
endfigure(8)plot(x);;clearxx
(1)=0;x
(2)=1;i=2:
maxfor
x(i+1)=x(i)-(x(i)^3+2*x(i)^2+10*x(i)-100)/(x(i)^3+2*x(i)^2+10*x(i)-(x(i-1)^3+2*x(i-1)^2+10*x(i-1)))*(x(i)-x(i-1));(abs(x(i+1)-x(i))<10^-6)if卑微如蝼蚁、坚强似大象.
共享知识分享快乐
;break
end
endonhold
);plot(x,'r'8.2结果
8.3分析
由计算结果可知,弦截法的收敛速度比牛顿法的收敛速度快。
第9题
9.1程序
;clearallf(0,4*pi);
f.m文件
[]=f(l,r)function(r-l<10^-6)if,(r-l)/2+l);'%g,'fprintf(return
endf9(l)*f9(r)<0iff9((l+r)/2+l)*f9(l)<0if
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
f(l,(l+r)/2+l);end
f9((l+r)/2+l)*f9(r)<0iff((l+r)/2+l,r);end
endf9(l)*f9(r)>0iff(l,(l+r)/2+l);f((l+r)/2+l,r);end9.2结果
X=4.71239、8.24668、17.6715、14.1372
第10题
10.1程序
;clearall节点个数n=3;%
Xj=0:
1/n:
1;y=sin(pi*Xj);i=1:
n+1forf(i,1)=y(i);endj=2:
n+1fori=1:
n-j+2;for
dx=((j-1)/n);f(i,j)=(f(i+1,j-1)-f(i,j-1))/dx;end
endi=1:
n+1fora(i)=f(1,i);endx=0:
0.001:
1;i=1:
1/0.001+1;fory1(i)=sin(pi*x(i));y2(i)=f10(a,Xj,x(i));endfigure(10););'r'plot(x,y1,卑微如蝼蚁、坚强似大象.
共享知识分享快乐
;onhold
);''plot(x,y2,
10.2结果
10.3分析
有图像可知插值函数的值已经很接近原函数的值了。
第11题
11.1程序
;allclear
n=input('请输入n:
')代表节点%nXj=-5:
1/n:
5;Yj=1./(1.+Xj.^2);
x=-5:
0.01:
5;i=1:
10/0.01+1;fory1(i)=1/(1+x(i)^2);y2(i)=f(Yj,Xj,x(i));endfigure(11);plot(x,y1,'r');
holdon;
plot(x,y2,,'');
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
f.m文件
y=f(Yj,Xj,x)functiony=0;i=1:
length(Yj)forl=1;j=1:
length(Xj)fori==jif;continueend
l=l*(x-Xj(j))/(Xj(i)-Xj(j));end
y=y+Yj(i)*l;end11.2结果
从左往右n依次取1、2、3、4
11.3分析
随着n的不断增加,插值越来越接近真实值。
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
第12题
12.1程序
clearall;
)'请输入n:
n=input('%n=501002005001000x=0:
2*pi/n:
2*pi;i=1:
n+1forX=x(i);Y(i)=exp(3*X)*cos(pi*X);endY
(1)=1;i=1:
nforX=(x(i)+x(i+1))/2;Y2(i)=exp(3*X)*cos(pi*X);endT=(x(n+1)-x
(1))/(2*n)*(Y
(1)+2*sum(Y(2:
n))+Y(n+1));S=(x(n+1)-x
(1))/(6*n)*(Y
(1)+4*sum(Y2)+2*sum(Y(2:
n))+Y(n+1));13.2结果
n501002005001000
3.5232204783.522553497T3.5231369363.5125341193.520489119232005e+07836321e+07493697e+07998542e+07592422e+07
3.5232483353.5232479163.5232416233.5231407863.523248325S
509114e+07
782247e+07
833490e+07
807637e+07
445201e+07
第13题
13.1程序
;allclear
G2=f(1/sqrt(3))+f(-1/sqrt(3));G3=0.555555556*f(-0.7745966692)+0.555555556*f(+0.7745966692)+0.88888888889*f(0);G5=0.2369268851*f(-0.9061798459)+0.2369268851*f(+0.9061798459)+...
0.4786286705*f(-0.5384693101)+0.4786286705*f(+0.5384693101)+...0.5688888889*f(0);
卑微如蝼蚁、坚强似大象.
共享知识分享快乐
f.m文件1
y=f(x)functiony=x^2/sqrt(1-x^2);
f.m文件2
y=f(x)functionx=pi/2*(x+1)/2;y=sin(x)/x;
13.2结果
(2)y=sin(x)/x
(1)y=x^2/sqrt(1-x^2)
1.74487172393660G2G20.816496580927726
1.74531021550