Matlab复习记录:基础知识

初识Matlab

Matlab的优势

  • 不需要过多了解计算方法的具体细节和计算公式,也不需要繁琐的底层编程
  • 可以专注具体问题的分析和设计,大大提高工作效率和质量,为科学研究与工程应用提供重要手段
    Matlab语言的主要功能
  • 数值计算
  • 符号计算
  • 图形绘制
  • 程序流程控制
  • 工具箱

Matlab系统环境

Matlab操作界面的组成

  • Matlab主窗口
    1. 功能区
    2. 快速访问工作栏
    3. 当前文件夹工具栏
  • 命令行窗口
    输入命令并显示命令的执行结果
  • 当前文件夹窗口
    在文件夹窗口中选择某文件夹或使用cd命令设置当前文件夹
  • 工作区窗口

Matlab的搜素路径

变量—内部函数—程序文件(当前文件夹下的程序文件—文件搜索路径文件夹中的程序文件)

Matlab数值数据

数值类型数据的分类

  • 整型:
    无符号整数:无符号8位整数、无符号16位整数、无符号32位整数、无符号64位整数
    带符号整数:带符号8位整数、带符号16位整数、带符号32位整数、带符号64位整数
  • 浮点型
    single函数:将其他类型的数据转换为单精度型
    double函数:将其他类型的数据转换为双精度型
  • 复型
    复型数据包括实部和虚部两个部分,实部和虚部默认为双精度型,虚部单位用i或j来表示
    real函数:求复数的实部
    imag函数:求复数的虚部

数值数据的输出格式

format命令格式:format 格式符

常用数学函数

  • abs函数
    求实数的绝对值、复数的模、字符串的ASCII码值
  • 取整函数fix、floor、ceil、round
    round函数是按照四舍五入的规则来取整
    ceil是向上取整,取大于等于这个数的第一个整数
    floor是向下取整,取小于等于这个数的第一个整数
    fix是固定取靠近0的那个整数,也就是舍去小数取整

变量及其操作

变量与赋值语句

  • 变量:字母、数字和下划线的字符序列
  • 变量名区分大小写
  • 标准函数名以及命令名一般用小写字母

预定义变量

预定义变量是在Matlab工作空间中驻留,由系统本身定义的变量

变量的管理

  • 内存变量的删除修改
  • who命令与whos命令
  • 内存变量文件
    用于保存Matlab工作区变量的文件叫做内存变量文件,其扩展名为.mat,也叫做MAT文件
  • save命令:创建内存变量文件
  • load命令:装入内存变量文件

Matlb矩阵的表示

矩阵的建立

  • 直接输入建立矩阵,将矩阵中的元素用中括号括起来,按矩阵行的顺序输入各元素,同一行的各元素之间用逗号或空格分隔,不同行的元素之间用分号分隔
  • 利用已建立好的矩阵建立更大的矩阵
  • 可以用实部矩阵和虚部矩阵构成复数矩阵

冒号表达式

格式:e1:e2:e3(初始值:步长:终值)

结构矩阵和单元矩阵

  • 由结构数据构成的矩阵就是结构矩阵,结构矩阵里每个元素就是结构数据类型

矩阵元素的引用

矩阵元素的引用方式

  • 通过下标来引用矩阵的元素
  • 通过序号来引用
    • 在Matlab中,矩阵元素按列存储
  • sub2ind(S,I,J)函数:将矩阵中指定元素的行、列下标转换成存储的序号
    • S为行数和列数组成的向量,I为转换矩阵的行下标,J为转换矩阵的列下标
  • ind2sub函数:把矩阵元素的序号转换成对应的下标,[I,J]=ind2sub(S,D)

利用冒号表达式获得子矩阵

  • 子矩阵是由矩阵中一部分元素构成的矩阵
    • A(i,:) 第i行的全部元素
    • A(:,j) 第j列的全部元素
    • A(i:i+m,k:k+m) 第i-i+m行内且在第k-k+m列中的所有元素
    • A(i:i+m,:) 第i-i+m行的全部元素

利用空矩阵删除矩阵中的元素

  • 空矩阵是指没有任何元素的矩阵

改变矩阵的形状

  • reshape(A,m,n): 在矩阵总元素保持不变的前提下,将矩阵A重排成m×n的二维矩阵

Matlab基本运算

算术运算

  • Matlab的算术运算是在矩阵意义下成立的
  • 单个数据的算术运算只是矩阵运算的一种特例

加减运算

  • 若两矩阵同型,运算时两矩阵的相应元素相加减
  • 若两矩阵不同型,则Matlab将给出错误信息
  • 一个标量也可以和矩阵进行加减运算,这时把标量和矩阵每一个元素进行加减运算

乘法运算

  • 矩阵A和B进行乘法运算,要求A的列数与B的行数相等,此时则称A、B矩阵是可乘的,或称A和B两矩阵维数和大小相容

除法运算

  • 在Matlab中,有两种矩阵除法:右除/和左除\
    • 如果A矩阵是非奇异方程,则B/A等效为B*inv(A),A\B等效于inv(A)*B

乘方运算

  • 一个矩阵的乘方运算可以表示为A^x, 要求A为方阵,x为标量

点运算

  • 点运算符:.*、 ./、.\和.^
  • 两矩阵进行点运算是指它们的对应元素进行相关运算,要求两矩阵同型

关系运算

  • 关系运算符:<小于、<=小于等于、>大于、>=大于等于、==等于、~=不等于
  • 当两个比较量是标量时关系成立,表达式结果为1,否则为0
  • 当参与比较的量是两个同型的矩阵时,比较是对两矩阵相同位置的元素按标量关系运算规律逐个进行,最终的运算结果是一个与原矩阵同型的矩阵,它的元素由0或1组成

逻辑运算

逻辑运算符:&与、|或、~非

  • 若参与逻辑运算的是两个同型矩阵,那么将对矩阵相同位置上的元素按标量规则逐个进行运算,最终运算结果是一个与原矩阵同型的矩阵,其元素由1或0组成
  • 若参与逻辑运算的一个是标量,一个是矩阵,那么将在标量与矩阵中的每个元素之间按标量规则逐个进行运算,最终运算结果是一个与矩阵同型的矩阵,其元素由1或0组成

字符串处理

字符串的表示

  • 在Matlab中,字符串是用单引号括起来的字符序列
  • 若字符串中的字符含有单引号,则该单引号字符要用两个单引号来表示

字符串的操作

  • 字符串的执行
    eval(s)
  • 字符串与数值之间的转换
    • abs和double函数都可以用来获取字符串矩阵所对应的ASCII码数值矩阵
    • char函数可以把ASCII码矩阵转换为字符串矩阵
  • 字符串的比较
    • 关系运算符比较:两个字符串里的每个字符依次按照ASCII值大小逐个进行比较,比较的结果是一个数值向量,向量中的元素为1或0
    • 字符串比较函数
      • strcmp(s1,s2)::用来比较两字符串是否相等
      • strncmp(s1,s2,n):用来比较两个字符串前n个字符是否相等
      • strcmpi(s1,s2):在忽略字母大小写前提下,比较字符串s1和s2是否相等
      • strncpmi(s1,s2):在忽略字母大小写前提下,用来比较两个字符串前n个字符是否相等
  • 字符串的查找与替换
    findstr(s1,s2):返回短字符串在长字符串中的开始位置
    strrep(s1,s2,s3):将字符串s1中的所有子字符串s2替换为字符串s3
    Matlab基础知识

猜你喜欢

转载自blog.csdn.net/m0_49564079/article/details/114687470
今日推荐