Matlab运算基础

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

M文件根据调用方式的不同分为两类: 文件根据调用方式的不同分为两类: 文件根据调用方式的不同分为两类 一是命令文件(Script File),或称脚本文件; 一是命令文件 ,或称脚本文件; 另一种是M函数文件 另一种是 函数文件(Function File),它们都是 函数文件 , 由若干Matlab语句或命令组成的文件。两种文件 语句或命令组成的文件。 由若干 语句或命令组成的文件 的扩展名都是.m。要注意的是M文件名一定以字 的扩展名都是.m。要注意的是M文件名一定以字 母开头,而且最好不要与内置函数重名。 母开头,而且最好不要与内置函数重名。 如果M文件的第一行包含关键词 如果 文件的第一行包含关键词Function, 文件的第一行包含关键词 , 此文件为M函数文件,每一个 函数文件都定义 此文件为 函数文件,每一个M函数文件都定义 函数文件 为一个函数。 为一个函数。
然后在MATLAB的命令窗口中输入f1c, 然后在MATLAB的命令窗口中输入f1c,将 MATLAB的命令窗口中输入f1c 会执行该命令文件。 会执行该命令文件。
程序2 程序2: 首先建立函数文件f2c.m。 首先建立函数文件f2c.m。 f2c.m
function c=f2c(f) c=5*(f-32)/9
在命令窗口输入下述语句, 例2-1 在命令窗口输入下述语句,并按回车 键执行,分别给变量a、 、 赋值 赋值: 键执行,分别给变量 、b、c赋值: a=1% a为标量 为标量 b=[0 1] % b为行向量 为行向量 c=[1 2;3 4;5 6] % c为矩阵即二维数 为矩阵即二维数 组
特殊变量
反正弦函数 反余弦函数 反正切函数 最大值 元素的总和 以 e 为底的指数 以 10 为底的对数 取整
例:分析下述语句产生的执行结果
z=12 x=sqrt(log(z))
a=[1 pi/3 -pi; pi/2 pi/4 -4;-2 pi pi/6] sin(a) y=max(a) %矩阵各列的最大值、最小值 矩阵各列的最大值、 矩阵各列的最大值 y=min(a)
ans:在没有定义变量名时,系统默认的变量名; ans:在没有定义变量名时,系统默认的变量名; 在没有定义变量名时 eps:MATLAB定义的正的极小值2.2204e-16; 定义的正的极小值2.2204e eps:MATLAB定义的正的极小值2.2204e-16; 圆周率π pi: 圆周率π; Inf,inf :表示正无穷大,当输入1/0会产生; 表示正无穷大,当输入1/0会产生; 1/0会产生 虚数单位i=j=√ i=j=√i,j: 虚数单位i=j=√-1; 表示非数值(?或不定值, (?或不定值 NaN, nan: 表示非数值(?或不定值,它由 0/0产生。); 产生。) Inf/Inf 或 0/0产生。); 最大的正实数1.7977e+308; realmax: 最大的正实数1.7977e+308; realmin: 最小的正实数2.2251e-308; 最小的正实数2.2251e2.2251e
例:设数组为x,编写同时求正弦函数,余弦函 设数组为 编写同时求正弦函数, 数,自然对数的M函数文件。 自然对数的 函数文件。 函数文件 步骤如下: 步骤如下: 在编辑窗口逐行输入如下语句: 在编辑窗口逐行输入如下语句:
function[s,c,l]=comp1(x) s=sin(x) c=cos(x) l=log(x)
wk.baidu.com
保存M函数文件,并保存在搜索路径上,文 保存M函数文件,并保存在搜索路径上, 件名为comp1.m ; 件名为comp1.m 指令窗口执行下列语句: 指令窗口执行下列语句:
x=10; comp1(x) x=[pi,pi/4,pi/2,10,1]
注意: 变量什么时候是局部变量, 注意: 变量什么时候是局部变量,什么时候 是全局变量。 是全局变量。



采用十进制数,并可采用科学表示法表 采用十进制数, 示特大数和特小数,虚数可用i或j表示,如: 示特大数和特小数,虚数可用i 表示, 1.61e-21 1.61e-5.1+7.8i 7.8e15 -3.21e-125 3.21e3.0i 780+3.2e2j
浮点数的范围大致在10e-308~10e308之间。 浮点数的范围大致在10e-308~10e308之间 10e 之间 一般在计算时采用双精度型, 一般在计算时采用双精度型,在输出时有多 种数值显示格式可供选择。 种数值显示格式可供选择。



