Matlab学习【2】矩阵和数组

Alt
先送上Matlab学习框架~

1、一些常用的常量

① pi——圆周率π——(任何常量和变量都可以修改其数值!!)

② eps——系统的最小数(1+Eps>1)

③ inf——无穷大,最大可用正

④ nan——不定量——最大可用正

2、数组

M语言的数组中的每个元素都必须具有相同的数据类型,也有一维、二维和多维数组的区别。

★Matlab中的特殊数组:
字符数组:s=‘string’; name=[‘str1’ ‘str2’ ‘str3’];
结构数组:根据属性名组织起来的不同类型数据的集合
Sn=struct(‘field1’,{}, ’field2’,{},…)
Sn. field1→结构数组名.域名

结构数组例子
Student=struct(‘name’,{‘liu’,’li’},’age’,{‘18’,’20’});

Student % 显示结果是?
Student =
1x2 struct array with fields:
name
age

Student(1) % 显示结果是?
ans =
name: ‘liu’
age: ‘18’

Student(1).name %显示结果是?
ans = liu

细胞数组
一个变量表达不同类型、不同维数的数据。用{ }定义或cell(m,n) 创建一个m行n列的细胞型变量。
例如: %其中,A为普通数组(矩阵),B为cell数组
Alt
高级应用——
Alt

3、向量(一维数组)

从数学的角度看,向量就是1×N或N×1矩阵,即行向量或列向量。
向量是1索引而非0索引!

如何创建向量?

乱入:编程时注意区分大小写!!

  1. 方法1:逐个输入向量的元素
    Input:
    x = [1 3 pi 3+5i] 或 x = [1, 3, pi, 3+5i]
    Output:
    x =
    1.0000 3.0000 3.1416 3.0000 + 5.0000i

  2. 利用冒号运算符创建向量 【格式: X = J:INC:K】
    J为向量的第一个元素,而K为向量的最后一个元素,INC为向量元素递增的步长。
    Input:
    x = 1:1:10
    Output:
    x =
    1 2 3 4 5 6 7 8 9 10

  3. 使用函数linspace创建向量【创建线性间隔向量的函数】
    x = linspace(x1,x2,n)
    x1:向量的第一个元素;x2:向量的最后一个元素;n为向量的元素个数
    例如:
    Input: x = linspace(1,2,5)
    Output:
    x =
    1.0000 1.2500 1.5000 1.7500 2.0000

  4. 使用函数logspace创建向量【创建对数空间的向量】
    x = logspace(x1,x2,n)
    x1:向量第一个元素值;x2:向量的最后一个元素;n:向量元素个数
    例如:
    Input: x = logspace(1,3,3)
    Output:
    x =
    10 100 1000

  5. 列向量
    A = [1;2;3;4;5;6] ~~输出即为列向量,注意区分括号形状
    举例——使用转置的方法创建列向量
    B = (1:6)’ ~~输出是一个列向量!
    补充一个操作——whos
    Als

  6. 逗号和分号的作用
    逗号和分号可作为指令间的分隔符,Matlab允许多条语句在同一行出现!
    分号分开矩阵的元素、矩阵行。空格/逗号分开数组元素
    另外,当一个指令或矩阵太长时,可用•••续行!

  7. 向量元素的访问
    访问向量A中的元素, A = [1 2 3 4 5 6 7 8 9 0] 。
    第一
    %访问向量A的第3个元素
    A(3)
    输出——————————
    ans =
    3
    第二
    %访问向量A的最后四个元素
    A([end-3:end]) %end表示向量中最后一个元素的序号
    ans =
    7 8 9 0
    第三
    对向量的元素进行赋值——
    A(3) = -3 %对向量的第3个元素进行赋值。
    A =
    1 2 -3 4 5 6 7 8 9 0
    第四
    MATLAB的数据自动扩充和初始化机制:对向量A的第15个元素赋值之前,第11~15个元素不存在,但赋值之后,将自动创建这些元素,并默认为0。例:
    A(15) = -15
    A =
    1 2 -3 4 5 6 7 8 9 0 0 0 0 0 -15

4、矩阵

  1. 直接输入法
    输入:A = [1 2 3;4 5 6;7 8 9]
    输出:
    A =
    1 2 3
    4 5 6
    7 8 9
    使用whos指令来察看当前MATLAB会话保存在工作空间内存中的各种变量
    (接上例)
    输入:whos
    输出:
    Name Size Bytes Class
    A 3x3 72 double array
    Grand total is 9 elements using 72 bytes
  2. 矩阵元素的访问(行列全下标形式)
    A = magic(5) %创建五阶的幻方矩阵,行、列的和皆相等
    A =
    17 24 1 8 15
    23 5 7 14 16
    4 6 13 20 22
    10 12 19 21 3
    11 18 25 2 9
    ——————————————————————
    A(2,4) %使用全下标的形式访问第2行第4列的元素
    ans =
    14
    ★注意——MATLAB矩阵元素的排列以列元素优先,这与C语言的二维数组元素的排列不同(行元素优先)。
  3. 访问矩阵元素的方法
    Alt
  4. 矩阵生成函数
    以下函数用()写出阶数使用——
    Alt
    5.重点:基本矩阵运算
    Alt

5、数学函数

一些例子,其他的要用现查吧!
Alt

发布了9 篇原创文章 · 获赞 6 · 访问量 2108

猜你喜欢

转载自blog.csdn.net/RickieLim/article/details/104238166