matlab教程m文件介绍
- 格式:ppt
- 大小:460.50 KB
- 文档页数:30
第二讲MATLAB的程序设计和M文件在MATLAB中,程序设计主要是通过编写和运行M文件来实现。
M文件是MATLAB的主要代码文件,用于实现不同功能的程序,可以包含变量定义、算法实现、函数调用和图形绘制等。
下面将介绍MATLAB的程序设计和M文件的基本知识。
MATLAB的程序设计主要包括如下几个方面:1.变量和数据类型:在M文件中,可以使用不同的变量类型存储数据,如整型、浮点型、字符型等。
不同的变量类型在MATLAB中有不同的表示方法和功能。
2.运算和表达式:在M文件中,可以使用常见的数学运算符(如加减乘除、指数等)进行计算。
同时,也可以使用逻辑运算符(如与、或、非等)进行逻辑运算。
3. 条件语句:在M文件中,可以使用条件语句实现根据不同的条件执行不同的操作。
MATLAB中的条件语句主要有if语句和switch语句,通过判断条件的真假来决定执行路径。
4. 循环语句:在M文件中,可以使用循环语句实现对一段代码的重复执行。
MATLAB中的循环语句主要有for循环、while循环和do-while循环。
5.函数的定义和调用:在M文件中,可以通过定义函数来实现特定功能的封装。
函数可以包含输入参数和输出参数,通过参数的传递来实现数据的交互和函数的调用。
1.M文件的命名和保存:M文件的命名应该具有描述性,以体现文件中代码的功能。
M文件的保存格式是以.m为文件扩展名。
2.M文件的结构:在M文件中,一般会包含变量定义、函数定义和主程序等部分。
变量定义部分用于声明和初始化变量,函数定义部分用于定义自定义函数,而主程序部分用于调用函数和执行主要功能。
3.代码注释:为了提高代码的可读性和可维护性,需要在M文件中添加注释。
注释可以用于解释代码的目的和思路,以及描述变量、函数和算法等的作用和实现方法。
4.代码风格:为了代码的一致性和可读性,需要遵循一定的代码风格规范。
例如,可以在操作符周围留有空格,使用一致的缩进和命名规则,避免使用不必要的缩写等。
M文件一、关于M文件1. MA TLAB语言的程序文件为文本文件,后缀为.m,通常称为M文件。
2. MA TLAB提供了专门的M文件编辑器,在菜单或工具栏中可以打开,也可以在控制窗口输入edit命令打开。
3. M文件分为命令M文件和函数M文件。
二、命令M文件1. 命令M文件是命令序列。
2. 命令M文件无输入及返回参数。
3. 数据保存在基本工作空间中。
三、函数M文件1. 函数M文件可以接受和返回参数。
2. 函数M文件运行时会创建函数工作空间,运算变量存放在这个空间。
3. 例计算一个向量所有元素的平均值function y=average(x)% 计算一个向量所有元素的平均值% function 表示创建函数M文件,y是返回参数,x是输入参数,average是文件名。% 第二行是H1行,对函数M文件的格式和功能做说明,在使用help命令时显示的就是这些内容。[m,n]=size(x);% size是MATLAB函数,返回矩阵的行数和列数。if(~((m==1)|(n==1))|(m==1&n==1)error(‘please input a vector’);end% 这是一个选择结构,单分支选择结构的格式是:% if 条件% 语句组% end% 条件成立时执行语句组,条件不成立时执行后续语句组。%% 上面选择结构要求输入的x是向量,即m和n一个是1 ,另一个不是1。% 如果不是,提示错误,并要求输入一个向量。%% 关系运算符:% == 等于~=不等于> < >= <=% 同学们可以在命令窗口输入% a=[1 2;1 2],b=[1 1;2 1]% c=a==b% 看看结果。%% 逻辑运算符:% & 逻辑与| 逻辑或~ 逻辑非y=sum(x)/length(x);%计算平均值%sum(x)是MATLAB函数,%如果x 是矩阵,返回矩阵按列求和得到的行向量%如果x 是向量,返回各元素的和%% 同学们可以在命令窗口输入% a=[1 2 3;1 0 5],b=[1 1 2 1]% sum(a) ,sum(a’),sum(b),sum(b’)%% 函数编辑完成后,保存为与函数同名的M文件。%% 同学们可以在命令窗口输入% a=[1 2 3;1 0 5],b=[1 1 2 1]% average(a),average(b)。
MATLAB的M文件的学习和使用
一、概念
M文件是MATLAB的程序文件,分为两类:脚本文件和函数文件。
✓脚本文件可以用于执行一些简单的MATLAB命令,运行时直接输入文件名就可以。
✓函数文件使用时不能直接输入函数名,必须由其他语句调用。
二、基本操作:
✓创建M文件:点击工具栏上的图标,或在命令窗口输入edit。
✓打开M文件:点击工具栏上的图标。
✓保存M文件:写好内容后,点击保存按钮,函数文件保存时文件名要和函数名一致。
存储路径一定要是英文。
三、函数M文件格式
函数M文件不能独立执行,有输入参数和输出参数,输出形参多于一个时,用方括号括起来。
格式为:
●function [参数1,参数2,…]=函数名(参数1,参数2,…)
●注释
●函数体
四、示例
1、创建文件,写入函数,并保存。
两个数加、乘运算,定义为ff函数:
2、“当前路径”和文件保存路径一致时才能调用,如果不一致就会报错。
我的文件放在桌面上了,当前路径就是桌面:
3、调用时先给出函数参数的值,如图:
因为是输入输出都是形参,所以变量名可以自己定义:
4、把调用命令写到另一个M文件中,这个是M文件是脚本文件,保存为main1.m,
和在命令窗口调用效果是一样的:
5、运行main1文件,在命令窗口直接输入文件名即可:
或者点击main1文件的运行按钮,命令窗口出现结果:。
第 6 章 M 文件和函数句柄从总体上说,单独的MATLAB 指令,及由若干指令构成的孤立表达式,只能解算或仿真简单理论数学模型所描述的问题。
复杂些的问题通常需要用一组理论数学算式。
这些问题的解算及仿真就需要借助较复杂的MATLAB 程序进行。
这种MATLAB 程序由较多的MATLAB 指令和多种多样的MATLAB 表达式组成,并循着一定的执行次序运行。
这种程序的扩展名为m 。
这就是脚本M 文件或函数M 文件。
本章系统介绍编写MATLAB 程序时最常用到的四种控制结构、M 函数文件的构造、主函数、子函数以及匿名函数。
最后一节专门叙述函数句柄的创建、观察和调用。
6.1 MATLAB 控制流作为一种计算机编程语言,MATLAB 提供了多种用于程序流控制的描述关键词(Keyword )。
本节只介绍其中最常用的条件控制(if, switch )和循环控制(for, while, continue, break )。
由于MATLAB 的这些指令与其它语言相应指令的用法十分相似,因此本节只结合MATLAB 给定的描述关键词,对这四种指令进行简要的说明。
6.1.1if-else-end 条件控制if-else-end 指令为程序流提供了一种分支控制,它最常见的使用方式见表6.1-1。
【例6.1-1】已知函数xx x e xx y x ≤<≤--<⎪⎩⎪⎨⎧=+-111113,编写能对任意一组输入x 值求相应y 值的程序。
(1)function y=exm060101(x)% y=exm060101(x) Function calculate of example 6.1-1n=length(x); for k=1:n if x(k)<-1y(k)=x(k);elseif x(k)>=1y(k)=exp(1-x(k));elsey(k)=x(k)^3;endend(2)(3)x=[-2,-1.2,-0.4,0.8,1,6]y=exm060101(x)x =-2.0000 -1.2000 -0.4000 0.8000 1.0000 6.0000y =-2.0000 -1.2000 -0.0640 0.5120 1.0000 0.00676.1.2switch-case控制结构【例6.1-2】已知学生的名字和百分制分数。
Matlab-M Editor第1节启动mEditor首先要介绍一下m文件. Matlab中m文件有两种类型, 一种叫做m-function,就是函数文件, 另一种叫m-Script, 或称脚本. 前一种放在后面提及.此处只涉及后一种.当我们有很多事情要做时, 我们一般习惯于拿出一个记事本, 在其中一条一条地列出要做事项, 然后就按照记事本上事件顺序一件一件地完成. m-Script就是这样一个文件, 上面记载了Matlab要执行地每一个命令, 定义完所有命令后, Matlab就一条一条地执行.mEditor就像windows里面地记事本, 用来编辑Matlab需要做的事项.启动editor 很简单, 在command window中输入edit 即可启动mEditor, 如果在edit 后跟文件名, mEditor启动时将打开/新建这个文件.第2节一个简单例子下面在mEditor中尝试一个简单的例子. 假设我们这个m-Script文件名叫做“test.m”. 首先在命令窗口中输入edit test 打开mEditor开始编辑这个文件. 然后依次输入以下命令, 每个命令一行.: a=1b=2a=a+1b=b/2.输入完毕, 按F5 就可以运行文件了. 可以看到, 运行结果和我们直接在Command window中依次输入这些命令完全一样.第3节Matlab语句后的分号如果, matlab语句后如果没有分号, 该语句执行结果会立即在command window中显示, 而若有分号, 则执行结果不会显示. 这个技巧比较适合在很长的Script 文件中实用. 毕竟, 运算过程如果太多, 很多中间结果我们不需要知道.第4节程序调试上面的程序非常简单, 一路运行过来就可以了. 在实际工作中, 我们常遇上很复杂的程序, 又可能需要在某些特定的语句处暂时中断, 看看运行的情况, 然后再继续. 此时mEditor 的断点功能显得很有效. 罗唆两句, 先介绍一下断点. 它就像是一个路标, 指示Matlab, 当程序运行到这个路标时, 暂时停下来, 让我们进行一些操作, 之后再继续往后面走. mEditor 中设置断点很简单, 想在哪一行语句之前暂停, 就在该行行号后面的那个-处单击左键, 此时-变为红色小点, 这个断点就设置好了. 再点击红色小点, 该断点取消.此后按F5执行文件时, Matlab都会在该断点处暂停, 这时候你可以通过Commandwindow输入其它命令, 可以用Array Editor修改已有变量等等. 这些工作做完后, 想继续运行程序又要怎么办呢? 在Command window中输入return 即可从刚中断处继续运行了.。