计算机是通过变量的名字找到该变量在 内存中位置的。变量不需要事先定义, 内存中位置的。变量不需要事先定义,在遇 到新的变量名时,会自动建立变量并分配存 到新的变量名时, 储空间。当遇到已存在的变量时, 储空间。当遇到已存在的变量时,会更新其 内容,如有必要会重新分配存储空间。 内容,如有必要会重新分配存储空间。为显 示变量的内容,只需键入变量名; 示变量的内容,只需键入变量名;要显示多 个变量,连续给出变量,用逗号隔开。 个变量,连续给出变量,用逗号隔开。

字 符 串
字符串用单引号‘’括起的一串字符表 字符串用单引号‘’括起的一串字符表 ‘’ 示,注意必须在英文状态下输入。字符串通 注意必须在英文状态下输入。 常赋值给变量, 常赋值给变量,这样可以使字符串处理比较 简单。 简单。 例: s='hello' a='how do you do' b='[1 2 3 4]'
然后在MATLAB的命令窗口调用该函数文件。 的命令窗口调用该函数文件。 然后在 的命令窗口调用该函数文件
clear; y=input('Input Fahrenheit temperature:'); : x=f2c(y)
七 程序结构
顺序、循环与分支三种结构 。 顺序、
顺序结构 1.数据的输入 从键盘输入数据,则可以使用input input函数来进 从键盘输入数据,则可以使用input函数来进 该函数的调用格式为: 行,该函数的调用格式为: A=input(提示信息 选项) 提示信息, A=input(提示信息,选项); 其中提示信息为一个字符串, 其中提示信息为一个字符串,用于提示用户输 入什么样的数据。 入什么样的数据。 如果在input函数调用时采用's'选项 input函数调用时采用 选项, 如果在input函数调用时采用 选项,则 允许用户输入一个字符串。例如, 允许用户输入一个字符串。例如,想输入一个 人的姓名,可采用命令: 人的姓名,可采用命令: xm=input('What''s your name?','s');
变量的命名规则为: 变量的命名规则为: 变量名必须以字母开头, 1 变量名必须以字母开头,变量名的组成可以 是任意字母、数字或者下划线, 是任意字母 、 数字或者下划线 , 但不能含有 空格和标点符号。 空格和标点符号。 关键字和函数名不能作为变量名。 2 关键字和函数名不能作为变量名。 3 变量名不能超过63个字符。 变量名不能超过63个字符。 63个字符 变量名区分字母的大小写,即大小写敏感。 4 变量名区分字母的大小写,即大小写敏感。

常用的数学函数
函 数 名 称
函 数
函 数 名 称
sin(x) cos(x) tan(x) abs(x) min(x) sqrt(x) log(x) sign(x)
正弦函数 余弦函数 正切函数 绝对值 最小值 开平方 自然对数 符号函数
asin(x) acos(x) atan(x) max(x) sum(x) exp(x) log10 ( x) fix(x)
变量的赋值
变量的赋值通常有两种形式: 变量的赋值通常有两种形式: 两种形式 变量= 1 变量=表达式 2 表达式 • 其中表达式是用运算符将有关运算量连接起 来的式子,其结果是一个数组。 来的式子,其结果是一个数组。 • 形式1 中,= 代表的是赋值操作,将表达式 形式1 代表的是赋值操作, 的值赋给MATLAB 的变量; 形式2 MATLAB的变量 的值赋给 MATLAB 的变量 ; 形式 2 中 , 将表达 式的值赋给MATLAB的临时变量ans MATLAB的临时变量ans。 式的值赋给MATLAB的临时变量ans。

