MATLAB使用速成 第一章(MATLAB入门)

一、MATLAB的命令窗口

1、窗口概览

2、一些基本使用

(1)在输入一条命令(或者说表达式)并按下回车后,窗口往往会输出操作结果(这不是必然的,有些命令,比如clc,它并不会输出任何结果),如果不希望在屏幕上输出结果,可以在语句的最后加上分号。

(2)如果语句很长,需要换行输入,可以用续行符“...”(三个点)续行,其前面留一个空格。

(3)如果屏幕上的内容太多,可以使用clc命令清屏,这并不会有什么其它影响,也就是不会清除历史命令窗口(记录所有运行过的命令)中的数据,已定义的变量仍然可以使用。

二、MATLAB变量的定义

1、MATLAB变量的命名规则

(1)变量名称以字母开头。

(2)除第一个字符外,后面可以跟字母、数字和下划线。

(3)变量名中的字母区分大小写。

2、MATLAB语句的通常形式

(1)表达式是用运算符将有关运算量连接起来的式子,其结果被赋给赋值号“=”左边的变量。

(2)通式:<变量> = <表达式>。

(3)举例:

3、变量的查看

(1)who命令:显示工作空间中的所有变量。

(2)whos命令:显示变量的详细属性,其中Name是变量名,Value是变量的值,Size是变量的大小,Bytes是变量所占字节数量,Class是变量类型(MATLAB中的数默认是双精度实数double型,表示方法与C语言相同)。

4、清除已定义的变量

(1)clear命令(无操作数):清除工作空间中的所有变量。

(2)clear命令(有操作数):清除工作空间中指定的变量。

5、系统预定义变量

(1)系统预定义的变量:

变量名

pi

圆周率

inf,Inf

无穷大

nan,Nan

Not-a-Number,一个不定值

eps

浮点运算相对精度(或者说相对误差)

i,j

虚部单位

(2)注意事项:

①应尽量避免给系统预定义变量重新赋值。

②ans是一个特殊变量,可看作一个暂时存放计算结果的容器,当没有使用其它变量来存放计算结果的时候,MATLAB就会把结果存放到ans这个变量中。

③保留的关键字不允许作为变量名。

④MATLAB允许重新指定内置函数名作为变量名,如sin,但这样做显然很危险,用户可以使用命令which检查一个变量是否为MATLAB的内置函数。

6、变量的存储与读取

(1)存储当前工作空间中的变量:

①save:将所有变量保存到文件matlab.mat。

②save mydata:将所有变量保存到文件mydata.mat。

③save mydata.mat:将所有变量保存到文件 mydata.mat。

(2)存储指定的变量:

save <文件名> <变量名列表(各变量之间用空格分隔)>

(3)将数据文件中的变量载入当前工作空间:

①load mydata:读取数据文件mydata.mat中的所有变量。

②load mydata <变量名>:从数据文件mydata.mat中提取指定变量。

三、MATLAB数值运算与矩阵

1、基本运算符与表达式

(1)数学运算符:

运算符

运算操作

+

加法

-

减法

*

乘法

/和\

除法(左除和右除)

^

幂运算

        注:用户可以在加号和减号的前后加入空格,以使表达式的可读性更强,但不能在乘号和除号的前后加入空格。

(2)命令分隔符:一行可以写多个语句,语句间用逗号或分号隔开(分号前的一个表达式不会输出结果)。

2、矩阵

(1)矩阵的定义(直接输入法):

①矩阵用方括号“[ ]”括起。

②矩阵同一行中的元素之间用空格或逗号分隔(复数作为矩阵元素输入时,加号两边不能有空格,比如“3+4i”)。

③矩阵行与行之间用分号分开。

④直接输入法中,分号可以用回车代替。

(2)矩阵元素可以是任何数值表达式。

(3)大矩阵可以把小矩阵作为其元素。

(4)矩阵元素的引用:

①单个元素的引用:

[1]x(i):向量x中的第i个元素。

[2]A( i,j ):矩阵A中的第i行、第j列元素。

②多个元素的引用:

[1]x(i:j):向量x中的第i 到第j个元素。

[2]x(i:end):向量x中的第i个到最后一个元素。

[3]A(i:j,m:n):由第i至j行和第m至n列组成的子矩阵。

[4]A(i:end,m:n):第i行到最后一行、第m列至第n列(A的子矩阵)。

[5]A(i:j,m:end):第m列到最后一列、第i行至第j行(A的子矩阵)。

[6]可利用冒号提取矩阵的整行或整列。

A(:,k)

矩阵的第 k 列

A(i,:)

矩阵的第 i 行

A(i:j,:)

矩阵的第 i 行到第 j 行

A(:,m:n)

