MATLAB语言基础

MATLAB语言基础全面介绍

MATLAB语言基础

本套笔记于学习《MATLAB语言基础》课程所载(中国大学MOOC平台)
MATLAB语言基础
笔记内容包括常用的MATLAB图形和脚本的编写,其中若有相关错误也请各位指出。内容较多,可以根据目录跳转。本笔记最后更改时间:2023年5月8日。

第一章 MATLAB概述

一、MATLAB的发展

  1. 美国Mathworks公司于1984年正式推出,随后逐次升级。目前通常每年更新两次,例如2021a,2021b。用于数值计算和图形处理的系统环境
  2. MATLAB(MATrix LABoratory)(矩阵实验室)是一种以矩阵运算为基础的交互式程序语言。
  3. 只有一种数据类型,一种标准的输入输出语句,不需编译。

二、MATLAB的优点

除具备卓越的数值计算能力外,还提供专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能。每个变量代表一个矩阵;每个元素都看作复数;所有运算都对矩阵和复数有效;指令表达式与数学、工程中常用的形式非常相似

  1. 友好的工作平台和编辑环境:许多工具采用图形用户界面,包括MATLAB桌面和一些窗口,例如命令窗口、编辑器和调试器等;程序不必经过编译就可以直接运行,能及时报告出现的错误并分析错误的原因。
  2. 简单易用的程序语言:MATLAB是一种高级的矩阵/阵列语言。语法特征更符合科技人员对数学表达式的书写格式,非常适合非计算机专业的人员使用。
  3. 强大的数学计算和数据处理能力:包含600多种数学运算函数,可以方便地实现用户所需的各种计算功能。例如矩阵、特征向量、傅里叶变换、线性方程求解、微分方程求解、复数、三角函数、多维数组运算等。矩阵的行数、列数无需事先定义。
  4. 强大而简易的绘图功能:能根据输入数据自动确定坐标绘图;能规定多种坐标系;能绘制三维坐标中的曲线和曲面;可设置不同的颜色、线型和视角等。
  5. 功能丰富,可扩展性强:有丰富的内部函数和工具箱。工具箱包括信号处理、图像处理、控制系统、神经元网络、小波分析、金融等,几乎涉及各个方面。

三、MATLAB的工作环境

  1. 命令窗(Command Window)
    是对MATLAB进行操作的主要载体。默认情况下,启动MATLAB时就打开命令窗。MATLAB的所有函数和命令都可以在命令窗执行。
    程序的运行结果(除图形外)都显示在命令窗。
  2. 图形窗(Figure Window)
    显示图形的窗口。执行绘图命令后自动弹出。
  3. 文本编辑窗(File Editor)
    编写和修改文件程序的窗口。

四、帮助系统

命令窗口的帮助系统。

  1. help:查找所有命令或函数的使用方法。
    help+函数名
  2. lookfor:在不知道某命令或函数的确切名称时查找其功能。
    lookfor+关键字

第二章 矩阵及其运算

第一节 MATLAB变量

  1. MATLAB的特殊常量
    特殊常量是一些预先定义好的数值变量

    含义 符号
    圆周率π pi
    虚数单位 i或j
    无穷大∞ inf
    非数 NaN
    默认结果存储变量(临时变量) ans
  2. 变量的命名规则
    所有的变量都表示一个矩阵或一个向量
    (1)变量名由大、小写的英文字母、数字和下划线等组成,但首位必须是英文字母(此处与其他语言如C语言有些区别,C语言的变量首字母可以是下划线_和字母,而MATLAB则只能是字母);
    (2)变量名区分大小写;
    (3)变量名不能是MATLAB的命令、函数、M文件名,以免引起逻辑运行错误;
    (4)变量名的长度不能过长。

  3. 变量的定义与赋值
    变量不需要先定义后使用,MATLAB会自动根据实际赋值的类型对变量类型进行定义
    (1)赋值语句的一般形式:
    变量 = 数/字符/表达式

a=1
x='s'
y=(1+2+3)/5*4

