matlab eye函数_[线性代数系列1] MATLAB入门笔记
MATLAB基础知识入门
1. 创建矩阵
创建矩阵最直接的方式:在方括号内填入数字,空格或者逗号间隔为列,回车或分号间隔为行。
>> A = [1 2; 3 4; 5 -6]A =1 23 45 -6>> B = [1 2 3
4 5 6]B =1 2 34 5 6>> C = [1; 2; 3]C =123>> D = [1, 2, 3]D =1 2 3
如果要观察以创建的矩阵,直接键入矩阵名字按回车即可。注意MATLAB大小写敏感。
>> DD =1 2 3>> A,BA =1 23 45 -6B =1 2 34 5 6>> A,aA =1 23 45 -6未定义函数或变量 'a'。
注意:MATLAB在语句输入不完整的情况下并不会执行,直到你输入完整后,按回车才会执行。
>> E = [1 2; 3 4; 5 -6]E =1 23 45 -6
注意:当输入元素有一个是小数的时候,MATLAB在显示的时候会将所有的元素都显示为小数。
>> E = [2 -1
0.1 3
-2 1]E =2.0000 -1.00000.1000 3.0000-2.0000 1.0000
2. 方向键的使用
MATLAB会存储你最近键入的命令历史,你可以使用键盘方向键中的“上键”来调出命令历史面板。
使用该方法,你可以快速地修正你输入的指令,或者执行一个你常用的matlab命令。
>> Z = [1 2 3 4; 5 0]
要串联的数组的维度不一致。>> Z = [1 2; 3 4; 5 0]Z =1 23 45 0
3. size命令
M是一个矩阵,使用size(M)
,将返回一个含有两个元素的向量,分别表示矩阵M的行数和列数。
>> AA =1 23 45 -6>> size(A)ans =3 2
注意:ans是一个临时的变量名,用于存放上一次的计算结果。即如果你没有将计算结果保存到一个自定义的变量中的话,那么计算结果将保存到ans中。
4. help和doc命令
help
命令和doc
命令后面跟函数名称,可以帮助我们学习一些函数的具体用法。
>> help size
size - Array sizeThis MATLAB function returns a row vector whose elements contain the length ofthe corresponding dimension of A.sz = size(A)szdim = size(A,dim)[m,n] = size(A)[sz1,...,szN] = size(A)另请参阅 height, length, ndims, numel, widthsize 的参考页名为 size 的其他函数
doc
命令所显示的帮助信息更丰富一些。
doc size
5. 提取矩阵中的元素
冒号:
代表全选行或者列。
提取矩阵中的某一个元素。
>> C,C(3, 1)C =-4 8 -15 0 36 2 10ans =6
选中第二列上所有的元素。
>> C, C(:,2)C =-4 8 -15 0 36 2 10ans =802
选中第一列和第二列上所有的元素。
>> C, C(:,[1 2])C =-4 8 -15 0 36 2 10ans =-4 85 06 2
选中第一行和第三行,选中第二列和第三列上的元素。
>> C, C([1 3], [2 3])C =-4 8 -15 0 36 2 10ans =8 -12 10
选中第一行和第三行上所有的元素。
>> C, C([1 3],:)C =-4 8 -15 0 36 2 10ans =-4 8 -16 2 10
选中第三行上所有的元素。
>> C, C(3,:)C =-4 8 -15 0 36 2 10ans =6 2 10
6. 拼接矩阵
将矩阵进行左右拼接时,需要保证行数一致。
>> C,D,[C D]
C =-4 8 -15 0 36 2 10
D =2 -11 3-2 1
ans =-4 8 -1 2 -15 0 3 1 36 2 10 -2 1
>> C,D,[D C]
C =-4 8 -15 0 36 2 10
D =2 -11 3-2 1
ans =2 -1 -4 8 -11 3 5 0 3-2 1 6 2 10
将矩阵进行上下拼接时,需要保证列数一致。
>> C,B,[C;B]
C =-4 8 -15 0 36 2 10
B =1 -2 34 5 -6
ans =-4 8 -15 0 36 2 101 -2 34 5 -6
>> C,B,[B;C]
C =-4 8 -15 0 36 2 10
B =1 -2 34 5 -6
ans =1 -2 34 5 -6-4 8 -15 0 36 2 10
如果在拼接时,无法保证行数或列数相同,那么就会报错。
>> C,B,[B C]
C =-4 8 -15 0 36 2 10
B =1 -2 34 5 -6
错误使用 horzcat
要串联的数组的维度不一致。
7. 使用一些特殊函数创建矩阵
eye()
:创建矩阵,主对角线元素为1,其余位置元素为0。
>> eye(3)
ans =1 0 00 1 00 0 1
zeros()
:创建矩阵,元素均为0。
>> zeros(3)
ans =0 0 00 0 00 0 0>> zeros(3, 5)
ans =0 0 0 0 00 0 0 0 00 0 0 0 0
ones()
:创建矩阵,元素均为1。
>> ones(2, 3)
ans =1 1 11 1 1>> ones(3)
ans =1 1 11 1 11 1 1
diag()
:创建矩阵,对角线元素为指定元素,其余位置都是0。
>> diag([4 5 6 7])
ans =4 0 0 00 5 0 00 0 6 00 0 0 7
注:当后跟参数为正时,指定元素位于主对角线上方的对角线上。为负,则位于主对角线下方。
>> diag([4 5 6 7], -1)
ans =0 0 0 0 04 0 0 0 00 5 0 0 00 0 6 0 00 0 0 7 0>> diag([4 5 6 7], 1)
ans =0 4 0 0 00 0 5 0 00 0 0 6 00 0 0 0 70 0 0 0 0
diag()
函数也可用于提取一个矩阵的主对角线上的元素。
>> C, diag(C), diag(diag(C))
C =-4 8 -15 0 36 2 10
ans =-4010
ans =-4 0 00 0 00 0 10
8. 使用冒号创建带有均匀增量元素的向量
默认以1为增量从1到5创建向量。
>> v1 = 1:5
v1 =1 2 3 4 5
以0.5为增量从1到3创建向量。
>> v2 = 1:0.5:3
v2 =1.0000 1.5000 2.0000 2.5000 3.0000
以-1为增量从5到-2创建向量。
>> v3 = 5:-1:-2
v3 =5 4 3 2 1 0 -1 -2
9. 在命令后面加上分号的作用
光执行,不显示结果
>> x = 1:0.2:3
x =1.0000 1.2000 1.4000 1.6000 1.8000 2.0000 2.2000 2.4000 2.6000 2.8000 3.0000
>> x = 1:0.2:3;
>> x
x =1.0000 1.2000 1.4000 1.6000 1.8000 2.0000 2.2000 2.4000 2.6000 2.8000 3.0000
10. format命令
MATLAB的计算精度一共有15位有效数字,但是默认只显示4到5位,可以通过format
命令来控制屏幕上的显示位数。
>> R = 123.125
R =123.1250>> format long, R
R =1.231250000000000e+02>> format short e, R
R =1.2313e+02>> format short, R
R =123.1250
MATLAB默认以format short
来显示数字。
注:可以使用format compact
来让显示变得更加紧凑。
10. 矩阵运算
+运算符
:实现矩阵元素的对应相加
*运算符
:标量与矩阵对应元素相乘
-运算符
:矩阵对应元素的相减
>> A, A+A, 2*A
A =1 23 45 -6
ans =2 46 810 -12
ans =2 46 810 -12>> A, D, A+D, A-D
A =1 23 45 -6
D =2 -11 3-2 1
ans =3 14 73 -5
ans =-1 32 17 -7>> 2*A - 3*D
ans =-4 73 -116 -15>> x, vec, x+vec
x =432
vec =3-51
ans =7-23>> A, B, A+B
A =1 23 45 -6
B =1 -2 34 5 -6
矩阵维度必须一致。 >> x,X,x+X
x =432
X =1 2 3
ans =5 6 74 5 63 4 5
*运算符
:或矩阵之间的乘法(须维数匹配)
>> A, B
A =1 23 45 -6
B =1 -2 34 5 -6>> A*B
ans =9 8 -919 14 -15-19 -40 51>> B*A
ans =10 -24-11 64>> B,C,B*C,C*B
B =1 -2 34 5 -6
C =-4 8 -15 0 36 2 10
ans =4 14 23-27 20 -49
错误使用 *
用于矩阵乘法的维度不正确。请检查并确保第一个矩阵中的列数与第二个矩阵中的行数匹配。要执行按元素相乘,请使用 '.*'。 >> C,x,C*x
C =-4 8 -15 0 36 2 10
x =432
ans =62650>> X,C,X*C
X =1 2 3
C =-4 8 -15 0 36 2 10
ans =24 14 35
>>
11. 矩阵指数运算
使用^
实现指数运算。
>> C,C*C,C^2
C =-4 8 -15 0 36 2 10
ans =50 -34 18-2 46 2546 68 100
ans =50 -34 18-2 46 2546 68 100
>>
>>
>> Y = 2*eye(3), Y^2, Y^3
Y =2 0 00 2 00 0 2
ans =4 0 00 4 00 0 4
ans =8 0 00 8 00 0 8
注:如果MATLAB的计算执行时间过长,可通过Ctrl-C
来终止计算执行。
12. 创建具有随机元素的矩阵
MATLAB使用rand
创建具有随机元素(0~1之间)的矩阵。
>> P = rand(2),Q = rand(2,3)
P =0.9058 0.91340.1270 0.6324
Q =0.0975 0.5469 0.96490.2785 0.9575 0.1576>> P = rand(2),Q = rand(2,3)
P =0.9706 0.48540.9572 0.8003
Q =0.1419 0.9157 0.95950.4218 0.7922 0.6557>> P = rand(2),Q = rand(2,3)
P =0.0357 0.93400.8491 0.6787
Q =0.7577 0.3922 0.17120.7431 0.6555 0.7060
可以对随机数矩阵内的元素数值进行缩放和平移。
>> 6*rand(2)
ans =0.4551 3.18480.3237 4.6750>> -3+6*rand(2)
ans =2.6041 0.4129-2.2206 -0.1837
也可以创建位于一个整数区间内的整数随机数矩阵。下为创建-9到9之间的随机数矩阵。
>> round(-4.5 + 9*rand(2))
ans =-4 -3-1 3
>> round(-4.5 + 9*rand(2,3))
ans =-2 -3 -20 1 1
>> round(-4.5 + 9*rand(2,3))
ans =2 0 -22 -4 4
13. 画图
使用plot
可绘制图形。
>> x = 0:0.1:2*pi; si = sin(x); co = cos(x);
>> plot(x, si)
>> plot(x,si,'r')
>> plot(x,si,'-.')
>> plot(x,si,'*')
>> plot(x,si,'g*')
可以通过如下方式,在一张图上显示两个图像。
>> plot(x, si, 'r*', x, co, 'b+')
另外一种在一张图上显示多个图像的方法是使用hold on
和hold off
,hold on
会使当前的图像冻结,以便下一次的plot
命令在相同的坐标系统里绘制。冻结的效果一直持续到使用hold off
命令为止。
>> plot(x, co, 'g--'), hold on
>> plot(x, si, 'ro')
>> hold off
MATLAB也可以在绘图上显示网格。
>> plot(x, si), grid
也可以改变绘图显示的坐标。
>> plot(x, si), axis([-8 8 -2 2])
注:在MATLAB中可以使用%
进行注释。
% MATLAB使用百分号进行注释
matlab eye函数_[线性代数系列1] MATLAB入门笔记相关推荐
- matlab meas 函数_力科示波器Matlab使用指南
自定义示波器系列之一 自定义示波器系列之一 -- --力科示波器 力科示波器 MATLAB 使用指南 使用指南 美国力科公司 万力劢 基于 X-Stream 技术的力科示波器既是一个高速信号采集平台, ...
- matlab的函数要写在哪,matlab函数库在哪
---WORD 格式--可编辑--专业资料--- 在 MATLAB 环境下访问外部函数的共享库文件,必须首先把该库文件加载到内存中.一旦加载 成功,就能直接在 MATLAB 中直接请求...... 1 ...
- matlab rbf函数_基于径向基函数(RBF)的无网格伪谱法与程序实现(2)——微分矩阵...
参考资料 Gregory E. Fasshauer. Meshfree Approximation Methods with MATLAB. P.387 P401 数值实现 Matlab 2019a ...
- matlab的tfdata函数_较全的matlab 命令和函数
d 菱形 -- 虚线 ^ 向上箭头 3.可以用subplot(3,3,1)表示将绘图区域分为三行三列,目前使用第一区域.此时如要画不同的图形在一个窗口里,需要hold on. ============ ...
- matlab 高斯函数_光学与matlab:高斯光的模拟
光学与matlab:高斯光的模拟 高斯光束,自然何为高斯光束?百度了一下,如下所示,"通常情形,激光谐振腔发出的基模辐射场,其横截面的振幅分布遵守高斯函数,故称高斯光束."如果您对 ...
- python调用matlab函数_从 Python 调用 MATLAB 函数的三种方法
0. 实验环境Ubuntu 16.04 Matlab R2015b 1. 借助于 mlab 库 安装方法非常简单,只需一行命令 sudo pip install mlab 即可. import num ...
- matlab一般函数的绘制方法,基于MATLAB的函数图像绘制方法
C DOI:10.16707~.cnki.fjpc.2017.01.084 E 晒 亍嚣 基于 MATLAB的函数图像绘制方法 张笑笑 一,童 键 z (1湖南省长沙市第一中学 湖南 长沙 410() ...
- matlab pdepe函数边界,科学网-使用MATLAB中pdepe函数求解一维偏微分方程-邓浩鑫的博文...
由于自己科研水平较低,记录的各种体会更多的是给自己做个小结,错误之处,欢迎大家指正. 使用MATLAB求解偏微分方程或者方程组,大致有三类方法.第一种是使用MATLAB中的PDE Toolbox,PD ...
- false函数matlab,ISNUMBER函数使用表达式说明表 matlab拟合函数表达式
ISNUMBER函数使用表达式说明表 matlab拟合函数表达式,[excel助手]今天为大家分享一篇干货知识,如何设置matlab拟合函数表达式,今天的分享角度是从工作中常用的角度谈的,正如标题提到 ...
最新文章
- iOS: 零误差或极小误差的定时执行或延迟执行?
- Silverlight获取WebHost配置信息--WebClient和XmlSerializer模拟
- python流程图基本元素-python | 控制流语句-顺序结构与分支结构
- SAP最佳业务实践:重复制造(149)-4发料
- c语言大作业_2018 C语言大作业--21_Ekko制作教程
- spring AOP 之五:Spring MVC通过AOP切面编程来拦截controller
- 周围剃光头顶留长发型_为啥很多头顶光光的人,宁愿留周围一圈头发,也不剃成光头呢?...
- 拉取docker官方centos镜像时区不对问题
- mongodb 字符串转bson_大数据存储技术选型(六)--Mongodb专题介绍
- 6.Nginx 的 Rewrite 规则
- matlab实现epirb调制,[单选] 根据《建筑安装工程费用项目组成》(建标[2003]206号)的规定,下列属于直接工程费中材料费的是()。...
- 中文分词与马尔科夫模型之二(隐马尔科夫模型与维特比)
- 字体的样式设置和字体分类
- 大学生 生活小技巧:利用插件(Tampermonkey )学习网课 | 查题
- 819 c语言程序设计,大连海洋大学2021年考研819高级语言程序设计(C语言)考试大纲...
- django rest framework serializer 增加自定义字段
- 淘宝/天猫:畅销榜 API 返回值说明
- 清理垃圾文件属于计算机安全维护吗,垃圾文件清理,垃圾文件清理器
- 线上连锁线下整合 连锁电商建设方案
- LEAM(生活/生命体验算法模型)
热门文章
- .c文件如何一步步变成.exe文件
- 老大说不要在项目中使用存储过程
- 基于C++MFC的学生成绩管理系统
- 手机遇到性能BUG怎么破?
- 海量数据处理算法 各种STL容器使用的数据结构剖析
- 2021年最新总结,腾讯、阿里、美团、百度、字节跳动、京东等技术面试题,以及答案,专家出题人分析汇总。持续更新中。
- ipad/iphone内存管理三之NoAutorelease和Autorelease详细解说
- 怎么在一张图片中隐藏文件?
- 12-用户及权限管理
- 美团点评_给出两个字符串(可能包含空格),找出其中最长的公共连续子串,输出其长度。