视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
MATLAB实验指导书(DOC)
2025-10-02 15:03:34 责编:小OO
文档
MATLAB

实 验 指 导 书

前言

MATLAB程序设计语言是一种高性能的、用于科学和技术计算的计算机语言。它是一种集数学计算、分析、可视化、算法开发与发布等于一体的软件平台。自1984年MathWorks公司推出以来,MATLAB以惊人的速度应用于自动化、汽车、电子、仪器仪表和通讯等领域与行业。MATLAB有助于我们快速高效地解决问题。MATLAB相关实验课程的学习能加强学生对MATLAB程序设计语言理解及动手能力的训练,以便深入掌握和领会MATLAB应用技术。

 

目录

基础型实验    - 1 -

实验一 MATLAB集成环境使用与基本操作命令练习    - 1 -

实验二 MATLAB中的数值计算与程序设计    - 7 -

实验三 MATLAB图形系统    - 11 -

基础型实验

实验一 MATLAB集成环境使用与基本操作命令练习

一 实验目的

熟悉MATLAB语言编程环境;熟悉MATLAB语言命令

二 实验仪器和设备

装有MATLAB7.0以上计算机一台

三 实验原理

MATLAB 是以复杂矩阵作为基本编程单元的一种程序设计语言。它提供了各种矩阵的运算与操作,并有较强的绘图功能。

1.1    基本规则

1.1.1   一般MATLAB命令格式为 

       [输出参数1,输出参数2,……]=(命令名)(输入参数1,输入参数2,……)

       输出参数用方括号,输入参数用圆括号如果输出参数只有一个可不使用

       括号。      

1.1.2  %后面的任意内容都将被忽略,而不作为命令执行,一般用于为代码加注释。

1.1.3  可用↑、↓键来重现已输入的数据或命令。用←、→键来移动光标进行修改。

1.1.4所有MATLAB命令都用小写字母。大写字母和小写字母分别表示不同的变量。

1.1.5常用预定义变量,如pi 、Inf、NaN、ans

1.1.6矩阵的输入要一行一行的进行,每行各元素用空格或“,”分开,每行用“;”分开。如

         MATLAB书写格式为A=[1  2  3 ;4  5  6 ;7  8  9]                                                                                                     

         在MATLAB中运行如下程序可得到A矩阵

                a=[1 2 3;4 5 6;7 8 9]

                a =

                   1     2     3

                   4     5     6

                   7     8     9

1.1.7  需要显示命令的计算结果时,则语句后面不加“;”号,否则要加“;”号。

      运行下面两种格式可以看出它们的区别:

a=[1 2 3;4 5 6;7 8 9]       a=[1 2 3;4 5 6;7 8 9];

a=

           1   2   3             不显示结果

           4   5   6

           7   8   9

1.1.8  当输入语句过长需要换行时,应加上“…”后再回车,则可续行输入。

1.2   文件管理常用命令

1.2.1  帮助(HELP)命令

    MATLAB有很多命令,因此很不容易记忆。使用HELP命令可以得到有关命令的屏幕帮助信息。

如 在MATLAB环境下直接运行HELP命令就会在屏幕上给出MATLAB的基本命令以及相关的工具箱软件命令(请自行验证)。

 而下面的格式可以得到指定命令的帮助信息,和详细说明。

                  help  命令名  

1.2.2  save 命令

该命令存储定义的变量或演算结果,也可以用来存储指定的变量。 

      命令格式为

                 save      文件名 [变量名表]  [-append] [-ascii] 

1.2.3   what 命令

   该命令可以在当目录下显示MATLAB文件和MAT数据文件

1.2.4    dir 命令      

显示当前目录下的所有文件.

1.2.5clear命令   

     如果输入 calear a b c ,则表示清除工作空间中指定变量a,b,c;如果仅仅输入calear命令,则清除整个工作空间。                   

1.3   矩阵运算

    MATLAB具有强大的矩阵运算功能,这里我们只作简单介绍.

