MATLAB上机实验(答案)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB工具软件实验(1)
(1)生成一个4×4的随机矩阵,求该矩阵的特征值和特征向量。程序:
A=rand(4)
[L,D]=eig(A)
结果:
A =
0.9501 0.8913 0.8214 0.9218
0.2311 0.7621 0.4447 0.7382
0.6068 0.4565 0.6154 0.1763
0.4860 0.0185 0.7919 0.4057
L =
-0.7412 -0.2729 - 0.1338i -0.2729 + 0.1338i -0.5413
-0.3955 -0.2609 - 0.4421i -0.2609 + 0.4421i 0.5416
-0.4062 -0.0833 + 0.4672i -0.0833 - 0.4672i 0.4276
-0.3595 0.6472 0.6472 -0.4804
D =
2.3230 0 0 0
0 0.0914 + 0.4586i 0 0
0 0 0.0914 - 0.4586i 0
0 0 0 0.2275
(2)给出一系列的a值,采用函数
22
22
1
25
x y
a a
+=
-
画一组椭圆。
程序:
a=0.5:0.5:4.5; % a的绝对值不能大于5
t=[0:pi/50:2*pi]'; % 用参数t表示椭圆方程
X=cos(t)*a;
Y=sin(t)*sqrt(25-a.^2);
plot(X,Y)
结果:
(3)X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2],
(a)写出计算其负元素个数的程序。程序:
X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2];
L=X<0;
A=sum(L)
结果:
A =
5
(b ) 写出一段程序,使其能够找出向量x 中的最大、最小元素。(不能使用min 和max 命令)
程序:
X=[9,2,-3,-6,7,-2,1,7,4,-6,8,4,0,-2];
xmin=999;xmax=-999;
for i=1:length(X)
if xmin>X(i)
xmin=X(i);
end
if xmax xmax=X(i); end end [xmin,xmax] 结果: ans = -6 9 (4) 方波函数为f(t)=]0,[],0[11ππ-∉∈⎩⎨⎧-t t , 利用0sin(21)()21n n t f t n ∞ =+=+∑,用MATLAB 编程和绘图说明方波是奇次谐波的叠加。 程序: k=1000; % k 值可以改动 x=-pi:0.0001:pi; y=sin(x); for n=1:k y=y+sin((2*n+1)*x)/(2*n+1); end plot(x,y) 结果: MATLAB 工具软件实验(2) (1) 应用simulink 实现下列系统的仿真,并试试改变信号源后的结果。 略。 (2)利用simulink 解二阶微分方程 0.20.40.2x x x u t '''++= 其中 u(t)为单位阶跃函数 框图: 结果: (3)求矩阵11122122a a A a a ⎡⎤=⎢⎥⎣⎦ 的行列式、逆和特征值。 程序: syms a11 a12 a21 a22; A=[a11,a12;a21,a22] B=det(A),C=inv(A),D=eig(A) 结果: A = [ a11, a12] [ a21, a22] B = a11*a22-a12*a21 C = [ a22/(a11*a22-a12*a21), -a12/(a11*a22-a12*a21)] [ -a21/(a11*a22-a12*a21), a11/(a11*a22-a12*a21)] D = 1/2*a11+1/2*a22+1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2) 1/2*a11+1/2*a22-1/2*(a11^2-2*a11*a22+a22^2+4*a12*a21)^(1/2) (4)简化()f x = 程序: syms x ; f=(x^(-3)+6*x^(-2)+12*x^(-1)+8)^(1/3); g1=simple(f) g2=simple(g1) 结果: g1 = (2*x+1)/x g2 = 2+1/x (5)计算积分 2 ()22ax dx ∞-⎰ 程序: syms x ; syms a real ; % 将a 定义为实符号变量 f=2^(-(a*x)^2) int(f,x,2,inf) 结果: f = 2^(-a^2*x^2) ans = -1/2*pi^(1/2)*(-signum(a)+erf(2*a*log(2)^(1/2)))/a/log(2)^(1/2)