当前位置:文档之家› matlab练习题和答案

matlab练习题和答案

matlab练习题和答案
matlab练习题和答案

matlab练习题和答案

控制系统仿真实验

Matlab部分实验结果

目录

实验一 MATLAB基本操

作 ............................................................................................ 1 实验二 Matlab编程 .................................................................................................... 5 实验三Matlab底层图形控制 ..........................................................................................

6 实验四控制系统古典分析.............................................................................................12 实验五控制系统现代分析 . (15)

实验六 PID控制器的设

计 ...........................................................................................19 实验七系统状态空间设计.............................................................................................23 实验九

直流双闭环调速系统仿真 (25)

实验一 MATLAB基本操作

1 用MATLAB可以识别的格式输入下面两个矩阵

1233,,1443678,i,,,,2357,,,,2335542,i,,,, A,1357B,,,2675342,

i,,3239,,,,189543,,,,1894,,

再求出它们的乘积矩阵C,并将C矩阵的右下角2×3子矩阵赋给D矩阵。赋值完成后,调

用相应的命令查看MATLAB工作空间的占用情况。

A=[1,2,3,3;2,3,5,7;1,3,5,7;3,2,3,9;1,8,9,4];

B=[1+4i,4,3,6,7,8;2,3,3,5,5,4+2i;2,6+7i,5,3,4,2;1,8,9,5,4,3]; C=A*B;

D=C(4:5,4:6);

whos

Name Size Bytes Class Attributes

A 5x4 160 double

B 4x6 384 double complex

C 5x6 480 double complex

D 2x3 96 double complex 2 选择合适的步距绘制出下面的图形,其中 sin(/)1tt,,(,)11

t=[-1:0.1:1];

y=sin(1./t);

plot(t,y)

1

3 对下面给出的各个矩阵求取矩阵的行列式、秩、特征多项式、数、特征根、特征向量和

逆矩阵。

5765753500..,,,,

,,,,.,,,,, B,A,,,,,5,.

,,,,3..,,,,

12343324,,,,,,

,,,,56785518,,,,,, C,D,,,,,7,

,,,,1,,,,,,,

A=[7.5,3.5,0,0;8,33,4.1,0;0,9,103,-1.5;0,0,3.7,19.3];

B=[5,7,6,5;7,10,8,7;6,8,10,9;5,7,9,10]; C=[1:4;5:8;9:12;13:1rtf6];

D=[3,-3,-2,4;5,-5,1,8;11,8,5,-7;5,-1,-3,-1]; det(A);det(B);det(C);det(D);

rank(A);

rank(B);

rank(C);

rank(D);

a=poly(A);

b=poly(B);

c=poly(C);

d=poly(D);

norm(A);

2

norm(B);

norm(C);

norm(D);

[v,d]=eig(A,'nobalance');

[v,d]=eig(B,'nobalance');

[v,d]=eig(C,'nobalance');

[v,d]=eig(D,'nobalance');

m=inv(A);

n=inv(B);

p=inv(C);

q=inv(D);

4 求解下面的线性代数方程,并验证得出的解真正满足原方程。72124,1321390,,,,,,,,

,,,,,,,,721264,915327,,,,,,,,,(a),(b) X,X,,,,,,,,,91532117,,,,221151 ,,,,,,,,,,,,30,,,,,,,,

(a)

A=[7,2,1,-2;9,15,3,-2;-2,-2,11,5;1,3,2,13];

B=[4;7;-1;0];

X=A\B;

C=A*X;

(b)

A=[1,3,2,13;7,2,1,-2;9,15,3,-2;-2,-2,11,5];

B=[9,0;6,4;11,7;-2,-1];

X=A\B;

C=A*X;

5.

(1) 初始化一10*10矩阵,其元素均为1 ones(10,10);

(2) 初始化一10*10矩阵,其元素均为0 zeros(10,10);

(3) 初始化一10*10对角矩阵

v=[1:10];

diag(v);

(4) 输入A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2; 3 3 3],执行下列命令,理解其含义

A(2, 3) 表示取A矩阵第2行、第3列的元素;

3

A(:,2) 表示取A矩阵的第,列全部元素;

A(3,:) 表示取A矩阵第,行的全部元素;

A(:,1:2:3)表示取A矩阵第1、3列的全部元素;

A(:,3).*B(:,2)表示A矩阵第3列的元素点乘B矩阵第2列的元素

A(:,3)*B(2,:)表示A矩阵第3列的元素乘以B矩阵第2行 A*B 矩阵AB相乘

A.*B矩阵A点乘矩阵B

A^2矩阵A的平方

A.^2矩阵表示求矩阵A的每一个元素的平方值

B/A 表示方程AX=B的解X

B./A表示矩阵B的每一个元素点除矩阵A的元素

6在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5),t?[0,2π],

用不同颜色,不同线的类型予以表示,注意坐标轴的比例控制。

t=[0:0.01:2*pi];

y1=cos(t-0.25);

plot(t,y1,'r--')

hold on

y2=sin(t-0.5);

plot(t,y2,'k')

4

实验二 Matlab编程

1分别用for和while循环结构编写程序,求出

63i236263 K,,,,,,,,2122222?,,i0

并考虑一种避免循环的简洁方法来进行求和。 (a)j=1;n=0;sum=1; for n=n+1:63

for i=1:n

j=j*2;

end

sum=sum+j;

j=1;

end

sum

(b)j=1;n=1;sum=1;

while n~=64

i=1;

while i

j=j*2;

i=i+1;

end

n=n+1;

sum=sum+j;

j=1;

end

Sum

(c)i=0:63;k=sum(2.^i);

2计算 1+2+…+n<2000 时的最大 n 值

s=0;m=0;while(s<=2000),m=m+1;s=s+m;end,m

3 用MATLAB语言实现下面的分段函数

,hxD,,

, yfxhDx,,()/,xD,,

,,,,hxD,,存放于文件ff.m中,令D=3,h=1求出,f(-1.5), f(0.5), f(5).

D=3;h=1;

x=-2*D:1/2:2*D;

y=-h*(x<-D)+h/D./x.*((x>=-D)&(x<=D))+h*(x>D);

5

plot(x,y);

grid on

f1=y(find(x==-1.5))

f2=y(find(x==0.5))

f3=y(find(x==5))

实验三 Matlab底层图形控制 1 在MATLAB命令行中编程得到y=sin(t)和

y1=cos(t)函数, plot(t,y);figure(10);plot(t,y1);

>> t=[-pi:0.05:pi];

>> y=sin(t);

>> y1=cos(t);

>> plot(t,y)

>> figure(10);

>> plot(t,y1)

2 在MATLAB命令行中键入h=get(0),查看根屏幕的属性,h此时为根屏幕句柄的符号表示,0为根屏幕对应的标号。

>> h=get(0)

h =

BeingDeleted: 'off'

BusyAction: 'queue'

ButtonDownFcn: ''

CallbackObject: []

Children: [2x1 double]

相关主题
文本预览
相关文档 最新文档