1.3.1在MATLAB中表示一个矢量要用方括号, 而列矢量的输入只需在行矢量输入格式基础上加转置符“’”即可。

     如          x=[1 2 3;4 5 6]

                 x =

                    1     2     3

                    4     5     6

           而   x=[1 2 3;4 5 6]'              (加转置符)

                x =

                    1     4

                    2     5

                    3     6

1.3.2下面三条命令可以产生一个行矢量

1a=linspace(x,y,n)    

2a=logspace(x,y,n) 

3a=[x:n:y]

第一条命令可以在线性空间产生一个值在x至y之间间隔点数为n的行矢量(一组数据)。其行矢量的起始值是x, 终值为y, 点数为n。

第二条命令可以在对数空间产生一个值在10x至 10y之间等间隔的行矢量(一组数据)。

第三条命令产生x至y步长为n的行矢量。

但是, 三个命令之间存在差别,下面的例子可以说明这一点。

 例1       x=logspace(0,5,6)

           x =

        1          10         100        1000       10000      100000

 例2        x=linspace(0,10,11)

           x =

        0     1     2     3     4     5     6     7     8     9    10

 例3         x=[0:1:10]

            x =

        0     1     2     3     4     5     6     7     8     9    10

        通过上面三个例子可以看出例一, 例二中n代表选取的点数。而在例三      中n则表示步长. 注意它们的区别。

1.3.3 矩阵的加, 减, 乘, 除等, 和其它语言书写一样。 但要注意的是在运算    符前面加有“.”则表示是数组运算,为对应元素的相应操作。

 例4 请注意下面的不同情况.    

                  a=[1 2;3 4];

                  b=[2 2;2 2];

c=a*b                      c=a.*b

            c =                         c =

               6     6                      2     4

               14    14                     6     8

            c=a/b                       c=a./b

            c =                         c =

              1.0e+015 *                    0.5000    1.0000

             -2.2518    2.2518              1.5000    2.0000

             -2.2518    2.2518

1.4  常见数学函数

函 数 名

数 学 计 算 功 能

函 数 名

数 学 计 算 功 能

abs(x)

实数的绝对值或复数的幅值floor(x)

对x朝-∞方向取整

acos(x)

反余弦arcsin

(m,n)

求正整数m和n的最大公约数

acosh(x)

反双曲余弦arccosh

imag(x)

求复数x的虚部

angle(x)

在四象限内求复数 x 的相角

lcm(m,n)

求正整数m和n的最小公倍数

asin(x)

反正弦arcsin

log(x)

自然对数(以为底数)

asinh(x)

反双曲正弦arcsinh

log10(x)

常用对数(以10为底数)

atan(x)

反正切arctan

real(x)

求复数x的实部

atan2(x,y)

在四象限内求反正切rem(m,n)

求正整数m和n的m/n之余数

atanh(x)

反双曲正切arctanh

round(x)

对x四舍五入到最接近的整数

ceil(x)

对x朝+∞方向取整

sign(x)

符号函数:求出x的符号

conj(x)

求复数x的共轭复数

sin(x)

正弦sin

cos(x)

余弦cos

sinh(x)

反双曲正弦sinh

cosh(x)

双曲余弦cosh

sqrt(x)

求实数x的平方根: 

exp(x)

指数函数

tan(x)

正切tan

fix(x)

对x朝原点方向取整

tanh(x)

双曲正切tanh

例5:输入 x=[-4.85  -2.3  -0.2  1.3  4.56  6.75],则:

 ceil(x)=  -4    -2     0     2     5     7

 fix(x) =  -4    -2     0     1     4     6

 floor(x) = -5    -3    -1     1     4     6

 round(x) = -5    -2     0     1     5     7

1.5   关系及逻辑运算                                                                    

1.5.1   关系运算允许常量(或矩阵中的元素与元素) 之间的比较. 如果比较结果为真,则答案为1, 否则为0. 常用的关系运算符如下:

<   小于    ,    >   大于    ,     ==    等于      

<=  小于等于,    >=  大于等于,     ~=    不等于

对于复数”==” 和”~=” 既比较实部也比较虚部, 而其它运算仅比较实部。

例6   比较 a=[5:1:15] 与  b=[1 2 8 8 7 10 12 11 13 14 15] 中的对应元素            是否相同,则运行下面程序

