当前位置: 首页 > news >正文

MATLAB期末复习笔记(上)

一、初识MATLAB

1.特点

MATLAB语言主要有以下几个特点:

语法规则简单。尤其内定的编程规则,与其他编程语言(如C、Fortran等)相比更接近于常规数学表示。对于数组变量的使用,不需类型声明,无需事先申请内存空间。

MATLAB基本的语言环境提供了数以千计的计算函数极大的提高了用户的编程效率。函数库、工具箱和App使得Matlab功能异常强大。

MATLAB是一种脚本式(scripted)的解释型语言无论是命令、函数或变量,只要在命令窗口的提示符下键入,并“回车(Enter)”,MATLAB都予以解释执行。 

平台无关性(可移植性)。MATLAB软件可以运行在很多不同的计算机系统平台上,如Windows Me/NT/2000/XP、很多不同版本的UNIX以及Linux。无论你在哪一个平台上编写的程序都可以运行在其它平台上,对于MATLAB数据文件也一样,是平台无关的。极大保护了用户的劳动、方便了用户。其绘图功能也是平台无关的。无论任何系统平台,只要MATLAB能够运行,其图形功能命令就能正常运行。 

2.Matlab的三层理解

极简的解释型编程语言;

 功能强大的工程计算和工程仿 真软件;

 原型工程系统的开发环境

3.通用窗口

命令窗口
历史命令窗口
当前工作目录窗口
工作空间浏览器窗口
变量编辑窗口
M 文件编辑/调试窗口

4.变量的命名规则

变量名由数字、字母、下划线组成,开头必须是字母

5.运算符

 eps:是浮点相对误差限,是指计算机用于区分两个数的差的最小常数,具体大小和计算机有关,理解为机器最小数,通常在做除法时,分母加上eps,防止分母为0,不能运算

NaN:如果运算有未定义的数值结果,如 0/0 或 0*Inf,则运算返回 NaN

intmax/intmin:使用方法:intmax("uint8")   --> ans = 255 intmax("uint8")    --> ans = 0

tic/toc:用来给程序计时,tic表开始计时,toc表结束计时

realmax:最大的实数

xor:表异或,xor(a,b)当a,b均为1或均为0时返回0,否则返回1

 6.通用命令

常用命令

 常用的窗口帮助命令

7.Matlab的文件格式

8.设置搜索路径的常用命令

 9.练习

 二、数组运算及数组化编程

1.数组和矩阵的概念

2.矩阵的创建、索引和赋值 

(1)直接创建

 (2)使用(:)操纵符和linspace(), logspace()等函数创建

logspace 函数 生成一个由在 10^a 和 10^b(10 的 N 次幂)之间的 50 (n默认为50)个对数间距点组成的行向量 y ,即是等比数列

linspace是等差数列

 (3)使用matlab的特殊矩阵函数创建数组

round是四舍五入

floor是向负无穷取整

ceil是向正无穷取整

fix是向0取整 

idivide(A,B)函数 将 A 的每个元素除以 B 的对应元素,朝零方向舍入到最接近的整数。

magic魔方阵的意思是矩阵元素是由整数1到n^2组成的,并且任何行任何列的和都相等 

hilb是指元素H(i,j) = 1/(i+j-1),i和j表示矩阵的行号和列号 

(4)索引

sub2ind - 将下标由全下标转换为单下标

ind2sub - 将下标由单下标转换为全下标

注意: 

 

 

 (5)矩阵的拼接

(6)利用数组编辑器创建数组 

 (7)利用数据文件创建数组

 3.多维数组和空数组

(1)多维数组

(2)空数组

空数组并非全0数组 

(3)数组维数的减小

4.矩阵的基本运算

(1)矩阵的除法 

(2)矩阵的幂运算 

(3)矩阵的关系运算

 返回的是逻辑矩阵

(4)练习

reshape - 重构数组
    此 MATLAB 函数 使用大小向量 sz 重构 A 以定义 size(B)。例如,reshape(A,[2,3]) 将
    A 重构为一个 2×3 矩阵。sz 必须至少包含 2 个元素,重构后的数组和原数组相比单下标不变

fliplr - 将数组从左向右翻转
    此 MATLAB 函数 返回 A,围绕垂直轴按左右方向翻转其各列。
 

mod和rem都是取余数

mod 和 rem之间的区别:

除后所得余数的概念的定义不是唯一的,两个函数 mod 和 rem 各计算不同的结果。mod 函数生成一个为零或与除数具有相同符号的结果。rem 函数生成一个为零或与被除数具有相同符号的结果。

另一个差别是当除数为零时的约定。mod 函数遵从 mod(a,0) 返回 a 的约定,而 rem 函数遵从 rem(a,0) 返回 NaN 的约定。

两个结果都有其各自的用途。例如,在进行信号处理时,mod 函数可在周期信号上下文中使用,因为其输出是周期性的(周期等于除数)。

 (5)矩阵的逻辑运算

5.矩阵的函数和程序设计

(1)矩阵的信息获取函数

 isempty判断是否为空数组

isscalar判断是否为标量

isvector判断是否为向量

find找符合条件的线性索引,当输出是两个参数时就是全下标索引

sort按升序对 A 的元素进行排序,C为排序后的矩阵,I是一个数组,表示每个元素在排序后的位置。例如,如果I(1)是5,那么这意味着排序后数组中的第一个元素在原数组中的位置是5。也就是说A(I)=C

(2)矩阵的操纵函数

diff函数详见matlab——diff函数_matlab diff-CSDN博客

 

 6.数组化编程

7.应用举例

(1)二维

(2)三维

 

8.矩阵综合应用:图片的编辑和处理


http://www.mrgr.cn/news/78734.html

相关文章:

  • shell技能树-扩展变量
  • 基于伪分布式模式和完全分布式模式部署ZooKeeper集群
  • 嵌入式岗位面试八股文(篇三 操作系统(下))
  • WebRTC 在视频联网平台中的应用:开启实时通信新篇章
  • 【C语言程序设计——函数】编写子函数求x的n次方(头歌实践教学平台习题)【合集】
  • 并发安全问题解析
  • 网络地址转换
  • 阿里云服务器(centos7.6)部署前后端分离项目(MAC环境)
  • winScp连接Ubantu系统,访问拒绝的解决方式
  • 【超全总结】深度学习分割模型的损失函数类别及应用场景
  • 小米澎湃OS2跟蜂窝网络相关的设置和调试【功能设计】
  • HTTP 探秘之旅:从入门到未来
  • 泛化调用 :在没有接口的情况下进行RPC调用
  • rocketmq windows环境部署
  • LearnOpenGL学习(入门--变换,坐标系统,摄像机)
  • 字符串,栈的算法题
  • 继承错题汇总
  • 鸿蒙Next星河版基础代码
  • 带外配置IP
  • 构造函数与析构函数错题汇总
  • 【查询目录】.NET开源 ORM 框架 SqlSugar 系列
  • linux 文件权限,修改权限,系统调用
  • 二:OpenStack环境准备-controller node
  • scala的守卫语句格式
  • 使用nginx请求转发时前端报跨域问题解决
  • Istio笔记01--快速体验Istio