矩阵的第 m 行到第 n 列

A(:,:)

整个矩阵

x(:)

取向量的所有元素,并按列向量方式输出

A(:)

将矩阵的所有元素按列排成一个列向量

[7]A(I,J)(其中I=i_{1},i_{2},\cdots ,i_{m}J=j_{1},j_{2},\cdots ,j_{m}):由A的第i_{1},i_{2},\cdots ,i_{m}行和第j_{1},j_{2},\cdots ,j_{m}列组成的子矩阵。

(5)矩阵元素的赋值:

①对于矩阵元素的单独赋值,如果给不存在的元素赋值,MATLAB会自动扩展矩阵,并将未赋值的部分置零。

②对于矩阵的多个元素赋值,如果给引用的元素赋值为空矩阵,执行的操作是将它们删除(如果不是空矩阵,则起到一个修改矩阵的作用)。

(6)产生等差与等比数列:

①在MATLAB中,冒号有特殊用法,对于“a : b : c”,它等价于一个由等差序列组成的向量,a是首项,b是公差,c确定最后一项(若b = 1,则b和其前面的冒号可以省略)。

②linspace命令:参数中给出等差数列的初始元素、最终元素和步数,即可生成由等差序列组成的向量。

③logspace命令:参数中给出等比数列的初始元素、最终元素和步数(初始元素、最终元素以10的指数形式表示,也就是它们作为10的指数,经过指数运算后得到的才是真正的元素值),即可生成由等比序列组成的向量。

(7)矩阵的运算:

①矩阵与矩阵之间的运算:

[1]矩阵与矩阵之间的加减法:矩阵的对应分量进行运算。(参与加减运算的矩阵需要具有相同的维数)

[2]矩阵的普通乘法:运算规则与线性代数中的矩阵相乘一致。(参与运算的矩阵须满足线性代数中矩阵相乘的原则)

[3]矩阵的除法:

#1 矩阵的除法也分为左除(/)和右除(\)。

#2 若A可逆方阵,则B/A可视为A的逆右乘B(即B*inv(A)),A\B可视为A的逆左乘B(即inv(A)*B)。

#3 若X=B/A,则有X*A=B;若X=A\B,则有A*X=B。

#4 当A和B行数相等时可进行左除,当A和B列数相等时可进行右除。

[4]矩阵的乘方:A^p表示A的p次幂,即p个A相乘。(A需要是一个n阶方阵)

[5]矩阵的数组运算:数组运算即矩阵的对应元素进行运算,其中包括点乘、点除(左除和右除)、点幂三种运算,相应的四个数组运算符为“.*”、“./”、“.\”、“.^”(点与算术运算符之间不能有空格)。(参与运算的对象必须具有相同的形状)

②矩阵与标量之间的运算:

[1]矩阵与标量之间的加减法:矩阵的每个分量都与标量进行加/减运算。

[2]矩阵的数乘(矩阵与标量之间的乘法):矩阵的每个分量都与标量进行乘法运算。

[3]矩阵与标量之间的除法:矩阵的每个分量都与标量进行除法运算。

③矩阵自身的改变:

[1]矩阵转置:矩阵转置分为普通转置(简称转置)与共轭转置,其中普通转置的运算符为“’”,共轭转置的运算符为“.’”(点与单引号之间不能有空格);与普通转置不同的是,进行共轭转置时矩阵元素会取共轭,而普通转置仅进行行列位置的互换。

[2]矩阵的旋转:

#1 fliplr(A):对A进行左右翻转。

#2 flipud(A):对A进行上下翻转。

#3 rot90(A,k):对A进行逆时针旋转k×90度,如省略参数k则进行逆时针旋转90度的操作,如参数k为负数则代表进行的是顺时针旋转。

[3]矩阵形状的改变:reshape(A,m,n),将矩阵A的元素按列方向进行重新排列成一个m×n的新矩阵,新矩阵的元素个数必须与原矩阵元素个数相等。

四、MATLAB的输出格式

        MATLAB中数的输出格式可以通过format命令指定,下面列出其中几种格式的指定方法。(format只指定变量的输出格式,但不会改变变量的值)

格式

解释

format

短格式(缺省显示格式),同short

3.1416

format short

短格式(缺省显示格式),只显示5位

3.1416

format long

长格式,双精度数15位,单精度数7位

3.14159265358979

format short e

短格式e方式(科学计数格式)

3.1416e+000

format long e

长格式e方式(科学计数格式)

3.141592653589793e+000

format short g

短格式g方式

3.1416

format long g

长格式g方式

3.14159265358979

format rat

分数形式

355/113

  • 20
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Zevalin爱灰灰

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

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

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

打赏作者

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

抵扣说明:

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

余额充值