MATLAB实验报告最终定稿.docx

上传人:b****8 文档编号:9704125 上传时间:2023-05-20 格式:DOCX 页数:36 大小:409.49KB
下载 相关 举报
MATLAB实验报告最终定稿.docx_第1页
第1页 / 共36页
MATLAB实验报告最终定稿.docx_第2页
第2页 / 共36页
MATLAB实验报告最终定稿.docx_第3页
第3页 / 共36页
MATLAB实验报告最终定稿.docx_第4页
第4页 / 共36页
MATLAB实验报告最终定稿.docx_第5页
第5页 / 共36页
MATLAB实验报告最终定稿.docx_第6页
第6页 / 共36页
MATLAB实验报告最终定稿.docx_第7页
第7页 / 共36页
MATLAB实验报告最终定稿.docx_第8页
第8页 / 共36页
MATLAB实验报告最终定稿.docx_第9页
第9页 / 共36页
MATLAB实验报告最终定稿.docx_第10页
第10页 / 共36页
MATLAB实验报告最终定稿.docx_第11页
第11页 / 共36页
MATLAB实验报告最终定稿.docx_第12页
第12页 / 共36页
MATLAB实验报告最终定稿.docx_第13页
第13页 / 共36页
MATLAB实验报告最终定稿.docx_第14页
第14页 / 共36页
MATLAB实验报告最终定稿.docx_第15页
第15页 / 共36页
MATLAB实验报告最终定稿.docx_第16页
第16页 / 共36页
MATLAB实验报告最终定稿.docx_第17页
第17页 / 共36页
MATLAB实验报告最终定稿.docx_第18页
第18页 / 共36页
MATLAB实验报告最终定稿.docx_第19页
第19页 / 共36页
MATLAB实验报告最终定稿.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

MATLAB实验报告最终定稿.docx

《MATLAB实验报告最终定稿.docx》由会员分享,可在线阅读,更多相关《MATLAB实验报告最终定稿.docx(36页珍藏版)》请在冰点文库上搜索。

MATLAB实验报告最终定稿.docx

MATLAB实验报告最终定稿

 

MATLAB实验报告

机电工程学院

姓名:

李祖达

学号:

5901111120

专业:

机械设计制造及其自动化

 

目录

实验一熟悉MATLAB环境认识MATLAB··············································3

实验二MATLAB运算础································6

实验三MATLAB矩阵分析和理·························8

实验四求余弦的积分并绘出像······················11

实验五、六用matlab求解多项式并用plot绘制函数图象

(常微分程)········································13

实验七函数件····································16

实验八、九MATLAB程序设计(循环、择)················19

实验十采用SIMULINK的系统真·······················24

实验十一菜单设计····································27

 

实验一熟悉MATLAB环境认识MATLAB

一、实验目的

熟悉matlab的安装与启动;熟悉matlab用户界面;熟悉matlab功能、建模元素;熟悉matlab优化建模过程。

二、实验设备与仪器

1.微机

2.matlab仿真软件

三、实验步骤

1.了解matlab的硬件和软件必备环境;

2.启动matlab;

3.熟悉标题栏,菜单栏,工具栏,元素选择窗口,状态栏,控制栏以及系统布局区;

4.学习优化建模过程。

四、实验报告要求

1.写出matlab系统界面的各个构成;以及系统布局区的组成;以及每一部分的功能;

2.优化建模过程应用举例

五、实验内容

(一)、Matlab操作界面

1.命令窗口(commandwindow)

2.命令历史窗口(commandhistory)

3.工作空间管理窗口(workspace)

4.当前路径窗口(currentdirectory)

(二)、实现下列优化建模过程

1、简单矩阵

的输入步骤。

指令:

A=[123;456;789]

A=

123

456

789

2、矩阵的分行输入。

A=[1,2,3

4,5,6

7,8,9]

指令:

>>A=[1,2,3

4,5,6

7,8,9]

A=

123

456

789

3、指令的续行输入

S=1-1/2+1/3-1/4+...

1/5-1/6+1/7-1/8

指令:

S=1-1/2+1/3-1/4+...

1/5-1/6+1/7-1/8

S=

0.6345

4、画出衰减振荡曲线

及其它的包络线

的取值范围是[0,2pi]

指令:

t=[0:

pi/4:

2*pi];

y=exp(-t/3).*sin(3*t);

plot(y)

 

5、画出

所表示的三维曲面。

的取值范围是

>>x=-8:

0.5:

8;

>>y=-8:

0.5:

8;

>>z=(sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2));

>>plot3(x,y,z)

6、复数矩阵的生成及运算

A=[1,3;2,4]-[5,8;6,9]*i

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

C=A*B

>>A=[1,3;2,4]-[5,8;6,9]*i

A=

1.0000-5.0000i3.0000-8.0000i

2.0000-6.0000i4.0000-9.0000i

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

B=

1.0000+5.0000i2.0000+6.0000i

3.0000+8.0000i4.0000+9.0000i

>>C=A*B

C=

1.0e+02*

0.99001.1600-0.0900i

1.1600+0.0900i1.3700

 

实验二MATLAB运算基础

一、实验目的及要求:

1.掌握建立矩阵的方法。

2.掌握MATLAB各种表达式的书写规则以及常用函数的使用。

二、实验内容及程序:

1.计算表达式的值

>>x=(sin(48*pi/180)+sqrt(7))/(1+log2(15)-2i);

>>y=abs(1+3i)/(1+exp

(2));

>>z=x^2+y^2

z=

0.4346+0.2859i

2.矩阵的直接建立及矩阵的运算

(1)请利用直接建立矩阵的方法,采用两种方式建立如下矩阵:

(2)将矩阵A第2至3行中第1,3,4列元素赋给矩阵B;

(3)将矩阵A的每个元素加30,并且将第1行和第3行进行交换。

(1)>>A=[12310;45612;78914]

A=

12310

45612

78914

>>A=[1,2,3,10;4,5,6,12;7,8,9,14]

A=

12310

45612

78914

(2)>>B=A(2:

3,[134])

B=

4612

7914

>>A=A+30

A=

31323340

34353642

37383944

(3),A=A+30

A=

31323340

34353642

37383944

>>A=[A(3,:

);A(2,:

);A(1,:

)]

A=

37383944

34353642

31323340

3.

(1)建立一个

的零矩阵、单位矩阵和元素全为1的方阵。

(2)请使用直接建立矩阵的方法,并结合MATLAB中建立矩阵的函数,生成如下矩阵

(1)a=zeros(4,5)

a=

00000

00000

00000

00000

>>b=eye(4,5)

b=

10000

01000

00100

00010

>>c=ones(4)

c=

1111

1111

1111

1111

(2)>>a=[013];

>>b=[014];

>>c=[015];

>>d=[a;b;c]

d=

013

014

015

4.当=0.2,0.4,0.6,0.8时,分别求

的值。

>>x=0.2:

0.2:

0.8;

>>y=sin(x).*cos(x)

y=

0.19470.35870.46600.4998

三、实验结果讨论

1.如何访问数组中的元素?

设一个矩阵a,访问其第i个元素则为a[i-1],其中以列为主顺序依次查询

2.如何输出显示字符型变量?

Sprintf(‘%c’,x)

 

实验三MATLAB矩阵分析和处理

一、实验目的

1.掌握生成特殊矩阵的方法。

2.掌握矩阵分析的方法。

4.用矩阵求逆法解线性方程组。

二、实验内容

1.产生3行二列的单位矩阵、随机矩阵、零矩阵和对角矩阵。

>>A=ones(3,2)

A=

11

11

11

>>B=rand(3,2)

B=

0.95010.4860

0.23110.8913

0.60680.7621

>>C=diag(3,2)

C=diag(3,2)

C=

003

000

000

2.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,求其行列式的值Hh和Hp以及他们的条件数Th和Tp,判断哪个矩阵性能更好,为什么?

3.建立一个5x5矩阵,求它的行列式的值、迹、秩和范数

4.已知

,求特征值和特征向量,并分析其数学意义

>>A=[-29618;20512;-885]

A=

-29618

20512

-885

>>[v,d]=eig(A)

v=%特征向量

0.71300.28030.2733

-0.6084-0.78670.8725

0.34870.55010.4050

d=%特征值

-25.316900

0-10.51820

0016.8351

5.下面是一个线性方程组

(1)求方程的解

>>A=[0.95;0.67;0.52];

>>B=[1/21/31/4;1/31/41/5;1/41/51/6];

>>X=B\A

X=

1.2000

0.6000

0.6000

(2)将方程右边向量第三个元素0.52改为0.53,并比较解的变化

>>A=[0.95;0.67;0.53];

>>X=B\A

X=

3.0000

-6.6000

6.6000

(3)计算系数矩阵A的条件数并分析结论

6.建立A矩阵,试比较sqrtm(A)和sqrt(A),并分析他们的区别

>>A=[123;456;789]

A=

123

456

789

>>sqrtm(A)

ans=

0.4498+0.7623i0.5526+0.2068i0.6555-0.3487i

1.0185+0.0842i1.2515+0.0228i1.4844-0.0385i

1.5873-0.5940i1.9503-0.1611i2.3134+0.2717i

>>sqrt(A)

ans=

1.00001.41421.7321

2.00002.23612.4495

2.64582.82843.0000

实验四求余弦的积分并绘出图像

一、实验目的

1、了解绘图工具的使用。

二、实验要求

 1.(不定积分)用int计算下列不定积分,并用diff验证

,,,

输入以下指令:

>>symsx;

>>f=x*sin(x^2);

>>int(f,'x')

ans=

-cos(x^2)/2

验证:

>>diff(-cos(x^2)/2)

ans=

x*sin(x^2)

输入以下指令:

>>symsx;

>>f=1/(1+cos(x));

>>int(f)

ans=

tan(x/2) 

验证:

>>diff(tan(x/2))

ans=

tan(x/2)^2/2+1/2

2.(定积分)用trapz,int计算下列定积分(2个)

输入指令:

>>symsx;

>>f=sin(x)/x;

>>int(f,'x',0,1)

ans=

sinint

(1)

>>x=0:

0.1:

2*pi;

f=exp(x).*sin(2*x);

s=trapz(x,f)

s=

-209.5581

3.(椭圆的周长)用定积分的方法计算椭圆

的周长

t=0:

0.001:

2*pi;

a=2;

b=3;

x=a*sin(t);

y=b*cos(t);

>>X=[0x(1:

end-1)];

Y=[0y(1:

end-1)];

x=x-X;

y=y-Y;

d=sqrt(x.^2+y.^2);

d=sum(d)

d=

18.8651

4.(二重积分)计算积分

指令为:

>>fun=inline('(1+x+y).*(x.^2+y.^2-2*y<=0)','x','y');

>>i=dblquad(fun,-1,1,0,2)

i=

6.283

5.(广义积分)计算广义积分

指令为:

>>symsx;

>>f=exp(-x.^2)./(1+x.^4);

>>int(f,'x',-inf,inf)

ans=

(4*pi^(1/2)*hypergeom([1],[5/4,7/4],-1/4))/3+(2^(1/2)*pi*(cos

(1)-sin

(1)))/2

实验五、六 用matlab求解多项式并用plot绘制函数图象(常微分方程)

 

 一、实验目的

1、了解MATLAB中主要用dsolve求符号解析解,ode45,ode23,ode15s求数值解。

2、

 s=dsolve(‘方程1’,‘方程2’,…,’初始条件1’,’初始条件2’…,’自变量’) 

用字符串方程表示,自变量缺省值为t。

导数用D表示,2阶导数用D2表示,以此类推。

S返回解析解。

在方程组情形,s为一个符号结构。

[tout,yout]=ode45(‘yprime’,[t0,tf],y0)采用变步长四阶Runge-Kutta法和五阶Runge-Kutta-Felhberg法求数值解,yprime是用以表示f(t,y)的M文件名,t0表示自变量的初始值,tf表示自变量的终值,y0表示初始向量值。

输出向量tout表示节点(t0,t1,…,tn)T,输出矩阵yout表示数值解,每一列对应y的一个分量。

若无输出参数,则自动作出图形。

ode45是最常用的求解微分方程数值解的命令,对于刚性方程组不宜采用。

ode23与ode45类似,只是精度低一些。

ode12s用来求解刚性方程组,是用格式同ode45。

可以用helpdsolve,helpode45查阅有关这些命令的详细信息.

3、熟悉plot绘图

二、实验内容

  

1.求下列微分方程的解析解(2个)

 

指令为:

y=dsolve('D2y+2*Dy-3*y=exp(-3*x)','x')

y=

C2*exp(x)-(x*exp(-3*x))/4-exp(-3*x)/16+C3*exp(-3*x)

指令为:

y=dsolve('D2y+Dy+y=cos(x)','y(0)=0','Dy(0)=1.5','x')

y=

sin((3^(1/2)*x)/2)*(cos(x-(3^(1/2)*x)/2)/2-cos(x+(3^(1/2)*x)/2)/2+(3^(1/2)*cos(x-(3^(1/2)*x)/2))/3+(3^(1/2)*cos(x+(3^(1/2)*x)/2))/3+(3^(1/2)*sin(x-(3^(1/2)*x)/2))/6+(3^(1/2)*sin(x+(3^(1/2)*x)/2))/6)+(3^(1/2)*exp(-x/2)*sin((3^(1/2)*x)/2))/3-(3^(1/2)*cos((3^(1/2)*x)/2)*((sin(x*(3^(1/2)/2-1))/2-cos(x*(3^(1/2)/2-1))*(3^(1/2)/2-1))/((3^(1/2)/2-1)^2+1/4)+(sin(x*(3^(1/2)/2+1))/2-cos(x*(3^(1/2)/2+1))*(3^(1/2)/2+1))/((3^(1/2)/2+1)^2+1/4)))/3

 

2.求方程

的解析解和数值解,并进行比较(用plot绘图)

解析解:

>>s=dsolve('(1+x^2)*D2y-2*x*Dy','y(0)=1','Dy(0)=3','x')

s=

x*(x^2+3)+1

数值解:

先建立m文件

functiondy=myfun_1(x,y)

dy=zeros(2,1);

dy

(1)=y

(2);

dy

(2)=2*x*y

(1)/(1+x^2);

end

后再命令窗口输入:

>>[x,y]=ode23(@myfun_1,[0,1000],[0,1]);

>>plot(x,y(:

1),'r+',x,y(:

2),'g*')

得到:

 

3.分别用ode45和ode15s求解Van-del-Pol方程

的数值解,并进行比较.(用plot绘图)

  

functiondy=vdp1000(t,y)

dy=zeros(2,1);

dy

(1)=y

(2);

dy

(2)=1000*(1-y

(1)^2)*y

(2)-y

(1);

end

[T,Y]=ode15s('vdp1000',[03000],[01]);

plot(T,Y(:

1),'-')

 

实验七函数文件

一、实验目的

1、理解函数文件的概念。

2、掌握定义和调用MATLAB函数的方法。

二、实验内容(选作2题)

1、定义一个函数文件,求给定复数的指数、对数、正弦和余弦,并在命令文件中调用该函数文件。

程序设计:

M文件:

functionf(x)

e=exp(x)

ln=log(x)

s=sin(x)

c=cos(x)

end

运行结果:

>>f(2i)

e=

-0.4161+0.9093i

ln=

0.6931+1.5708i

s=

0+3.6269i

c=

3.7622

2、一个物理系统可用下列方程组来表示:

从键盘输入m1、m2和

的值,求a1、a2、N1、N2的值。

其中g取’9.8,输入

时以角度为单位。

要求:

定义一个求解线性方程组AX=B的函数文件,然后在命令文件中调用该函数文件。

程序设计:

函数文件in.m:

function[a1,a2,N1,N2]=in(m1,m2,t)

g=9.8;

A=[m1*cos(t)-m1-sin(t)0;m1*sin(t)0cos(t)0;0m2-sin(t)0;00-cos(t)1];

C=[0;m1*g;0;m2*g];

B=inv(A)*C;

a1=B

(1);

a2=B

(2);

N1=B(3);

N2=B(4);

end

调用in.m的命令文件:

>>m1=1;m2=2;t=30*pi/180;

>>[a1,a2,N1,N2]=in(m1,m2,t)

运行结果:

a1=

6.5333

a2=

1.8860

N1=

7.5440

N2=

26.1333

 

3、一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称是绝对素数。

例如13是绝对素数。

试求所有两位绝对素数。

要求:

定义一个判断素数的函数文件。

函数文件:

fory=10:

99

ifisprime(y)

a=rem(y,10);

b=fix(y/10);

c=10*a+b;

ifisprime(c)

disp(y)

end

end

end

运行结果:

>>11

13

17

31

37

71

73

79

97

 

4、设

,编写一个MATLAB函数文件fx.m,使得调用f(x)时,x可用矩阵代入,得出的f(x)为同阶矩阵。

程序设计:

functiony=fx(x)

y=1./[(x-2).^2+0.1]+1./[(x-3).^4+0.01]

end

运行结果:

>>x=[12345]

x=

12345

>>fx(x)=1./[(x-2).^2+0.1]+1./[(x-3).^4+0.01]

fx=

0.971610.9901100.90911.23400.1724

5、已知

(1)当f(n)=n+10ln

时,求y的值。

程序设计:

函数文件fn.m:

functionx=fn(n)

x=n+10*log(n^2+5)

end

调用fn.m的命令文件:

y=fn(40)/(fn(30)+fn(20))

运行结果:

>>y=

0.6390

(2)当

时,求y的值。

程序设计:

函数文件fn.m:

functionx=fn(n)

ifn<=0

x=0;

else

x=n*(n+1)+fn(n-1);

end

end

调用fn.m的命令文件:

y=fn(40)/(fn(30)+fn(20))

运行结果:

y=

1.7662

实验八,九MATLAB程序设计(循环、选择)

一、实验目的

1、掌握利用if语句实现选择结构的方法;

2、掌握利用switch语句实现多分支选择结构的方法;

3、掌握循环结构的程序书写方法。

二、实验内容

1、硅谷公司员工的工资计算方法如下:

(1)工作时数超过120小时者,超过部分加发15%;

(2)工作时数低于60小时者,扣发700元;

(3)其余按每小时84元计发。

编程按输入的工号和该号员工的工作时数,计算应发工资。

functiongongzi(x,y,a)

clear;

x=input('请输入工号:

');

a=input('请输入工作时长(小时):

');

ifa>120

y=84*120+(a-120)*1.15*84;

else

ifa<60

y=84*a-700;

else

y=84*a;

end

end

disp(['工号为',num2str(x),'的员工工资为:

',num2str(y),'元']);

end

2、用switch…case语句得出各月份的季节(如3,4,5月输出为春季)。

请输入月份

functionjijie(x)

clear;

x=input('请输入月份:

');

switchx

case1

disp([Num2str(x),'月是冬季'])

case2

disp([Num2str(x),'月是冬季'])

case3

disp([Num2str(x),'月是春季'])

case4

disp([Num2str(x),'月是春季'])

case5

disp([Num2str(x),'月是春季'])

case6

disp([Num2str(x),'月是夏季'])

case7

disp([Num2str(x),'月是夏季'])

case8

disp([Num2str(x),'月是夏季'])

case9

disp([Num2str(x),'月是秋季'])

case10

disp([Num2str(x),'月是秋季'])

case11

disp([Num2str(x),'月是秋季'])

case12

disp([Num2str(x),'月是冬季'])

end

3、计算1+3+5+…+99的值,当和大于1000的时候终止计算,要求显示终止时候的求和结果以及

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 法律文书

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2