Matlab作业电气工程专业试题及答案.docx
《Matlab作业电气工程专业试题及答案.docx》由会员分享,可在线阅读,更多相关《Matlab作业电气工程专业试题及答案.docx(19页珍藏版)》请在冰豆网上搜索。
![Matlab作业电气工程专业试题及答案.docx](https://file1.bdocx.com/fileroot1/2022-11/24/a4b3fdfa-3cdc-4798-b0fc-f4879671ff80/a4b3fdfa-3cdc-4798-b0fc-f4879671ff801.gif)
Matlab作业电气工程专业试题及答案
江苏大学
京江学院
《电气工具软件训练Ⅲ》课程设计报告
设计题目:
MATLAB
专业班级:
学生姓名:
学生学号:
指导老师:
完成日期:
江苏大学·电气信息工程学院
一MATLAB课程设计的目的和要求
1.MATLAB软件功能简介
MATLAB的名称源自MatrixLaboratory,1984年由美国Mathworks公司推向市场。
它是一种科学计算软件,专门以矩阵的形式处理数据。
MATLAB将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛的应用于科学计算、控制系统和信息处理等领域的分析、仿真和设计工作。
MATLAB软件包括五大通用功能,数值计算功能(Nemeric)、符号运算功能(Symbolic)、数据可视化功能(Graphic)、数字图形文字统一处理功能(Notebook)和建模仿真可视化功能(Simulink)。
其中,符号运算功能的实现是通过请求MAPLE内核计算并将结果返回到MATLAB命令窗口。
该软件有三大特点,一是功能强大;二是界面友善、语言自然;三是开放性强。
目前,Mathworks公司已推出30多个应用工具箱。
MATLAB在线性代数、矩阵分析、数值及优化、数值统计和随机信号分析、电路与系统、系统动力学、次那好和图像处理、控制理论分析和系统设计、过程控制、建模和仿真、通信系统以及财政金融等众多领域的理论研究和工程设计中得到了广泛应用。
2.MATLAB课程设计的目的
本次课程设计主要是为了使学生了解MATLAB软件的基本知识,熟悉MATLAB的上机环境,掌握MATLAB数值运算、程序设计、二维/三维绘图、符号运算、Simulink仿真等相关知识,并初步具备将一般数学问题转化为对应的计算机进行处理的能力,以便为今后进一步的学习打下坚定基础。
二MATLAB课程内容
1MATLAB语言基础
实验目的:
基本掌握MATLAB向量、矩阵、数组的生成及其基本运算(区分数组运算和矩阵运算)、常用的数学函数。
了解字符串的操作。
实验内容:
创建以下矩阵:
A为初值为1,终值为12,元素数目为6的行向量;
;C为B的三次方矩阵;D由B和C横向拼接并去除第一列、最后一列和第一行元素而成;E由B和C纵向拼接而成;F抽取E的3~5行和第2~3列元素生成;G由F经变形为3×2的矩阵而得;H由B和C数组相乘运算而成,同时将H(1,1)和H(2,1)分别变为π的平方和立方,H(2,2)=arccos
(2),H(3,3)=H(1,1)+H(2,1)。
源程序:
A=linspace(1,12,6)
B=[2,4,3,6;1,5,3,2;2,7,7,9;1,2,3,5];
C=B^3
D1=[B,C];
D=D1(2:
4,2:
7)
E=[B;C]
F=E(3:
5,2:
3)
G=reshape(F,3,2)
H=B*C
H(1,1)=pi^2;
H(2,1)=pi^3;
H(2,2)=acos
(2);
H(3,3)=H(1,1)+H(2,1)
运行结果:
A=1.00003.20005.40007.60009.800012.0000
C=
2929388731140
227751681868
518167515552021
227724681895
D=
532227751681
77951816751555
235227724681
E=
2436
1532
2779
1235
2929388731140
227751681868
518167515552021
227724681895
F=
77
23
938873
G=
77
23
938873
H=
4408142491322117185
3435111661030513333
7842253742352730558
3435110851030513414
H=
1.0e+004*
0.00101.42491.32211.7185
0.00310+0.0001i1.03051.3333
0.78422.53740.00413.0558
0.34351.10851.03051.3414
(1)用矩阵除法求下列方程组的解x=[x1;x2;x3];
(2)求矩阵的秩(rank函数);
(3)求矩阵的特征值与特征向量(eig函数);
(4)系数矩阵的3次幂与开方;
(5)系数矩阵的指数运算和数组对数运算;
(6)系数矩阵a(1,2)、a(1,3)、a(2,2)、a(2,3)的元素不变,其余元素变为零。
(7)提取系数矩阵主对角线上的元素,并依次相加赋予b。
源程序:
A=[6,3,4;-2,5,7;8,-1,-3];
B=[3;-4;-7];
X=inv(A)*B
rank(A)
[v,d]=eig(A)
A1=A^3
A2=sqrtm(A)
A3=expm(A)
A4=logm(A)
A(:
1)=0;
A(3,:
)=0
A=[6,3,4;-2,5,7;8,-1,-3];
b=trace(A)
运行结果:
X=
1.0200
-14.0000
9.7200
ans=3
v=
0.8013-0.1094-0.1606
0.3638-0.65640.8669
0.47490.7464-0.4719
d=
9.732600
0-3.29280
001.5602
A1=
578298352
228156202
384154156
A2
2.2447+0.2706i0.6974-0.1400i0.9422-0.3494i
-0.5815+1.6244i2.1005-0.8405i1.7620-2.0970i
1.9719-1.8471i-0.3017+0.9557i0.0236+2.3845i
A3=
1.0e+004*
1.06530.54150.6323
0.48300.24650.2876
0.63160.32060.3745
A4=
1.7129+0.4686i0.5305-0.2425i0.5429-0.6049i
1.1938+2.8123i0.3658-1.4552i-0.5514-3.6305i
-0.0748-3.1978i0.7419+1.6546i1.8333+4.1282i
A=
034
057
000
b=
8
2MATLAB数值运算
实验目的:
掌握MATLAB的数值运算及其运算中所用到的函数,掌握结构数组的操作。
实验内容:
已知多项式a(x)=x2+2x+3;b(x)=4x2+5x+6
(1)求多项式a(x)和多项式b(x)的乘法运算结果,并在命令窗口中显示该多项式c;
(2)求多项式c的根及其微分;
源程序:
p1=[1,2,3];
p2=[4,5,6];
y1=poly2sym(p1);
y2=poly2sym(p2);
p=conv(p1,p2);
c=poly2sym(p)
roots(p)
c1=diff(c)
运行结果:
c=4*x^4+13*x^3+28*x^2+27*x+18
ans=
-1.0000+1.4142i
-1.0000-1.4142i
-0.6250+1.0533i
-0.6250-1.0533i
c1=16*x^3+39*x^2+56*x+27
求
的“商”及“余”多项式并在命令窗口中显示该多项式。
源程序:
root=[-i,i,-3,-1];
p=poly(root);
disp(poly2sym(p))
d=[1,0,2,1];
c2=poly2sym(d)
[q,r]=deconv(p,d);
c3=poly2sym(q)
c4=poly2sym(r)
运行结果:
c3=x+4
c4=2*x^2-5*x-1
(1)计算当x=2,x=3时,
错误!
未找到引用源。
的值;
(2)计算
错误!
未找到引用源。
的值
(3)
,B=A2+3,C=A-2B,,求:
C
源程序:
x=2
y1=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)
x=3
y1=x^3+(x-0.98)^2/(x+1.25)^3-5*(x+1/x)
y2=cos(60)+acos(pi)-sqrt(9-sqrt
(2))
A=[2,4,3,6;1,5,3,2;2,7,7,9;1,2,3,5]
B=A^2+3;
C=A-2*B
运行结果:
x=2
y1=-4.4697
x=3
y1=10.3865
y2=-3.7066+1.8115i
A=
2436
1532
2779
1235
C=
-44-124-117-154
-35-109-93-110
-72-219-205-265
-35-94-93-125
3MATLAB符号运算
实验目的:
掌握符号变量和符号表达式的创建,掌握MATLAB的symbol工具箱的一些基本应用。
实验内容:
已知
,按照自变量x和自变量a,对表达式f分别进行降幂排列(同幂合并)。
源程序:
symsabcx
f=sym('(a*x^2+b*x+c-3)^3-a*(c*x^2+4*b*x-1)')
collect(f)
collect(f,a)
运行结果:
f=(a*x^2+b*x+c-3)^3-a*(c*x^2+4*b*x-1)
ans=a^3*x^6+3*b*a^2*x^5+((c-3)*a^2+2*b^2*a+a*(2*(c-3)*a+b^2))*x^4+(4*(c-3)*b*a+b*(2*(c-3)*a+b^2))*x^3+((c-3)*(2*(c-3)*a+b^2)+2*b^2*(c-3)+a*(c-3)^2-a*c)*x^2+(3*(c-3)^2*b-4*b*a)*x+(c-3)^3+a
ans=a^3*x^6+3*(b*x+c-3)*x^4*a^2+(3*(b*x+c-3)^2*x^2-c*x^2-4*b*x+1)*a+(b*x+c-3)^3
已知f1=1/(a-b),f2=2a/(a+b),f3=(a+1)(b-1)(a-b),分别求f1和f2的符号和、f1和f3的符号积、f1和f3的符号商。
源程序:
symsab
f1=sym('1/(a-b)');
f2=sym('2*a/(a+b)');
f3=sym('(a+1)*(b-1)*(a-b)');
f1+f2
f1*f3
f1/f3
运行结果:
ans=1/(a-b)+2*a/(a+b)
ans=(a+1)*(b-1)
ans=1/(a-b)^2/(a+1)/(b-1)
对下列表达式进行符号运算
(1)已知数学表达式y(x)=(ex+x)(x+2),将其展开。
(2)已知数学表达式y(x)=a3-1,对其进行因式分解。
(3)已知数学表达式
,对其进行通分。
(4)已知数学表达式y(x)=2cos2x-sin2x,对其进行化简。
源程序:
symsxa
y1=sym('(e^x+x)*(x+2)');
y2=sym('a^3-1');
y3=sym('(x+3)/(x*(x+1))+(x-1)/(x^2*(x+2))');
y4=sym('2*(cos(x))^2-(sin(x))^2');
s1=expand(y1)
s2=factor(y2)
[a,b]=numden(y3)
s3=simple(y4)
运行结果:
s1=e^x*x+2*e^x+x^2+2*x
s2=(a-1)*(a^2+a+1)
a=x^3+6*x^2+6*x-1
b=x^2*(x+1)*(x+2)
s3=3*cos(x)^2-1
已知数学表达式f(x)=axn+bt+c,对其进行如下的符号替换:
1)a=sint,b=lnz,c=de2t的符号变量替换。
2)n=3,c=л的符号常量替换。
3)c=1:
2:
5替换。
4)
的数组矩阵替换。
源程序:
symsaxbtcnsintlnzde2t
f=sym('a*x^n+b*t+c')
f1=subs(f,'a',sint);
f2=subs(f1,'b',lnz);
subs(f2,'c',de2t)
f3=subs(f,'n',3);
subs(f3,'c',pi)
subs(f,'c',1:
2:
5)
subs(f,'c',[1,3;2,4])
运行结果:
f=a*x^n+b*t+c
ans=sint*x^n+lnz*t+de2t
ans=a*x^3+b*t+pi
ans=[a*x^n+b*t+1,a*x^n+b*t+3,a*x^n+b*t+5]
ans=
[a*x^n+b*t+1,a*x^n+b*t+3]
[a*x^n+b*t+2,a*x^n+b*t+4]
已知符号表达式
,
,计算x=0.5时,f的值;计算复合函数f(g(x))。
源程序:
symsx
f=sym('1-(sin(x))^2');
g=sym('2*x+1');
f1=subs(f,'x',0.5)
f2=compose(f,g)
运行结果:
f1=0.7702
f2=1-sin(2*x+1)^2
求
。
源程序:
symsx
f=sym('(x^2-1)/(x^2-3*x+1)');
limit(f,x,2)
运行结果:
ans=-3
求函数f(x)=cos2x-sin2x的积分;求函数
的导数。
源程序:
symsx
f=sym('cos(2*x)-sin(2*x)');
g=sym('sqrt(e^x+x*sin(x))');
f1=int(f)
f2=diff(g)
运行结果:
f1=1/2*sin(2*x)+1/2*cos(2*x)
f2=1/2/(e^x+x*sin(x))^(1/2)*(e^x*log(e)+sin(x)+x*cos(x))
计算定积分
源程序:
symsx
f=sym('sin(x)+2');
s1=int(f,x,0,pi/6)
运行结果:
s1=-1/2*3^(1/2)+1/3*pi+1
求下列线性代数方程组的解。
源程序:
symsxyz
f1=sym('x+y+z=10')
f2=sym('3*x+2*y+z=14')
f3=sym('2*x+3*y-z=1')
[s1,s2,s3]=solve(f1,f2,f3)
运行结果:
f1=x+y+z=10
f2=3*x+2*y+z=14
f3=2*x+3*y-z=1
s1=1
s2=2
s3=7
求解当y(0)=2,z(0)=7时,微分方程组的解。
源程序:
symsxzy
[s1,s2]=dsolve('Dy-z=sin(x)','Dz+y=1+x','y(0)=2','z(0)=7','x')
运行结果:
s1=cos(x)+6*sin(x)+1/2*sin(x)*x+x+1
s2=-3/2*sin(x)+6*cos(x)+1+1/2*cos(x)*x
4MATLAB程序设计
实验目的:
掌握MATLAB程序设计的主要方法,熟练编写MATLAB函数。
实验内容:
用π/4≈1-1/3+1/5-1/7+…公式求π的近似值,直到最后一项的绝对值小于10-6
为止,试编写其M脚本文件。
源程序:
方法一:
n=1;
sum1=0;
while(1/(2*n-1))>1.0000e-006
sum1=sum1+4*(-1)^(n+1)*(1/(2*n-1));
n=n+1;
end
sum1
方法二:
sum1=0;
fork=1:
10^200
sum1=sum1+4*(-1)^(k+1)*(1/(2*k-1));
if(1/(2*k-1))<10^(-6)
break;
end;
end
sum1
运行结果:
sum1=3.1416
分别用for和while结构计算1+22+33+…+100100的运行程序。
源程序:
While:
n=1;
Sum2=0;
whilen<=100
Sum2=sum2+n^n;
n=n+1;
end
Sum2
For:
Sum2=0;
forn=1:
100
Sum2=sum2+n^n;
end
Sum2
执行:
Sum2=1.0037e+200
5MATLAB绘图
实验目的:
掌握MATLAB二维图形绘制,掌握图形属性的设置和图形修饰;掌握图像文件的读取和显示。
实验内容:
绘制图形
图1
其中x初值为0,终值为12.5,步长为0.1,第一个曲线y1为
,第二个曲线y2为
。
写出图1的绘制源程序。
按照以下的步骤进行
(1)产生曲线的数据(共有3组数据:
x,y1,y2);
(2)选择合适的线形、标记、颜色(正弦曲线为红色,余弦曲线为紫色);(3)添加图例及文字说明信息;(4)添加坐标轴说明与图标题。
源程序:
x=0:
0.1:
12.5;
y1=sin(pi/6*x);
y2=cos(pi/6*x);
plot(x,y1,'r',x,y2,'--m')
title('两曲线比较图')
x=[2/3*pi;6/3*pi];
y=[0.42;0];
s=['sin(pi/6*x)';'cos(pi/6*x)'];
text(x,y,s)
legend('sinx','cosx')
xlabel('时间t')
ylabel('幅值')
gridon
运行结果:
在同一窗口不同坐标系里分别绘出y1=sinx,y2=cosx,y3=cinh(x),y4=cosh(x)4个图形,其中x为以0为初值,2
为终值,元素数目为30的行向量。
源程序:
x=linspace(0,2*pi,30);
y1=sin(x);
y2=cos(x);
y3=sinh(x);
y4=cosh(x);
subplot(2,2,1);
plot(x,y1');
subplot(2,2,2);
plot(x,y2');
subplot(2,2,3);
plot(x,y3');
subplot(2,2,4);
plot(x,y4');
运行结果:
绘制一个三维曲线其中x=cosp,y=sinp,z=p,p为以0为初值,20
为终值,步长0.1
的行向量。
源程序:
p=0:
0.1*pi:
20*pi;
x=cos(p);
y=sin(p);
z=p;
plot3(x,y,z);
运行结果:
三课程设计体会
经过一周的学习,我对mutlab有了初步的认识和能够完成一些简单的程序。
在学习过程中,老师认真的教学,给了我很大的帮助,自己上网搜索和看书解惑,使我自己的自学能力有了很大的提高,这款软件是一款十分强大的软件,它的模块化的计算方法、可视与智能化的人机交互功能、丰富的矩阵运算、图形绘制和数据处理函数,以及模块化图形的动态系统仿真工具Simulink,成为控制系统设计和仿真领域最受欢迎的软件系统,这次课程设计让我受益匪浅,但由于时间太短,所学的知识有限,所以在今后的学习中,我会更加努力的学习这款软件。
在此感谢我们的老师。
老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次模具设计的每个实验细节和每个数据,都离不开老师您的细心指导。
而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。
四、参考资料
详解MATLAB快速入门与应用-----电子工业出版社