a=[5:1:15];

b=[1 2 8 8 7 10 12 11 13 14 15];

y=a==b

        y =

       0     0     0     1     0     1     0     0     1     1     1 

                 

1.5.2MATLAB有三个逻辑运算符.

     &  逻辑与      |  逻辑或        ~  逻辑非

在矩阵运算中,以上命令是将两个矩阵中的对应元素进行运算, 得到的结  果是具有同样元素的矩阵。

例7   分别对下面两个矩阵进行逻辑运算.

           X=[0 1;1 0];      Y=[0 0;1 0];

                     

                 X&Y                

                      ans =

                          0     0

                          1     0     

                      X|Y

                       ans =

                          0     1

                          1     0

                  ~X

                      ans =

                          1     0

                          0     1

  MATLAB在进行混合运算时, 其顺序为:

            算术运算 → 关系比较 → 逻辑运算

例8   计算 x&y+x>y 时, 程序首先执行x+y运算, 然后将相加结果与y比较, 最后将比较结果和x作与运算,运行结果如下。

                x=[0 1;1 0];

                y=[0 0;1 0];

x&y+x>y

                ans =

                    0     1

                    1     0

四 实验内容和步骤

熟悉MATLAB语言编程环境。在这一环境中,系统提供了许多编写,调试和执行MATLAB程序的便利工具。熟悉变量、MATLAB基本数学函数使用,矩阵操作练习,主要包括矩阵的建立,算数运算,逻辑运算和关系运算。

(一)熟悉Matlab的运行环境以及HELP命令,运行demo命令,观看matlab所具有的功能。

(二)验证例题中所有操作。

(三)完成以下各题,并在机器上运行结果验证。

1.输入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)       A(3,:)       A(:,1:2:3)      A(:,3).*B(:,2)    A(:,3)*B(2,:)      A*B       A.*B       A^2       A.^2     B/A       B./A

2.输入C=1:2:20, 

实验二 MATLAB中的数值计算与程序设计

一 实验目的: 

完成MATLAB下数据分析与程序设计有关问题的练习。学习脚本文件的编写,数值输入,数组计算,程序调试等;练习利用MATLAB编程序解决基本数学问题。学习全局和局部变量的使用,流程控制结构,函数编写及其调试。

二 实验仪器和设备

装有MATLAB7.0以上计算机一台

三 实验原理

1.  常用运算命令

运算命令名             功能

angle求复数的角
min求最小值
max求最大值
sum求和
roots求多项式的根
poly由多项式的根求多项式的系数
polyval求给定点多项式的值
polyder多项式求导
 例1   求a=S^3+2S^2+3S+4根.

                       a=[1 2 3 4];

                       roots(a)

                         ans =

                         -1.6506          

                         -0.1747 + 1.5469i

                         -0.1747 - 1.5469i

         或

                        roots([1 2 3 4])

                         ans =

                             -1.6506          

                             -0.1747 + 1.5469i

                             -0.1747 - 1.5469i

  例2    已知某多项式的根如下

                             -1.6506          

                             -0.1747 + 1.5469i

                             -0.1747 - 1.5469i

           求该多项式.

                    poly([-1.6506,-0.1747+1.5469i,-0.1747 - 1.5469i])

                    ans =

                          1.0000    2.0000    3.0001    4.0001

            即所求多项式为  S^3+2S^2+3S+4  .

2.  建立M文件

将多个可执行的系统命令,用文本编辑器编辑后并存放在后缀为 .m 的文件中,若在MATLAB命令窗口中输入该m-文件的文件名(不跟后缀.m!),即可依次执行该文件中的多个命令。这个后缀为.m的文件,也称为Matlab的脚本文件(Script File)。

注意:文件存放路径必须在Matlab能搜索的范围内。

3.  建立函数文件

对于一些特殊用户函数,系统提供了一个用于创建用户函数的命令function,以备用户随时调用。

1.格式:

function  [输出变量列表]=fun_name(输入变量列表)

               用户自定义的函数体

2.函数文件名为:fun_name,注意:保存时文件名与函数名最好相同;

3.存储路径:最好在系统的搜索路径上。

4. 调用方法:输出参量=fun_name (输入变量)

例5:

计算s = n!,在文本编辑器中输入:

function s=pp(n);

s=1;

for i=1:n

    s=s*i;

end

s;

在MATLAB命令窗口中输入:s=pp(5)

  结果为:  s = 120

3.求下列表达式的值。

(1)

(2),其中a=3.5,b=5,c=-9.8。

实验三 MATLAB图形系统

一 实验目的

学会用MATLAB语言绘图

二 实验仪器和设备

装有MATLAB7.0以上计算机一台

三 实验原理  

1、 plot    

该命令在线性坐标系下绘制y对应于x的轨迹。若其中之一为矩阵则该命令将对应于矩阵的行或者列绘制一簇曲线。该命令也可以在同一坐标轴下绘制多条曲线。

例1    运行程序

           t=[0:1:10];

                           x1=t;

                           plot(x1)

可在图形窗口得到下面图形: 

       例2  

                 x=[0:0.5:7];

                 y=sin(x);

                 y1=2*x;

                 y2=3*x;

                 plot(y,x,y1,x,y2,x)

从上面的例子可以看出, 如果要在同一坐标轴下绘制多条曲线, 可用如下格式:        

      plot(x1,y1,x2,y2……..xn,yn)      % 对应于不同矢量时

         其中x1,y1……….xn,yn是对应的关系。

2、log log    

在两个对数(标准对数)坐标间绘制图形。 

3、 semilogx 或semilogy    

在x轴或y轴为对数坐标, 而另一轴为线性轴的空间绘制图形。

4、polar    

在极坐标空间绘制图形。

5、grid     

在图形中加栅格。

6、subplot (r,c,p) 

该命令将屏幕分成r*c个窗口,p表示在第几个窗口. 同时绘制多个图形窗口时,绘图语句间应用逗号分开。

 例3    下面的程序产生四个窗口,且分别绘制相应图形.

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

        y=sin(t);

        x=cos(t);       

subplot(221),plot(t,y),grid,subplot(222),plot(t,x),

grid,subplot(223),polar(t,y),subplot(224),polar(t,x)

从上面的程序可以看出,subplot语句中的r,c,p可以不用逗号分开。

      上面程序执行后得到如下图形:

7、gtext   

该命令用于鼠标定位的文字注释. 执行完绘图命令后再执行gtext(‘说明文字’) 命令, 就可在屏幕上得到一个光标, 然后,用鼠标选择说明文字的位置。

例4                t=[0:1:10];

                      x1=2*t;

                      x2=0.5*t;

                      plot(x1,t,x2,t);

                      gtext('x=2t');

                      gtext('x=0.5t')   

8、  如果需要同时在不同窗口绘制图形, 可用figure语句来完成。

 例5    t=[0:1:10];

           x1=2*t;

           x2=3*t;

           figure,plot(x1),figure,plot(x2)   

                                                       

9、有关绘图方面的还有:  

✧Title   给当前图像加标题。

✧xlabel 或 ylabel  给x或y轴加标注。

✧text    在当前图像上指定位置加注释。

   等。

10、在同一座标系中绘制多个曲线时, 曲线的颜色可以自动确定,也可以自己选择。

其使用格式如下:

plot(x1,y1,选项1,x2,y2,选项2,…,xn,yn,选项n)

b蓝色m紫红色
c青色r红色
g绿色w白色
k黑色y黄色
-实线(默认):点连线
-.点画线--虚线
.s正方形
+十字号d菱形
o圆圈h六角形
*星号p五角星
x叉号>右三角
11、三维图形绘制函数

plot3函数与plot函数的用法类似。

还可以用mesh函数绘制三维网格图;用surf函数绘制三维曲面图。

MATLAB提供了丰富的三维绘图函数,可以通过help命令查看。 

例6 绘制三维曲线: 

t=0:pi/100:20*pi;

x=sin(t) ;

y=cos(t);

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

plot3(x,y,z) ;

title('line in 3-D space') 

xlabel(‘X’) ;ylabel(‘Y’);zlabel(‘z’);

grid on

运行结果如下:

 下载本文

显示全文
专题