MATLAB 基础笔记 记录(一)

一、矩阵和数组
1.1矩阵的输入
在MATLAB中的矩阵应遵循以下基本常规:
(1)矩阵元素应用方括号([ ])括住;
(2)每行内的元素间用逗号或者空格隔开;
(3)行与行之间分号或者回车键隔开;
(4)元素可以是数值或者表达式。
1、通过显式元素列表输入矩阵——适用于比较小的简单矩阵

例,输入矩阵c:

c=[1 2;3 4;5 3*2]
c=
1 2
3 4
5 6

也可以输入:

c=[1,2;3,4;5,6];

2.通过语句等生成矩阵
通过语句等生成矩阵有以下几种。
(1)使用 from:step:to 方式生成行向量。如果是线性等间距格式的向量,可以使用“from:step:to”方式生成。

语法:

from:to
from:step:to

说明:from、step和to分别表示开始值、步长和结束值。当step省略时则默认为step=1;
当step省略或step>0而from>to时为空矩阵,当step<0而from<to时也为空矩阵。

例:使用“from:step:to”方式生成以下矩阵。

x1=2:5
x1=
2 3 4 5

x2=2:0.5:4
x2=
2.0000 2.5000 3.0000 3.5000 4.0000

x3=2: -1 :3
x3=
Empty matrix:1-by-0 %空矩阵

x4=[1:2:5;1:3:7] %两行向量构成矩阵
x6=
1 3 5
1 4 7

(2)使用linspace和logspace函数生成向量。
1…linspace用来生成线性等分向量,与from:step:to方式不同的是它直接给出元素的个数从而得出各个元素的值。
语法:

linspace(a,b,n)

说明:a,b,n 3个参数分别表示开始值、结束值和元素个数。生成从a到b之间线性分布的n个元素的行向量,n如果省略则默认值为100.
2.logspace用来生成对数等分向量,它和linspace一样直接给出元素的个数而得出各个元素的值。
语法:

logspace(a,b,n)

说明:a,b,n 3个参数分别表示开始值、结束值和数据个数。

例:用linspace和logspace函数生成行向量。

x1=linspace(0,2pi,5) %从0到2pi等分成5个点
x1=
0 1.5708 3.1416 4.7124 6.2832

x2=logspace(0,2,3) %从1~100对数等分成3个点
x2=
1 10 100

3、由矩阵生成函数产生特殊矩阵
zeros(m,n) : 产生m*.n的全0矩阵 ;
ones(m,n):产生m*.n的全1矩阵;
rand(m,n):产生均匀分布的随机矩阵,元素取值范围在0.0~10;
randn(m,n):产生正态分布的随机矩阵;
magic(N):产生N阶魔方矩阵(矩阵的行、列和对角线上元素的和相等);
eye(m,n):产生m*n的单位矩阵。
例:

x1=eye(2,3)
x1=
1 0 0
0 1 0
x2=eye(3,2)
x2=
1 0
0 1
0 0

1.2矩阵元素
矩阵和多维数组都是由多个元素组成的,每个元素通过下标来标识。
(1)矩阵的下标
1.全下标方式。
“A(2,3)=6”表示在矩阵A的“第3行第2列”的元素赋值为6.
PS:如果在提取矩阵元素时,矩阵元素的下标或列(i,j)大于矩阵的大小(m,n),则MATLAB会提示出错;而在给矩阵元素赋值时,如果行或列(i,j)超出矩阵的大小(m,n),则MATLAB自动扩充矩阵,扩充部分以0填充。
2.单下标方式
就是先把矩阵的所有列按先左后右的次序连接成“一维长列”,然后对元素位置进行编号。以mn的矩阵A为例,若元素A(i,j)则对应的“单下标"为s=(j-1).*i。
(2)子矩阵块的产生
MATLAB利用矩阵下标可以产生子矩阵。对于a(i,j),如果i和j是向量而不是标量,则将获得指定矩阵的子矩阵块。子矩阵块是从对应矩阵中取出一部分元素构成的。
1.用全下标方式
1-1 a([1 3],[2 3]):取行数为1、3,列数为2、3的元素构成子矩阵。
1-2 a(1:3,2:3):取行数为1~3,列数为2—3的元素构成子矩阵,“1:3”表示1、2、3行下标。
1-3 a(:,3):取所有行数,列数为3的元素构成子矩阵,“:”表示所有行或列。
1-4 a(1:3,end):取行数为1~3,列数为3的元素构成子矩阵,用“end"表示某一维数中的最大值。
2.用单下标方式
a([1 3;2 6]):取单下标为1、3、2、6的元素构成子矩阵。
3.逻辑矩阵
子矩阵也可以利用逻辑矩阵来标识,逻辑矩阵是大小和对应矩阵相同,而元素值为0或者1的矩阵。可以用a(11,12)来表示子矩阵,其中11、12为逻辑向量,当11、12的元素为0则不取该位置元素,反之则取该位置的元素。
(3)矩阵的赋值
1.全下标方式
2.单下标方式
3.全元素方式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值