矩阵和数组

MATLAB是“矩阵实验室”的缩写。虽然其他编程语言大多数一次使用数字,但MATLAB®主要用于整个矩阵和数组。
所有MATLAB变量都是多维数组,无论数据类型如何。矩阵是通常用于线性代数的二维数组。

阵列创建
要在单个行中创建具有四个元素的数组,请使用逗号(,)或空格分隔元素。

a = [1 2 3 4]

返回
a =

1 2 3 4
这种类型的数组是行向量。
要创建具有多行的矩阵,请使用分号分隔行。

a = [1 2 3; 4 5 6; 7 8 10]

a =

1 2 3
     4 5 6
     7 8 10
创建矩阵的另一种方法是使用一个函数,如ones,zeros或者rand。例如,创建一个5×1列的零向量。

z = zeros(5,1)

z =

0
     0
     0
     0
     0

矩阵和数组运算
MATLAB允许您使用单个算术运算符或函数处理矩阵中的所有值。

a + 10

ans =

11 12 13
    14 15 16
    17 18 20

sin(a)

ans =

0.8415 0.9093 0.1411
   -0.7568 -0.9589 -0.2794
    0.6570 0.9894 -0.5440
要转置矩阵,请使用单引号('):

a'

ans =

1 4 7
     2 5 8
     3 6 10
您可以使用*运算符执行标准矩阵乘法,该乘法运算行和列之间的内积。例如,确认矩阵乘以其逆返回单位矩阵:

p = a * inv(a)

p =

1.0000  0           -0.0000
         0     1.0000   0
         0     0            1.0000
请注意,p不是整数值的矩阵。 MATLAB将数字存储为浮点值,算术运算对实际值与浮点数表示之间的小差异敏感。您可以使用format命令显示更多的十进制数字:

format long
p = a*inv(a)

p =

1.000000000000000             0                                                 -0.000000000000000
                   0                            1.000000000000000                   0
                   0                            0                                                  0.999999999999998
将显示重新设置为较短的格式

format short

格式仅影响数字的显示,而不是MATLAB计算或保存的方式。
要执行元素乘法而不是矩阵乘法,请使用.*运算符:

p = a.*a

p =

1 4 9
    16 25 36
    49 64 100
用于乘法,除法和幂的矩阵运算符都具有以元素方式操作的相应的数组运算符。例如,将a的每个元素提升到第三个幂:

a.^3

ans =

1 8 27
          64 125 216
         343 512 1000

级联
级联是连接数组以制作较大的数组的过程。事实上,你通过级联其各个元素来形成第一个数组。一对方括号[]是连接运算符。

A = [a, a]

A =

1 2 3 1 2 3
     4 5 6 4 5 6
     7 8 10 7 8 10
使用逗号将数组相互连接称为“水平级联”。每个数组必须具有相同的行数。类似地,当数组具有相同数量的列时,可以使用分号垂直连接。

A = [a; a]

A =

1 2 3
     4 5 6
     7 8 10
     1 2 3
     4 5 6
     7 8 10

复数
复数具有实部和虚部。

sqrt(-1)

ans =

0.0000 + 1.0000i
要表示复数的虚部,请使用i或j。

c = [3+4i, 4+3j; -i, 10j]

c =

3.0000 + 4.0000i 4.0000 + 3.0000i
   0.0000 - 1.0000i 0.0000 + 10.0000i

matlab新手入门(二)(翻译)的更多相关文章

  1. matlab新手入门(四)(翻译)

    工作空间变量 工作区包含您在数据文件或其他程序中创建或导入到MATLAB®中的变量. 例如,这些语句在工作空间中创建变量A和B. A=255; b=ones(size(Img)); 您可以使用whos ...

  2. matlab新手入门(三)(翻译)

    数组索引 MATLAB®中的每个变量都是一个可以容纳多个数字的数组.当您要访问阵列的选定元素时,请使用索引.例如,考虑4乘4A: A = magic(4) A =    16 2 3 13     5 ...

  3. matlab新手入门(一)(翻译)

    桌面基础知识 启动MATLAB®时,桌面将以其默认布局显示. 桌面包括以下面板: 当前文件夹 - 访问您的文件. 命令窗口 - 在命令行中输入命令,由提示符(>>)指示. 工作区 - 浏览 ...

  4. AngularJS Eclipse——新手入门【翻译+整理】

    原文地址 本文介绍如何安装和配置 AngularJS Eclipse.AngularJS Eclipse 插件是基于强大的 JavaScript 推断引擎(javascript inference e ...

  5. 二向箔web安全学院 --新手入门

    二向箔安全学院 click here 新手入门|梦境穿越 1.要建立一个这样的观念|理解:计算机之所以是计算机,是它具有重复进行某种指令的特征,因而我们写的代码 or 脚本,本质上就是让计算机代替我们 ...

  6. Spring boot 1.3.5 RELEASE 官方文档中文翻译--Part2:新手入门

    Part II. 新手入门 如果你刚刚开始学习Spring boot或"普通"的Spring,这部分非常适合你!在这里,我们回答了最基础的"什么是?".&quo ...

  7. jmeter安装教程与新手入门(附jdk安装教程)

    一.前言 最近要对网站做性能测试,提到了并发数测试,查了下,还是决定使用jmeter来完成这项测试,这里总结了jmeter完整的安装教程,附上新手使用教程. 二.jmeter安装 1.jdk安装(jm ...

  8. NLP新手入门指南|北大-TANGENT

    开源的学习资源:<NLP 新手入门指南>,项目作者为北京大学 TANGENT 实验室成员. 该指南主要提供了 NLP 学习入门引导.常见任务的开发实现.各大技术教程与文献的相关推荐等内容, ...

  9. Flume NG Getting Started(Flume NG 新手入门指南)

    Flume NG Getting Started(Flume NG 新手入门指南)翻译 新手入门 Flume NG是什么? 有什么改变? 获得Flume NG 从源码构建 配置 flume-ng全局选 ...

随机推荐

  1. 九度OJ 1154:Jungle Roads(丛林路径) (最小生成树)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:832 解决:555 题目描述: The Head Elder of the tropical island of Lagrishan has ...

  2. 九度OJ 1145:Candy Sharing Game(分享蜡烛游戏) (模拟)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:248 解决:194 题目描述: A number of students sit in a circle facing their teac ...

  3. 2017-2018-1 20179209《Linux内核原理与分析》第三周作业

    一.函数调用堆栈 存储程序.函数调用堆栈(高级语言起点)和中断机制是计算机工作的三大法宝.其中函数调用堆栈是本次学习的重点.先介绍一些基本的知识点: 1.ebp 在C语言中用作记录当前函数调用的基址: ...

  4. 我的Android进阶之旅------>Android实现音乐示波器、均衡器、重低音和音场功能

    本实例来自于<疯狂Android讲义>,要实现具体的功能,需要了解以下API: MediaPlayer  媒体播放器 Visualizer 频谱 Equalizer 均衡器 BassBoo ...

  5. (*)(转)要快速学习SSM框架,你需要一套学习曲线平滑的教程

    作者:meepo链接:https://www.zhihu.com/question/57719761/answer/156952139来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载 ...

  6. 【windows】如何让一个程序开机自启动

    windows的开机自启动也是将一个程序放在文件夹下即可,将应用程序或者快捷方式放在如下文件夹下,即可实现开机自启动 C:\ProgramData\Microsoft\Windows\Start Me ...

  7. P5012 水の数列

    P5012 水の数列 离线处理出选择每个数得到区间数得到刚开始的得分 \(RMQ_{ij}\)表示\(i\)~\(i\)+\(2^j\)-1的区间最大值 #include<cstdio> ...

  8. chunkhash笔记

    假设有main1.main2两个入口文件,main引入chunk1.chunk2,main2引入chunk1 改变chunk2 main1的chunkhash改变,main2不发生改变 main再引入 ...

  9. 获取HDC的几种方法

    当需要在显示器上(当然包括打印机等设备上)绘图时,或者写文字的时候,需要取得设备的上下文句柄,即HDC,本文以下都称为HDC.那么,有哪些办法取得HDC呢? 1 BeginPain()和EndPain ...

  10. 【字符串题目】poj 3096 Surprising Strings

    Surprising Strings Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6193   Accepted: 403 ...