欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

MATLAB常用命令、函数与运算

发布时间:2024/10/14 编程问答 24 豆豆
生活随笔 收集整理的这篇文章主要介绍了 MATLAB常用命令、函数与运算 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

MATLAB常用命令、函数与运算(自学笔记1)

笔者正在学习matlab的m函数,本文为学习笔记的其中之一。
本文主要介绍MATLAB中常用的命令、函数和运算。


文章目录

  • MATLAB常用命令、函数与运算(自学笔记1)
  • 命令
    • clear
    • close
    • clc
    • pause
  • 变量
  • 函数
    • floor
    • round
    • mean
    • find
    • single()
    • ones()
  • 算术运算
    • 数组乘法 .*
    • 矩阵乘法 *
    • '(共轭转置)和.'(数组转置)
    • ( : )
    • (m1:n1, m2:n2)


命令

clear

clear函数用于清除base空间中的变量。

close

关闭窗口

close all %删除所有句柄没有被隐藏的绘图窗口

clc

清除命令窗口中的数据,当命令窗口输入该函数后,窗口会清空。

pause

程序暂停指令,其用法如下

>> pause(0.3) %程序暂停运行0.3>> pause %程序暂停,点击任意按键继续

变量

变量可以是数组或矩阵。(单独的一个数字是一个1*1的矩阵)。
变量的声明和赋值比较简单,如下所示

>> a = 1 %声明 a =1 >> b = 2 b =2 >> b = a %赋值 b =2 >> c = [1, 2, 3] %1*3的矩阵 c =1 2 3 >> c1 = [1 2 3] %1*3的矩阵 c1 =1 2 3 >> d = [1; 2; 3] %3*1的矩阵 d =123 >> e = [1 2 3; 4 5 6; 7 8 9] %3*3的矩阵 e =1 2 34 5 67 8 9

函数

floor

用于取小于该变量的最小整数。

>> a = 1.2 >> b = 1.9 >> floor(a) ans =1 >> floor(b) ans =1

round

四舍五入取整。

>> a=3.2456 a =3.2456 >> round(a) %取整 ans =3 >> round(a,1) %取整,保留小数点后1位 ans =3.2000 >> round(a,2) %取整,保留小数点后2位 ans =3.2500

mean

求平均值函数,其使用方法如下

>> A = [1 2 3] %1*3矩阵 A =1 2 3 >> mean(A) %求平均值 ans =2>> A = [1 2 3; 4 5 6] %2*3矩阵 A =1 2 34 5 6 >> mean(A) %求平均值 ans =2.5000 3.5000 4.5000 >> mean(A,1) %求列平均值 ans =2.5000 3.5000 4.5000 >> mean(A,2) %求行平均值 ans =25

find

查找元素的位置,使用示例如下

>> A = [0 1 2 3 4 3] %1*4矩阵 A =0 1 2 3 4 3 >> find(A) %查找1*4矩阵中非零元素的位置 ans =2 3 4 5 6 >> find(A>2) %查找1*4矩阵中大于2的元素的位置 ans =4 5 6 >> find(A,2) %查找1*4矩阵中非零元素的位置,并返回前2个的位置 ans =2 3 >> find(A,1,'first') %查找1*4矩阵中非零元素的位置,并返回第1个的位置 ans =2 >> find(A>2,1,'last') %查找1*4矩阵中大于2的元素的位置,并返回最后1个的位置 ans =6>> A = [1 3 4 6 0; 0 2 0 3 4; 3 1 6 0 2] %3*5矩阵 A =1 3 4 6 00 2 0 3 43 1 6 0 2 >> find(A) %查找3*5矩阵中非零元素的位置 ans =134567910111415 >> [a1,a2] = find(A) %返回非零元素所在的行和列 a1 =13123131223 a2 =11222334455 >> [a1,a2,v] = find(A) %返回非零元素所在的行和列,并将元素保存到V中%若括号中为判断语句(A>2),则将判断结果保存到V中 a1 =13123131223 a2 =11222334455 v =13321466342

single()

该函数用于将矩阵转换为single类型。
double数据类型占8个字节,single类型占4个字节。使用single类型的矩阵运算时间是double类型的一半。

ones()

创建全部为 1 的数组。

语法

X = ones X = ones(n) X = ones(sz1,...,szN) X = ones(sz) X = ones(___,typename) X = ones(___,'like',p)

说明

  • X = ones 返回标量 1。

  • X = ones(n) 返回一个 n×n 的全 1 矩阵。

  • X = ones(sz1,…,szN) 返回由 1 组成的 sz1×…×szN 数组,其中 sz1,…,szN 指示每个维度的大小。例如,ones(2,3) 返回由 1 组成的 2×3 数组。

  • X = ones(sz) 返回一个由 1 组成的数组,其中大小向量 sz 定义 size(X)。例如,ones([2,3]) 返回由 1 组成的 2×3 数组。

  • X = ones(___,typename) 在上述语法的基础上进一步指定 X 的数据类型(类)。例如,ones(5,‘int8’) 返回 8 位整数组成的 5×5 矩阵。

  • X = ones(___,‘like’,p) 指定 X 具有与数值变量 p 相同的数据类型、稀疏性和复/实性(实数或复数)。


算术运算

数组乘法 .*

示例:

>> a=1,b=2 a =1 b =2 >> a.*b ans =2 >> a=[1 2 3],b=[2 3 4] a =1 2 3 b =2 3 4 >> a.*b ans =2 6 12

说明:数组乘法是两个矩阵中相同位置的元素相乘后,存放到结果相应的位置。

矩阵乘法 *

示例:

>> a=1,b=2 a =1 b =2 >> a*b ans =2>> a=[1;2;3];b=[1,3,5]; >> a*b ans =1 3 52 6 103 9 15>> a=[1 2 3; 2 3 4; 3 4 5]; b = [2 4 6; 3 4 5; 6 7 8]; >> a*b ans =26 33 4037 48 5948 63 78

说明:A*B,要求A的列数等于B的行数。

‘(共轭转置)和.’(数组转置)

A’是复数矩阵A的线性代数转置,是复共轭转置。

>> A = [1 2 3; 4 5 6] %2*3矩阵 A =1 2 34 5 6 >> A' %共轭转置 ans =1 42 53 6 >> A.' %数组转置 ans =1 42 53 6 >> B = [1+i 2+2i 3+3i; 4+4i 5+5i 6+6i] %2*3复数矩阵 B =1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i4.0000 + 4.0000i 5.0000 + 5.0000i 6.0000 + 6.0000i >> B' %共轭转置 ans =1.0000 - 1.0000i 4.0000 - 4.0000i2.0000 - 2.0000i 5.0000 - 5.0000i3.0000 - 3.0000i 6.0000 - 6.0000i >> B.' %数组转置 ans =1.0000 + 1.0000i 4.0000 + 4.0000i2.0000 + 2.0000i 5.0000 + 5.0000i3.0000 + 3.0000i 6.0000 + 6.0000i

( : )

(:)是将矩阵转换为列向量(n1的矩阵)。
对于行向量(1n的矩阵),相当于转置;
对于列向量,不会发生变化;

>> A = [1 2 3; 4 5 6] %2*3矩阵 A =1 2 34 5 6 >> A(:) %转换 ans =142536

(m1:n1, m2:n2)

该运算符用于获取矩阵中m1到n1行、m2列到n2列的所有元素。

>> a = [1 2 3; 4 5 6; 7 8 9] a =1 2 34 5 67 8 9>> a(1:2,:) ans =1 2 34 5 6>> a(:,2:3) ans =2 35 68 9>> a(1:2,2:3) ans =2 35 6

总结

以上是生活随笔为你收集整理的MATLAB常用命令、函数与运算的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。