MATLAB的学习——基本操作和矩阵操作
基本操作
命令窗口操作:
clc
:删除以上的操作及输出;
clear x y z
删除上面的 x y z 三个变量的值- 输出格式的限定
>> format long
>> x= 2+11/16+2^1.2
x =4.984896709994070>> format short
>> x= 2+11/16+2^1.2
x =4.9849>> format short e //以科学计数法的形式输出
>> 7.2*3.1ans =2.2320e+01
- 输出 e^a
exp(a)
>> a =3
a =3
>> exp(a)
ans =2.0086e+01
>> exp(1)
ans =2.7183e+00
>>
- 输出 平方根
sqrt(x)
>> x = sqrt(9)
x =3
- 输出 自然对数
log(x)
- 输出绝对值
abs()
- 三角函数
cos(弧度值)、sin()、tan()
,反三角函数acos(弧度值)、asin()、atan()
,圆周率 pi 就是 pi
>> format rat // 分数形式输出
>> atan(pi/3)
ans =1110/1373
- 复数
复数因子直接 就是i
>> a = 2+3i;b=1-1i;a+b
ans =3 + 2i
注意:运行名为 my_m.m
的 .m
文件,就是在命令行输入 my_m 即可
- 函数积分
int(a,b,c,d)
:
说明:a表示被积函数,b表示被积变量,c表示下限,d表示上限
操作上需要定义
向量和矩阵
- 向量:即一维数值数组。定义如下:(就是用分号来换行)
>> a = [2;1;4]
a =2 1 4
>> a = [2 1 4]
a =2 1 4
>> a = [2,3,4]
a =2 3 4
- 向量或者矩阵的转置,就是在 a上面加(
'
)即
>> a = [2,3,4]
a =2 3 4
>> a'
ans =2 3 4
- 已存向量中创建大向量
>> A = [1;2];B=[3;4];C=[A;B]
C =1 2 3 4
- 创建一个等差向量元素,如
x = [xi :q : xe]
其中,xi
表示首元素,xe
表示尾元素,q
表示 等差
>> x = [0:0.1:1]
x =0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.9000 1.0000
- 对数值相隔相同的行向量
logspace(a,b,n)
即 10^a 到 10^b 之间的 n 个对数值等差的向量
>> logspace(1,2,5)
ans =10.0000 17.7828 31.6228 56.2341 100.0000
- 返回向量元素的个数
length(A)
- 找出向量元素中的最大值
max(A)
和最小值min(A)
- 求向量的模:|A| 即:(1)
A.*A
就是向量内部元素自平方;(2)元素求和:sum(A)
;(3)求平方根sqrt(A)
abs(A)
求绝对值
>> A = [8 7 6 5 4 3 2 1]
A =8 7 6 5 4 3 2 1
>> length(A)
ans =8
>> max(A)
ans =8
>> min(A)
ans =1
>> A.*A
ans =64 49 36 25 16 9 4 1
>> a = sum(A.*A)
a =204
- 向量的点乘
dot(a,b)
(数量积,对应相乘再相加) - 叉乘
cross(a,b)
(向量积,叉积的长度|a×b|可以解释成这两个叉乘向量a,b共起点时,所构成平行四边形的面积),两边相乘再乘sin夹角
>> a= [1;4;7];b=[2;-1;5];
>> c = dot(a,b)
c =33
>> e = cross(a,b)
e =279-9
- 向量元素的引用 例如:
A(2)
,A(:)
表示引用全部元素,A(4:6)
引用第4个到第6个元素组成的包含三个元素的向量
>> A=[4 43 6 7 8 9 10]
A =4 43 6 7 8 9 10
>> A(2)
ans =43
>> A(:)
ans =443678910
>> A(4:6)
ans =7 8 9
矩阵操作
矩阵的操作与向量的操作类似
- 矩阵的各个元素对应位置相乘(
.*
),矩阵相乘为(*
) - 对矩阵每个元素加一个常数,比如 2
C=2+A
- 矩阵的各个元素对应位置相除(
./
)左除,(.\
)右除 - 矩阵的各个元素进行平方(
.^2
)
>> A=[12 3;-1 6];B=[4 2;9 1];
>> C = A.*B
C =48 6-9 6>> E = A*B
E =75 2750 4
>> b=2;
>> c= b+A;
>> c
c =14 51 8
>> A./B
ans =3.0000 1.5000-0.1111 6.0000
>> A.\B
ans =0.3333 0.6667-9.0000 0.1667
>> B.^2
ans =16 481 1
- 特殊类型矩阵
eye(n)
,生成: n x n 的单位矩阵
zeros(n)
或者zeros(m,n)
,生成:n x n 的 0矩阵
ones(n)
,ones(m,n)
,生成 1矩阵
>> eye(4)
ans =1 0 0 00 1 0 00 0 1 00 0 0 1
>> zeros(4)
ans =0 0 0 00 0 0 00 0 0 00 0 0 0
>> ones(4)
ans =1 1 1 11 1 1 11 1 1 11 1 1 1
>> ones(2,4)
ans =1 1 1 11 1 1 1
矩阵元素的引用
A(m,n)
,位置m 行 n 列元素
A(:,i)
,位于 i 列的所有元素
A(:,2:3)
,第2列 到 第3列的所有元素
A(2:3,1:2)
,第 2 行 到 第 3 行,第 1 列 到 第 2 列 此范围内的元素
A(2,:)= []
,[]
可以用来删除矩阵中的对应位置的元素
A([1,2,1],:)
,复制行,创建新矩阵,该指令意思是 第1行 复制 一次,第 2 行 复制一次,第 1 行 复制一次行列式 与 线性系统求解
行列式计算det(A)
行列式不为 0 时,它是有解的,使用 右除\
,例如
5x + 2y - 9z = -18
-9x - 2y + 2z = -7
6x + 7y + 3z = 29
三元一次方程求解:
>> A = [5,2,-9;-9,-2,2;6,7,3];
>> det(A)
ans =437
>> b =[-18;-7;29];
>> A\b
ans =1.00002.00003.0000
- 矩阵的秩
rank(A)
- 求逆矩阵
inv(A)
与 伪逆矩阵pinv(A)
- 初等变换——简化梯形矩阵
rref(A)
>> A = [1,2;4,7]
A =1 24 7
>> rref(A)
ans =1 00 1
magic()
函数
>> magic(8)
ans =64 2 3 61 60 6 7 579 55 54 12 13 51 50 1617 47 46 20 21 43 42 2440 26 27 37 36 30 31 3332 34 35 29 28 38 39 2541 23 22 44 45 19 18 4849 15 14 52 53 11 10 568 58 59 5 4 62 63 1
>> sum(magic(8))
ans =260 260 260 260 260 260 260 260
>> rref(magic(8))
ans =1 0 0 1 1 0 0 10 1 0 3 4 -3 -4 70 0 1 -3 -4 4 5 -70 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0 0
- LU分解求解方程组:
例如:
3x + 2y - 9z = -65
-9x + 5y + 2z = 16
6x + 7y + 3z = 5
>> A = [3 2 -9;-9 -5 2;6 7 3];b=[-65;16;5];
>> [L,U]=lu(A)
L =-0.3333 0.0909 1.00001.0000 0 0-0.6667 1.0000 0
U =-9.0000 -5.0000 2.00000 3.6667 4.33330 0 -8.7273
>> x = U\(L\b)
x =2.0000-4.00007.0000
MATLAB的学习——基本操作和矩阵操作相关推荐
- MATLAB教学_02基本操作与矩阵入
本文主要讲了学习 'MATLAB教程_台大郭彦甫' P2_02基本操作与矩阵输入 中的一些心得. 视频地址: https://www.bilibili.com/video/av68228488?p=2 ...
- Matlab学习——基本操作与矩阵输入
一.基础操作 1. 清除MATLAB里面的valuable clear valuable名字 2. MATLAB里面的keyword pi -- 圆周率π Inf -- ∞ NaN -- not a ...
- 【numpy学习笔记】矩阵操作
转置 a = np.array([[1,2,3],[3,4,5]],dtype='float') # array([[ 1., 2., 3.],[ 3., 4., 5.]]) a.T # array( ...
- matlab中如何用数组绘图,matlab 基础学习(1)——数组,矩阵操作和绘图基础学习...
一维数组(创建,赋值,取值,分割取值,四则运算等操作) 创建一维数组 >> A=[] %创建空的数组 >> B=[1 2 3 4 5] %两种创建行向量,数组的方式 >& ...
- MATLAB(一)基本操作与矩阵输入
文章目录 前言 一.Matlab视窗 二.基本操作与矩阵输入 1. 把MATLAB当做计算机 2. 初等数学函数 Exercise练习 2. 嵌入函数 3. 特殊变量和常量 4.MATLAB调用优先 ...
- matlab 图像上下翻,Matlab图像九宫格基本操作(翻转,镜像等)+位图操作
Matlab图像九宫格基本操作(翻转,镜像等)+位图操作 Matlab图像九宫格基本操作(翻转,镜像等)+位图操作 这次blog提到的操作对于matlab来说都很基础,而且对于有编程和计算机基础的人来 ...
- 范德蒙德矩阵在MATLAB中怎么表示,Python 之 Python与MATLAB 矩阵操作总结
Python 之 Python与MATLAB 矩阵操作小结 一.线形代数理论基础 线形代数(linear algebra)是数学的一个分支,研究矩阵理论.向量空间.线性变换和有限维线形方程组等内容. ...
- matlab矩阵检索、嵌套,矩阵操作笔记
matlab矩阵检索.嵌套,矩阵操作笔记 学习是一个输入和输出的过程,遂老衲决定多做笔记,同时多举例子,因为举例子是从抽象到具象的过程 矩阵点乘就是逐元素操作,矩阵直接乘起来就是按照矩阵的乘法,左行右 ...
- matlab矩阵初等变换矩阵,实验一 MATLAB基本操作及矩阵初等运算
实验一 MATLAB 基本操作及矩阵初等运算 实验目的: 1.熟悉matlab 的界面: 2.熟练掌握matlab 的变量.矩阵定义和基本赋值符号: 3.熟练掌握matlab 矩阵的引用及矩阵初等运算 ...
最新文章
- pythonclass全局变量_Python-多处理全局变量更新未返回给父级
- 日记 [2008年03月26日]
- 深度学习CTR模型最全演化图谱 [王喆观点]
- springboot中日志配置
- 建议推出专门用于开发的电脑
- 斐讯K2路由编译Padavan华硕固件和心得
- 【开源微信】微信登入公众号、小程序
- 免Flash文件上传 (Upload without Flash)
- Zakas大神:LeanPub自出版一年记
- 如何将小车标注在百度地图上并且设置车头方向
- GDScript:协程(Coroutine)(二)简单粗暴实用至上的语法设计
- 房产抵押贷款必须搞懂的七个问题
- iOS-音频播放 AVAudioPlayer
- 一文掌握java对内存空间的划分
- android系统文件误删,误删手机系统文件怎么恢复
- JavaScript内部原理实践——真的懂JavaScript吗?(转)
- 快速一站式搭建免费个人网站/博客 /Blog
- Java创建RPG游戏角色
- (二)uboot移植--从零开始自制linux掌上电脑(F1C200S)<嵌入式项目>
- hdu4411 Arrest 最小费用流