第2章__MATLAB矩阵及其运算

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

3.利用冒号表达式建立一个向量(增量赋值) .利用冒号表达式建立一个向量(增量赋值) 冒号表达式可以产生一个行向量,标准格式是: 冒号表达式可以产生一个行向量,标准格式是: x=e1:e2:e3 其中e1为初始值 为初始值, 为步长 为步长, 为终止值 为终止值。 其中 为初始值,e2为步长,e3为终止值。
2、矩阵变量的性质 、 矩阵变量的维数可以用size( )函数获得: 函数获得: 矩阵变量的维数可以用 函数获得 例: 矩阵标识符为[ , 矩阵标识符为 ],如 果是1*1矩阵,则可以 矩阵, 果是 矩阵 省略矩阵标识符; 省略矩阵标识符; 矩阵变量的各行之间 用分号隔开, 用分号隔开,列之间 用逗号或空格隔开;
计算表达式的值,并显示计算结果。 例2-1 计算表达式的值,并显示计算结果。 在MATLAB命令窗口输入命令: 命令窗口输入命令: 命令窗口输入命令 x=1+2i; y=3-sqrt(17); z=(cos(abs(x+y))-sin(78*pi/180))/(x+abs(y)) 其中pi和 都是 都是MATLAB预先定义的变量, 预先定义的变量, 其中 和i都是 预先定义的变量 分别代表代表圆周率π和虚数单位。 分别代表代表圆周率 和虚数单位。 和虚数单位 输出结果是: 输出结果是: z= -0.3488 + 0.3286i
2.1.1 变量与赋值语句
在matlab中,变量定义为矩阵是最基本的变量定 中 义之一,因此, 义之一,因此,matlab语言的运算是基于矩阵的 语言的运算是基于矩阵的 运算。 运算。
1.变量命名 .
变量名是以字母开头, 在MATLAB 中,变量名是以字母开头,后接字 母、数字或下划线的字符序列。在MATLAB中, 数字或下划线的字符序列。 中 变量名区分字母的大小写, 变量名区分字母的大小写,且自定义的变量名最 好不要和matlab中的专用变量及函数同名。 中的专用变量及函数同名。 好不要和 中的专用变量及函数同名 A=3; a=3; _q=4; a_1=5; B=[1 2;3 4]
eye:产生单位矩阵 : 格式: 格式: eye(n) eye(m,n) eye(size(B)) rand:产生 ~1间均匀分布的随机矩阵 :产生0~ 间均匀分布的随机矩阵 randn:产生均值为 ,方差为 的标准正态分布随机矩阵 :产生均值为0,方差为1的标准正态分布随机矩阵
分别建立3× 、 × 和与矩阵 和与矩阵A同样大小的 例2-3 分别建立 ×3、3×2和与矩阵 同样大小的 零矩阵。 零矩阵。 (1) 建立一个 ×3零矩阵。 建立一个3× 零矩阵 零矩阵。 zeros(3) (2) 建立一个 ×2零矩阵。 建立一个3× 零矩阵 零矩阵。 zeros(3,2) (3) 设A为2×3矩阵,则可以用 矩阵, 为 × 矩阵 则可以用zeros(size(A))建立 建立 一个与矩阵A同样大小零矩阵 同样大小零矩阵。 一个与矩阵 同样大小零矩阵。 A=[1 2 3;4 5 6]; %产生一个 ×3阶矩阵 产生一个2× 阶矩阵 阶矩阵A 产生一个 zeros(size(A)) %产生一个与矩阵 同样大小的 产生一个与矩阵A同样大小的 产生一个与矩阵 零矩阵
☆ 利用冒号访问 表示取A矩阵的第 列全部元素; ① A(:,j)表示取 矩阵的第 列全部元素; 表示取 矩阵的第j列全部元素 A(i,:)表示 矩阵第 行的全部元素;A(i,j)表 表示A矩阵第 行的全部元素; 表示 矩阵第i行的全部元素 表 示取A矩阵第 矩阵第i行 列的元素。 示取 矩阵第 行、第j列的元素。 列的元素 表示取A矩阵第 ② A(i:i+m,:)表示取 矩阵第 ~i+m行的 表示取 矩阵第i~ 行的 全部元素; 表示取A矩阵第 全部元素;A(:,k:k+m)表示取 矩阵第 ~ 表示取 矩阵第k~ k+m列的全部元素,A(i:i+m,k:k+m)表示取 列的全部元素, 列的全部元素 表示取 A矩阵第 ~i+m行内,并在第 ~k+m列中 矩阵第i~ 行内, 矩阵第 行内 并在第k~ 列中 的所有元素。 的所有元素。
2.矩阵变量赋值语句 . (1) 变量 表达式 变量=表达式 (2) 表达式 表达式由运算符、变量名及其它专用符号组成, 表达式由运算符、变量名及其它专用符号组成, 其结果是一个矩阵,并赋值给等号前的变量, 其结果是一个矩阵,并赋值给等号前的变量,如 果没有变量赋值号,则matlab把表达式的值赋给 果没有变量赋值号, 把表达式的值赋给 一个自动变量ans,如键入1900/81,则屏幕上显示: 则屏幕上显示: 一个自动变量 ,如键入 则屏幕上显示
例:
标准格式中如果省略增量, 标准格式中如果省略增量,则 默认增量为1,即表示为: 默认增量为 ,即表示为:
x=e1:e3
特殊矩阵: 特殊矩阵: 除了采用直接输入方法对变量赋值外, 除了采用直接输入方法对变量赋值外,也可利用 matlab的内部函数对变量赋值,利用这些函数来 的内部函数对变量赋值, 的内部函数对变量赋值 创建和生成特殊矩阵。 创建和生成特殊矩阵。
总结: 总结: 在matlab中,引入矩阵的方式有以下几种: 中 引入矩阵的方式有以下几种: 1、直接从键盘输入; 、直接从键盘输入; 2、通过M文件的方式键入; 、通过 文件的方式键入 文件的方式键入; 3、通过冒号的方式得到矩阵; 、通过冒号的方式得到矩阵; 4、通过matlab中的函数得到一些特殊矩阵; 、通过 中的函数得到一些特殊矩阵; 中的函数得到一些特殊矩阵
3、矩阵元素的访问 、 ☆ 矩阵元素 通过下标引用矩阵的元素, 通过下标引用矩阵的元素,例如 下标引用矩阵的元素 A(3,2)=200 采用矩阵元素的序号来引用矩阵元素。 采用矩阵元素的序号来引用矩阵元素。矩阵元素 的序号就是相应元素在内存中的排列顺序。 的序号就是相应元素在内存中的排列顺序。在 MATLAB中,矩阵元素按列存储,先第一列,再 中 矩阵元素按列存储,先第一列, 第二列,依次类推。 第二列,依次类推。例如 A=[1,2,3;4,5,6]; A(3) ans = 2
2.1.2 常用的数学函数(可以通过help elfun命令 常用的数学函数(可以通过 命令 查看) 查看)
2.1.3 结构变量
中普遍使用了结构变量, 在matlab中普遍使用了结构变量,所谓结构变量 中普遍使用了结构变量 也是矩阵, 也是矩阵,与矩阵不同的是它是通过对字段的名 称来对元素进行索引的,而不是通过数字索引。 称来对元素进行索引的,而不是通过数字索引。 1、结构变量的创建 、 例:要创建一个病人信息的结构矩阵 方法一、 方法一、直接用赋值语句创建 =‘John’; patient.age=50; patient.test=[79 75 73;180 178 177];
例:
B=[1 2;3 4]
输入矩阵时,元素可以为常数,也可以为变量、 输入矩阵时,元素可以为常数,也可以为变量、表达式 或函数。 或函数。 X=[-1.3 sqrt(3) (1+2+3)*4/5]
☆从键盘输入矩阵,应遵循以下规则: 从键盘输ቤተ መጻሕፍቲ ባይዱ矩阵,应遵循以下规则:
1、整个矩阵的值应放在方括号中; 、整个矩阵的值应放在方括号中; 2、同一行中各元素之间以逗号或空格分开; 、同一行中各元素之间以逗号或空格分开; 3、不同行的元素以分号隔开; 、不同行的元素以分号隔开;
1.通用的特殊矩阵 . 常用的产生通用特殊矩阵的函数有: 常用的产生通用特殊矩阵的函数有: zeros:产生全 矩阵 零矩阵 矩阵(零矩阵 :产生全0矩阵 零矩阵) 使用格式: 使用格式: A=zeros(n) A=zeros(m,n) A=zeros(size(B)) 返回一个n*n阶零矩阵; 阶零矩阵; 返回一个 阶零矩阵 返回一个m*n阶零矩阵; 阶零矩阵; 返回一个 阶零矩阵 返回一个大小与B一样的零矩阵; 返回一个大小与 一样的零矩阵; 一样的零矩阵
2.利用M文件建立矩阵 .利用 文件建立矩阵 对于比较大且比较复杂的矩阵, 对于比较大且比较复杂的矩阵,可以为 它专门建立一个M文件 文件。 它专门建立一个 文件。下面通过一个简 单例子来说明如何利用M文件创建矩阵 文件创建矩阵。 单例子来说明如何利用 文件创建矩阵。
利用M文件建立 文件建立MYMAT矩阵。 矩阵。 例 利用 文件建立 矩阵 (1) 启动有关编辑程序或 启动有关编辑程序或MATLAB文本编辑 文本编辑 器,并输入待键矩阵: 并输入待键矩阵: (2) 把输入的内容以纯文本方式存盘 设文 把输入的内容以纯文本方式存盘(设文 件名为m1.m)。 件名为 。 (3) 在MATLAB命令窗口中输入 ,即运 命令窗口中输入m1, 命令窗口中输入 行该M文件 文件, 行该 文件,就会自动建立一个名为 MYMAT的矩阵,可供以后使用。 的矩阵,可供以后使用。 的矩阵
变量和赋值语句说明: 变量和赋值语句说明:
1、表达式中任一符号的前后都可以加空格,也可以不加,不影响运 、表达式中任一符号的前后都可以加空格,也可以不加, 算结果; 算结果; 2、变量明或函数名必须以字符开头; 、变量明或函数名必须以字符开头; 3、matlab对变量或函数名区分大小写,即A和a被认为是不同的变量 、 对变量或函数名区分大小写, 对变量或函数名区分大小写 和 被认为是不同的变量 3、如果表达式过长,在一行中写不下可以用续行符; 、如果表达式过长,在一行中写不下可以用续行符; 4、程序中的语句或键入表达式如果以分号结束,则运算结果只赋 、程序中的语句或键入表达式如果以分号结束, 值,不在屏幕上显示输出。不以分号结束,则运算结果既赋值又在 不在屏幕上显示输出。不以分号结束, 屏幕上输出。如果结果是维数很高的矩阵,这种显示会占用很长时间 屏幕上输出。如果结果是维数很高的矩阵,
结构变量名称
结构域名称
结构域的大小可补充, 结构域的大小可补充,如 patient(2).name=‘An’; patient(2).age=40; patient(2).test=[79 75 73;180 178 177]; patient(3).name=‘Li’; patient(3).age=41; patient(3).test=[79 75 71;18 178 177];
ones:产生全1矩阵 矩阵 :产生全 矩阵 矩阵) 矩阵(1矩阵 格式: 格式: A=ones(n) 返回一个n*n阶1矩阵; 矩阵; 返回一个 阶 矩阵 A=ones(m,n) A=ones(size(B)) 返回一个m*n阶1矩阵; 阶 矩阵 矩阵; 返回一个
返回一个大小与B一样的 矩阵 返回一个大小与 一样的1矩阵; 一样的 矩阵;
第2章 MATLAB矩阵及其数值运算 章 矩阵及其数值运算 2.1 matlab基本语法结构 基本语法结构 2.2 MATLAB矩阵运算 矩阵运算 矩阵 2.3 基本数学函数 2.4 点运算 2.5 逻辑关系运算 2.6 多项式运算 2.7 线性代数方程组 2.8 统计分析
2.1 基本语法结构
matlab语言是基于矩阵的运算工具,因此, 语言是基于矩阵的运算工具,因此, 语言是基于矩阵的运算工具 matlab中数的基本单元是矩阵,这是和其他大多 中数的基本单元是矩阵, 中数的基本单元是矩阵 数软件不同的地方。 数软件不同的地方。在matlab中引入矩阵有多种 中引入矩阵有多种 途径,例如,从键盘输入,通过语句或函数产生, 途径,例如,从键盘输入,通过语句或函数产生, 创建并运行一个M文件产生 文件产生, 创建并运行一个 文件产生,从外部加载一个数 据文件产生。但最简单的方法是用键盘输入产生。 据文件产生。但最简单的方法是用键盘输入产生。
方法二、 方法二、用struct函数创建结构 函数创建结构
格式: 格式:s=struct(‘field1’,’val1’,’field2’,’val2’,….) 其中: 为结构函数名称 为结构函数名称, 为第一域的名称, 其中:s为结构函数名称,’field1’为第一域的名称,val1 为第一域的名称 是第一域的赋值, 是第一域的赋值,以此类推;
相关文档
最新文档