matlab复习题.docx
《matlab复习题.docx》由会员分享,可在线阅读,更多相关《matlab复习题.docx(18页珍藏版)》请在冰豆网上搜索。
matlab复习题
第一题
程序:
a=[123];
b=[124698];
c1=3*a+7*b
c2=dot(a,b)
c3=cross(a,b)
c4=a.^2
c5=norm(a)
c6=a.*b
c7=a'
结果
c1=
87328695
c2=
398
c3=
58-6222
c4=
149
c5=
3.7417
c6=
1292294
c7=
1
2
3
第二题
1将屏幕分割为四块,并分别画出
y1=sin(x),y2=cos(x)
y3=sin(x)cos(x)
y4=sin(x)/cos(x)
程序:
x=0:
0.1:
2*pi;
y1=sin(x);
y2=cos(x);
y3=sin(x).*cos(x);
y4=sin(x)./cos(x);
subplot(2,2,1);
plot(x,y1,'r')
subplot(2,2,2);
plot(x,y2)
subplot(2,2,3);
plot(x,y3,'g')
subplot(2,2,4);
plot(x,y4,'b')
结果
2在[0,2*pi]上画
,
星形图
程序:
ezplot('cos(t)^3','sin(t)^3',[0,2*pi])
结果:
3在[-2,0.5],[0,2]上画隐函数
的图
程序:
ezplot('exp(x)+sin(x*y)',[-2,0.5,0,2])
结果:
4画x=[123456789],y=[569823154]所对应的散点图
程序:
x=1:
9;
y=[569823154];
scatter(x,y)
结果:
5在区间[0,10*pi]画出参数曲线x=sin(t),y=cos(t),z=t.
程序:
t=0:
0.1:
10*pi;
x=sin(t);
y=cos(t);
z=t;
plot3(x,y,z)
结果:
6)画函数Z=(X+Y)2的图形
程序:
x=-1:
0.1:
1;
y=-1:
0.1:
1;
[X,Y]=meshgrid(x,y);
Z=(X+Y).^2;
surf(X,Y,Z)
结果:
7)在范围-2的等值线图
程序:
x=-2:
0.1:
2;
y=-2:
0.1:
3;
[X,Y]=meshgrid(x,y)
Z=X.*exp(-X.^2-Y.^2);
contour(Z)
结果:
8)已知山区的采样点的坐标如表格,请还原回山区的地貌图和等高线图
程序:
x=1200:
400:
4000;
y=1200:
400:
3600;
[x,y]=meshgrid(x,y);
z=[11301250128012301040900500700
13201450142014001300700900850
139015001500140090011001060950
15001200110013501450120011501010
15001200110015501600155013801070
15001550160015501600160016001550
1480150015501510143013001200980];
surf(x,y,z)
结果:
第三题:
1循环语句生成下述矩阵
并求
1)矩阵H的行列式
2)矩阵H的逆矩阵,
3)将矩阵H的2,3行和2,4列所对应的子式定义为一个新的矩阵A,
4)写出矩阵H的第2列所对应的向量并赋值给向量a。
程序:
H=zeros(4,4);
fori=1:
4
forj=1:
4
ifi==j
H(i,j)=1;
elseifabs(i-j)==1
H(i,j)=5;
end
end
end
d=det(H)
B=inv(H)
A=H([23],[23])
a=H(:
2)
结果:
d=
551
B=
-0.08890.21780.0454-0.2269
0.2178-0.0436-0.00910.0454
0.0454-0.0091-0.04360.2178
-0.22690.04540.2178-0.0889
A=
15
51
a=
5
1
5
0
第四题:
1判断函数
在x=1处是否连续
程序:
symsx;
f=(x^2-1)/(x-1);
limit(f,x,1)
结果:
ans=
2
2求函数
的导数
程序:
symsx;
f=sin(log(x));
diff(f)
结果:
ans=
cos(log(x))/x
3求
程序:
symsx;
f=1/((x+1)*sqrt(x^2-1));
int(f,x,1,2)
结果:
ans=
1/3*3^(1/2)
第五题
1.
程序:
f=[5-123-8];
A=[-21-11-3
21-141];
b=[6,7]';
Aeq=[];
beq=[];
lb=zeros(5,1);
ub=15*ones(5,1);
[x,fval]=linprog(f,A,b,Aeq,beq,lb,ub)
结果:
x=
0.0000
0.0000
8.0000
0.0000
15.0000
fval=
-104.0000
2.求解无约束非线性规划问题:
程序:
symsx;
f='8*x
(1)-4*x
(2)+x
(1)^2+3*x
(2)^2';
x0=[0,0];
x=fminunc(f,x0)
结果:
x=
-4.00000.6667
3求解有约束非线性规划问题:
程序:
functiony=f(x)
y=exp(x
(1))*(6*x
(1)^2+3*x
(2)^2+2*x
(1)*x
(2)+4*x
(1)+1);
function[c,g]=f1(x)
c
(1)=x
(1)*x
(2)-x
(1)-x
(2)+1;
c
(2)=-2*x
(1)*x
(2)-5;
g=[];
x0=[0,0]
x=fmincon(@f,x0,[],[],[],[],[],[],@f1)
结果:
x=
-0.73621.0000
4已知
x
0
1
2
3
4
5
6
7
8
y
0
1.1
1.9
3
4.1
4.9
6.2
7.1
7.9
1)画出上述9个点的散点图。
2)用regress函数对上述点建立线性模型
3)用robustfit函数对上述点建立线性模型
程序:
x=0:
8;
y=[01.11.934.14.96.27.20];
scatter(x,y);
holdon
c1=regress(y',[ones(9,1),x'])
c2=robustfit(x',y')
x=0:
0.1:
8;
y1=c1
(1)+c1
(2)*x;
plot(x,y1)
holdon
y2=c2
(1)+c2
(2)*x;
plot(x,y2,'r')
结果:
5已知数据如下表
对上述点采用三次多项式差值,并对数据加密画出差值曲线。
x=0:
0.1:
1;
y=[0.30.511.41.61.90.60.40.81.52];
scatter(x,y);
holdon
xi=0:
0.01:
1;
yi=interp1(x,y,xi,'cubic');
plot(xi,yi)
结果:
6对下表中的数据进行差值并对数据加密画出差值曲面
x=1200:
400:
4000;
y=1200:
400:
3600;
z=[11301250128012301040900500700
13201450142014001300700900850
139015001500140090011001060950
15001200110013501450120011501010
15001200110015501600155013801070
15001550160015501600160016001550
1480150015501510143013001200980];
xi=1200:
20:
4000;
yi=1200:
20:
3600;
[xi,yi]=meshgrid(xi,yi);
zi=interp2(x,y,z,xi,yi,'cubic');
surf(xi,yi,zi)
结果: