参考答案Matlab实验报告.docx

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

参考答案Matlab实验报告.docx

《参考答案Matlab实验报告.docx》由会员分享,可在线阅读,更多相关《参考答案Matlab实验报告.docx(21页珍藏版)》请在冰点文库上搜索。

参考答案Matlab实验报告.docx

参考答案Matlab实验报告

实验一Matlab基础知识

一、实验目的:

1.熟悉启动和退出Matlab的方法。

2.熟悉Matlab命令窗口的组成。

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

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

二、实验内容:

1.求[100,999]之间能被21整除的数的个数。

(rem)

2.建立一个字符串向量,删除其中的大写字母。

(find)

3.输入矩阵,并找出其中大于或等于5的元素。

(find)

4.不采用循环的形式求出和式

的数值解。

(sum)

三、实验步骤:

●求[100,199]之间能被21整除的数的个数。

(rem)

1.开始→程序→Matlab

2.输入命令:

»m=100:

999;

»p=rem(m,21);

»q=sum(p==0)

ans=43

●建立一个字符串向量,删除其中的大写字母。

(find)

1.输入命令:

»k=input('’,’s’);

Eie48458DHUEI4778

»f=find(k>=’A’&k<=’Z’);

f=910111213

»k(f)=[]

K=eie

●输入矩阵,并找出其中大于或等于5的元素。

(find)

1.输入命令:

»h=[4810;369;573];

»[i,j]=find(h>=5)

i=3j=1

12

22

32

13

23

●不采用循环的形式求出和式的数值解。

(sum)

1.输入命令:

»w=1:

63;

»q=sum(2.^w)

q=1.8447e+019

实验二Matlab基本程序

一、实验目的:

1.熟悉Matlab的环境与工作空间。

2.熟悉M文件与M函数的编写与应用。

3.熟悉Matlab的控制语句。

4.掌握if,switch,for等语句的使用。

二、实验内容:

1.根据y=1+1/3+1/5+……+1/(2n-1),编程求:

y<5时最大n值以及对应的y值。

2.编程完成,对输入的函数的百分制成绩进行等绩转换,90~100为优,80~89为良,70~79为中,60~69为及格。

3.

编写M函数文件表示函数,并分别求x=12和56时的函数值。

4.编程求分段函数

,并求输入x=[-5.0,-3.0,1.0,2.0,2.5,3.0,3.5]时的输出y。

三、实验步骤:

●根据y=1+1/3+1/5+……+1/(2n-1),编程求:

y<5时最大n值以及对应的y值。

1.打开Matlab,新建M文件

2.输入命令:

y=0;i=1

while1

f=1/(2i-1);

y=y+f

ify>5

break;

end

i=i+1

end

n=i-1

y=y-f

3.保存,命名为eg1,并在命令窗口输入eg1:

»eg1

n=3094

y=4.9999

●编程完成,对输入的函数的百分制成绩进行等绩转换,90~100为优,80~89为良,70~79为中,60~69为及格。

1.打开Matlab,新建M文件

2.输入命令:

C=input(‘请输入成绩’);

fori=1:

length(c)

ifc(i)>=90&c(i)<=100

grade(i)=’优’;

elseifc(i)>=80&c(i)<=89

grade(i)=’良’;

elseifc(i)>=70&c(i)<=79

grade(i)=’中’;

elseifc(i)>=60&c(i)<=69

grade(i)=’及’;

else

grade(i)=’不’;

end

end

grade

3.保存,命名为eg2,并在命令窗口输入

»eg2

请输入成绩[100,59,60,79,70,69,80,59,99]

grade=

优不及中中及良不优

编写M函数文件表示函数,并分别求x=12和56时的函数值。

1.打开Matlab,新建M函数文件

2.输入命令:

functiony=hs(x)

y=2*sqrt(x.^2+10)-5

3.保存,命名为hs,并在命令窗口输入

»hs(12)

y=19.8193

ans=19.8193

●编程求分段函数

,并求输入x=[-5.0,-3.0,1.0,2.0,2.5,3.0,3.5]时的输出y。

1.打开Matlab,新建M函数文件

2.输入命令:

functiony=zhi(x)

fori=1:

length(x)

ifx(i)<0&x(i)~=-3

y(i)=x(i).^2+x(i)-6;

elseifx(i)>=0&x(i)<5&x(i)~=3&x(i)~2

y(i)=x(i).^2-x(i)-5*x(i)+6;

elsey(i)=x(i).^2-x(i)+1;

end

end

y

3.保存,保存名为zhi,并在命令窗口输入

»x=[-5,-3,1,2,2.5,3,3.5];

»zhi(x)

y=Columns1through6

14.000013.00002.00003.0000-0.25007.0000

Column7

0.7500

ans=Columns1through6

14.000013.00002.00003.0000-0.25007.0000

Column7

0.7500

 

实验三Matlab的基本绘图命令

一、实验目的:

1.熟悉二维、三维绘图函数的基本命令。

2.熟悉图形修饰与控制的基本方法。

3.了解特殊图形的绘制。

二、实验内容:

1.在同一图形窗口按不同纵坐标绘制200e-0.05xsinx和0.8e-0.5xsin(10x)曲线,要求x的取值范围为[0,20],并加图例注解。

2.将一个图形窗口分割成四个子窗口,并在四个窗口中分别以条形图,填充图,阶梯图,杆图绘制曲线y=2e-0.5x。

3.已知t取值范围(0,20π),步长成π/100,x=sint,y=cost,z=tsintcost,绘制三维曲线。

4.已知:

t=-3:

0.125:

3,x=sin2t,y=cos2t,z=x2+2y2,绘制该函数的四种三维图,坐标轴范围[-1,1,-1,1,0,2]。

三、实验步骤:

●在同一图形窗口按不同纵坐标绘制200e-0.05xsinx和0.8e-0.5xsin(10x)曲线,要求x的取值范围为[0,20],并加图例注解。

1.打开Matlab文件编辑器,编写程序如下:

x=0:

0.01;20;

y1=200.*exp(-0.05x).*sin(x);

y2=(0.8).*exp(-0.5x).*sin(10x);

plotyy(x,y1,x,y2);

legend(‘y1’,’y2’);

2.运行程序,结果如图所示:

●将一个图形窗口分割成四个子窗口,并在四个窗口中分别以条形图,填充图,阶梯图,杆图绘制曲线y=2e-0.5x。

1.打开Matlab文件编辑器,编写程序如下:

x=0:

1:

10;

y=2.*exp(-0.5*x);

subplot(2,2,1);

bar(x,y,’b’);

xlabel(‘x’);

ylabel(‘y’);

subplot(2,2,2);

fill(x,y,’y’);

xlabel(‘x’);

ylabel(‘y’);

subplot(2,2,3)

stairs(x,y,’m’);

xlabel(‘x’);

ylabel(‘y’);

subplot(2,2,4);

stem(x,y,’c’);

xlabel(‘x’);

ylabel(‘y’);

2.运行程序,结果如图所示:

●已知t取值范围(0,20π),步长成π/100,x=sint,y=cost,z=tsintcost,绘制三维曲线。

1.打开Matlab文件编辑器,程序如下:

t=0:

pi/100:

20*pi;

x=sin(t);

y=cos(t);

z=t.*sin(t).*cos(t);

plot(x,y,z);

gridon;

2.运行程序,结果如图所示:

●已知:

t=-3:

0.125:

3,x=sin2t,y=cos2t,z=x2+2y2,绘制该函数的四种三维图,坐标轴范围[-1,1,-1,1,0,2]。

1.打开Matlab文件编辑器,编写程序如下:

t=-3:

0.125:

3;

x=sin(2*t);

y=cos(2*t);

[x,y]=meshgrid(x,y);

z=x.^2+2*(y.^2);

mesh(x,y,z);

axis([-1,1,-1,1,0,3]);

figure

Mesh(x,y,z);

axis([-1,1,-1,1,0,3]);

figure

surf(x,y,z);

axis([-1,1,-1,1,0,3]);

figure

surf(x,y,z);

axis([-1,1,-1,1,0,3]);

2.运行程序,结果如图所示:

实验四MATLAB数值与符号计算

一、实验目的:

1.掌握多项式建立表示的方法,及基本多项式运算指令

2.掌握函数绘图指令及方法

3.掌握求数值导数、数值积分、代数方程数值求争解的方法。

4.掌握定义符号对象,求符号函数极限、导数和积分方法。

二、实验内容:

1.求多项式x4+8x3-10的根。

2.求有理式(3x2+6x+9)(x2+2x)的导数。

3.定义函数myfun:

y(1,2)=[200*sin(x)/x,x^2],绘制该函数在x=[-20,20]区间内的图形。

4.

计算:

,其中f(x)=sin(x),f(x)=1/cos(x)。

5.求:

三、实验步骤:

●求多项式x4+8x3-10的根。

1.打开Matlab,在命令窗口输入:

»p=[1,8,0,0,-10]

»r=roots(p)

2.运行结果:

r=-8.0194

1.0344

-0.5075+0.9736i

-0.5075-0.9736i

●求有理式(3x2+6x+9)(x2+2x)的导数。

1.打开Matlab,在命令窗口输入:

»a=[3,6,9]

»b=[1,2,0]

»w=conu(a,b)

2.运行结果:

w=

31221180

3.在命令窗口输入

»k=polyder(w)

4.运行结果:

k=

12364218

●定义函数myfun:

y(1,2)=[200*sin(x)/x,x^2],绘制该函数在x=[-20,20]区间内的图形。

1.打开Matlab,在命令窗口输入:

functionmyfun=f(x);

myfun

(1)=200.*sin(x)/x;

myfun

(2)=x.^2;

end

2.保存函数文件

3.在命令窗口输入:

»plot(‘myfun’)[-20,20]

4.运行结果如下:

计算:

,其中f(x)=sin(x),f(x)=1/cos(x)。

1.打开Matlab,在命令窗口输入:

»symsx;

»m=1/cos(x);

»int(sin(x),x)

2.运行结果如下:

ans=

log(1/cos(x))+log(sin(x)+1)

●求:

1.打开Matlab,在命令窗口输入:

»symsxy;

»n=log(x+exp(y))/sqrt(x^2+y^2);

»v=limit((limit(n,x,1)),y,0)

2.运行结果如下:

v=log

(2)

计算I=,其中D为直线y=x2所围部分。

1.打开Matlab,在命令窗口输入:

»symsx,y;

»f=(1/2)*(2-x-y);

»int((int(f,y,x^2,2-x)),x-2,1)

2.运行结果如下:

ans=

81/40

实验五simulink仿真

一、实验目的:

1.熟悉simulink仿真环境

2.能够利用simulink建立仿真框图,完成简单系统的仿真。

二、实验内容:

1.应用simulink实现下列系统的仿真,并试试改变信号源后的结果。

2.利用simulink解二阶微分方程

其中u(t)为单位阶跃函数

三、实验步骤:

1.打开Matlab,启动simulink。

2.新建Model文件:

在simulink库中,sources取出

,在signalrouting中取出

,在continuous中取出

,在sinks中取出

●利用simulink解二阶微分方程

其中u(t)为单位阶跃函数

1.打开Matlab,启动simulink。

2.新建Model文件,建立如下系统的仿真

3.

点击仿真按钮,然后双击“scope”,将会出现如下图形,单击保存。

Simulation→configurationparamenters

→starttime0.0

Stoptime20.0

Kelativetolerance1e-7

实验六MATLAB信号工具箱

一、实验目的:

1、熟悉MATLAB信号处理工具箱。

2、掌握MATLAB中信号的产生函数及信号的基本运算。

二、实验内容:

1、产生一周期为0.05的三角波,宽度值各为0,0.5,1。

2、产生一个3GHZ的高斯单脉冲,采样频率为100GHZ。

3、已知两离散系列,n1=1:

5;x1=[10.70.40.10];

n2=3:

8;x2=[0.10.30.50.70.91]

三、实验步骤:

●产生一周期为0.05的三角波,宽度值各为0,0.5,1。

1.打开Matlab,新建M文件,编写如下程序:

t=0:

0.0001:

0.1;

m=sawtooth(2*pi*20*t,0);

p=sawtooth(2*pi*20*t,0.5);

m=sawtooth(2*pi*20*t,1);

subplot(3,1,1);

plot(t,m);

xlabel(‘t’);

ylabel(‘m’);

subplot(3,1,2);

plot(t,p);

axis([0,0.2,-1,1]);

xlabel(‘t’);

ylabel(‘p’);

subplot(3,1,3);

plot(t,n);

xlabel(‘t’);

ylabel(‘n’);

2.运行该程序,结果如下图所示:

●产生一个3GHZ的高斯单脉冲,采样频率为100GHZ。

1.打开Matlab,新建M文件,编写程序如下:

a=3eq;

b=100eq;

tc=gmonopuls('cutoff’,a);

t=-3*tc:

1/b:

3*tc;

y=gmonoplus(t,a);

plot(t,y);

2.点击保存,运行该程序,如图所示:

●已知两离散系列,n1=1:

5;x1=[10.70.40.10];n2=3:

8;x2=[0.10.30.50.70.91]试编程实现两系列的相加与相乘。

1.打开Matlab,新建M文件,编写如下程序:

n1=1:

5;

x1=[10.70.40.1o];

n2=3:

8;

x2=[0.10.30.50.70.71];

n=1:

8;

x10=[x1zeros(1,8-length(n1))];

axis([1801]);

x20=[zeros(1,8-length(n2)),x2];

axis([1801]);

x=x10+x20;

y=x10.*x20;

subplot(4,1,1);

stem(n1,x1);

axis([1801]);

subplot(4,1,2);

stem(n,x10);

axis([1801]);

subplot(4,1,3);

stem(n2,x2);

axis([1801]);

subplot(4,1,4);

stem(n,x20);

axis([1801]);

figure

(2)

subplot(2,1,1);

stem(n,x);

axis([1801]);

subplot(2,1,2);

stem(n,y);

sxis([1801]);

2.点击保存,然后运行该程序,结果如图:

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

当前位置:首页 > 医药卫生 > 基础医学

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

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