注意:单引号必须在英文状态下输入;数值变量的类型自动定义为双精度变量。

  1. 变量的显示
    (1)显示格式:MATLAB中的数据存储和计算都是以双精度进行,但可以用format命令改变数据的显示格式。
    (2)变量的显示命令:直接在命令行输入变量名再回车即可。用disp函数可以紧凑型格式显示结果而不输出变量名。
    例:
A = magic(3)
disp('这是一个3行3列的魔方矩阵')
disp(A)
  1. 变量的存取
    可以通过多种方式实现一个或多个变量的选择性存取
    (1)命令:
    save实现从内存到硬盘的存储;
    load实现从硬盘到内存的载入。
    ①格式1:
load 文件名 变量名
save 文件名 变量名

②格式2:

S = load('文件名','格式','变量名')
S = save('文件名','格式','变量名')

③快捷方式:利用工作空间窗口

  1. 变量的清除
    clear命令可以删除一个、多个或所有变量。
  • 格式:
clear 变量名
clear 变量1 变量2 ···
clear all

注意: clear是从内存中删除变量,delete是从硬盘上删除数据文件

  1. 变量的检查
    检查工作空间中的变量及其阶数
    ① who:显示前面用过的变量
    ② whos:显示前面用过的变量及其详细特征
    注意:MATLAB中所有的命令和函数都用小写字母表示。

第二节 一维数组的创建与元素提取

  1. 一维数组(向量)的创建

(1)直接输入法
从键盘直接键入元素;

  • 列与列之间的数据用逗号或空格分隔;
  • 行与行之间的数据用分号分隔。
a=[1;2;3] %生成列向量
b=[1,2,3] %生成行向量
c=[1 2 3] %生成行向量

说明:

  • 行中写多条语句时,逗号和分号可以作为语句间的分隔符。
  • 用分号,则命令窗不显示运行结果。

(2)冒号生成法
用于产生递增或递减的等差数列
格式:初值:[步长]:终值
说明:当步长缺省时,默认值为1。
示例:

a=1:2:6
b=1:6

(3)定数线性采样法
用于产生起止于两点之间的n个数据点。
格式:x=linspace(a,b,[n])
说明:当n缺省时,默认值为100
示例:

b=linspace(1,6,6) % 等同于b=1:6

(4)拼接法

  • 利用已有的一维数组创建新的一维数组。
  • 将两个行向量或列向量拼接为一个行向量或列向量,也可以利用冒号抽取其中的部分数据生成新的一维数组。
    ①行向量拼接:用方括号和逗号
    示例:a3=[a1,a2]
    ②列向量拼接:用方括号和分号
    示例:b3=[b1;b2]
    ③向量的抽取:用冒号
    示例:a4=a3(1:2:end) % 抽取a3中奇数位置的数组成新的数组

实例演示
创建两个不同的一维行向量和列向量,并利用这两个向量拼接成一个新的行向量和列向量,然后再由新向量中的奇数位置元素组成新的向量。

x1= 1:3
x2= linspace(5,20,4)
x= [x1,x2]
y1=[1:3]'
y2= linspace(5,20,4)'
y= [y1;y2]
x3= x(1:2:end)
y3= y(1:2:end)
  1. 一维数组中元素的提取
    利用圆括号和索引号。
    例:
A=[1 2 3 4 5]
a3=A(3)
%提取出数组A中第三个数记为a3

第三节 二维数组的创建与元素提取

  1. 二维数组(矩阵)的创建

(1)直接输入法
规则:
①矩阵元素必须在方括号内;
②同行元素之间用空格或逗号隔开;
③行与行之间用分号或回车符隔开;
④元素可以是数值、变量、表达式或函数;
⑤矩阵的维数不必预先定义。
示例:

a1=[1 2 3;4 5 6;7 8 9]
a2=[1,2,3;4,5,6;7,8,9]
a3=[1 2 3;
    4 5 6;
    7 8 9]

(2)利用MATLAB中的特殊矩阵函数构建新矩阵

含义 函数
全1矩阵 ones()
全0矩阵 zeros()
(0,1)区间均匀分布的随机矩阵 rand()
单位矩阵 eye()
均值为0、方差为1的标准正态随机分布矩阵 randn()
  1. 二维数组中元素的提取</
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

扶光°

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值