M 文 件 与 M 函 数
Matlab两种常用的工作方式:一种是直接 两种常用的工作方式: 两种常用的工作方式 交互的指令行操作;另一种是 文件的编程工 交互的指令行操作;另一种是M文件的编程工 作方式。 作方式。 在前一种工作方式下, 在前一种工作方式下,Matlab被当作一种 被当作一种 高级的“数学演算和图形器” 高级的“数学演算和图形器”;在后一种工作 方式下, 文件类似于其它的高级语言 文件类似于其它的高级语言, 方式下,M文件类似于其它的高级语言,是一 种程序化的编程语言。 种程序化的编程语言。
数据类型
数据类型包括数值型、字符串型、 数据类型包括数值型、字符串型、元胞 数值型 型、构架型等。数值型有单精度型、双精度 构架型等 数值型有单精度型、 型和整数型。整数型有 型和整数型。 uint8,uint16,uint32和uint64等无符号型 uint8,uint16,uint32和uint64等无符号型 和int8,int16,int32和int64等符号型整 int8,int16,int32和int64等符号型整 数。
例:分析下述语句产生的执行结果 分析下述语句产生的执行结果
A=[1,2;3,4]
B=[1,3;2,4] A==B a='fate';b='cake';result=a==b a=2+2==4
例: 已知 已知a=[1 2 3 4];b1=3,b2=[0.1 2.1 2.9 , 4.1],分析a与b1 ,b2的六种关系运算的 ,分析 与 的六种关系运算的 结果
分别建立命令文件和函数文件, 例: 分别建立命令文件和函数文件,将华氏 温度f转换为摄氏温度c 温度f转换为摄氏温度c。 程序1: 程序 : 首先建立命令文件并以文件名f1c.m存盘。 存盘。 首先建立命令文件并以文件名 存盘
clear; c=5*(f-32)/9 %清除工作空间中的变量 清除工作空间中的变量 f=input('Input Fahrenheit temperature:'); :

算术运算: 算术运算:
运 算 符
+ 加法 - 减法 * 乘法 / 除法 \ 左除法 ^ 指数; 指数; (元素对元素): 乘法 ./ 除法 .\ 左除法 元素对元素):.* ): .^ 指数。 指数。 逻辑运算: 逻辑运算: & 逻辑与 ~ 逻辑非 | 逻辑或
关系运算: 关系运算: < <=(小于等于) > (小于等于) ~=(不等于)。 (不等于)。 关系运算符的运算法则为: 关系运算符的运算法则为: 当两个比较量是标量时, 当两个比较量是标量时,直接比较两数的 大小。若关系成立,关系表达式结果为 , 大小。若关系成立,关系表达式结果为1,否 则为0; 则为 ; >= ==(等于 等于) 等于
MATLAB 运算基础
数据术语
1)矩阵:由m×n个数组成的排成 行n列的一个矩形 )矩阵: 个数组成的排成m行 列的一个矩形 × 个数组成的排成 的数表,其中0× 矩阵为空矩阵 矩阵为空矩阵。 的数表,其中 ×0矩阵为空矩阵。数表中第 i(1≤i≤m)行第 ≤j≤n)列的数据称为矩阵元素 行第j(1≤ ≤ 列的数据称为矩阵元素 ≤ ≤ 行第 的矩阵,即为只含一个数的矩阵。 2)标量 :1×1的矩阵,即为只含一个数的矩阵。 向量: 的矩阵, 3 ) 向量 : 1×n 或 n×1 的矩阵 , 即只有一行的或者一列 的矩阵。只有一行的矩阵称为行向量, 的矩阵。只有一行的矩阵称为行向量,只有一列的矩 阵称为列向量。 数表中第i(1≤i≤n)个数据称为 向量 元 个数据称为向量 阵称为列向量 。 数表中第 个数据称为 向量元 素。 数组:矩阵的延伸,一般指多维数组,其中标量、 4)数组:矩阵的延伸,一般指多维数组,其中标量、 向量和矩阵都是数组的特例。 向量和矩阵都是数组的特例。
当参与比较的量是两个同型的矩阵时, 当参与比较的量是两个同型的矩阵时,比较 是对两矩阵相同位置的元素按标量关系运算规则 逐个进行,并给出元素比较结果。 逐个进行,并给出元素比较结果。最终的关系运 算的结果是一个与原矩阵同型的矩阵, 算的结果是一个与原矩阵同型的矩阵,它的元素 由0或1组成。 组成。 当参与比较的一个是标量,而另一个是矩阵时, 当参与比较的一个是标量,而另一个是矩阵时, 则把标量与矩阵的每一个元素按标量关系运算规则 逐个比较,并给出元素比较结果。 逐个比较,并给出元素比较结果。最终的关系运算 的结果是一个与原矩阵同型的矩阵,它的元素由 的结果是一个与原矩阵同型的矩阵,它的元素由0 组成。 或1组成。 组成
相关文档
最新文档