Han Xu's blogs
  • 🥳欢迎!
  • Linux
    • 【Linux_install】详细的Ubuntu和win双系统安装指南
    • 【Linux】分区向左扩容的方法
    • 【Linux】挂载硬盘并设置开机自动挂载
    • 【Linux】grub命令行引导进入windows系统
    • 【Linux】python版本控制和环境管理
    • 【Linux】安装n卡驱动,美化gnome
    • 【Linux】gnome桌面环境切换KDE Plasma
  • python
    • 【matplotlib教程】数据可视化
    • 【python】实战:大批量数据的处理和拟合
    • 【Python爬虫】批量爬取图片的简单案例
    • 【scikit-opt】七大启发式算法的使用
    • 【综合评价方法】常见综合评价方法及其实现
    • 【python教程】打包和发布自己的项目,让别人去pip
    • 【PyTorch】n卡驱动、CUDA Toolkit、cuDNN全解安装教程
    • 【Pytorch教程】迅速入门Pytorch深度学习框架
    • 【稀疏矩阵】使用torch.sparse模块
  • C_C++
    • 【CMake】掌握CMake基本操作
    • 【计算机二级C++】题目与C++知识自检
  • matlab
    • 【Matlab】基础教程
  • 🤖ROS
    • 【ROS教程】安装ROS全流程及可能遇到的问题
    • 【ROS教程】用CLion编译和调试ROS包的全流程及可能遇到的问题
    • 【ROS教程】ROS文件系统和基础架构
    • 【ROS教程】ROS常用命令
    • 【ROS教程】话题通信
    • 【ROS教程】服务通信
    • 【ROS教程】ROS常用API讲解
    • 【ROS教程】编写launch文件
  • 📷Computer_Vision
    • Novel_View_Synthesis
      • 【NeRF】由浅入深介绍Neural_Radiance_Fields
      • 【CameraPoseRefinement】以BARF为例介绍三维重建中的位姿优化
      • 【3DGS】从新视角合成到3D_Gaussian_Splatting
      • 【NeRF】截至2024.12NeRF系列工作总结
    • SLAM
      • 【Survey】截至2024.12SLAM系列工作总结
    • OpenCV
      • 【OpenCV教程合集】一文入门和精通OpenCV(C_C++)
      • 【OpenCV教程】OpenCV中的数据类型
      • 【OpenCV教程】OpenCV中对矩阵的常用操作
      • 【OpenCV教程】对图像的各种常用操作
      • 【OpenCV教程】滤波和边缘检测的过程
      • 【OpenCV教程】如何优雅地画出一个几何图形
      • 【OpenCV教程】Trackbar到底怎么用?
      • 【OpenCV教程】轮廓检测过程
      • 【OpenCV教程】特征工程
  • 🗑️杂七杂八的~
    • 【LaTex、markdown】常用语法写出漂亮的blog
    • 【git教程】快速掌握git
    • 【Internet Protocol】ip介绍,如何组局域网实现远程桌面和文件共享
    • 《周易》:大衍筮法
    • 【PyCharm】解决虚拟环境pip无法使用问题
    • 【git】解决能访问github但克隆不了的问题
    • 【Windows终端美化】为什么你的终端千篇一律?
Powered by GitBook
On this page
  • 基本操作命令
  • 1.设置计算显示结果的格式
  • 2. 常用指令
  • 3. 数据类型
  • 4. 数学运算
  • 5. 函数

Was this helpful?

  1. matlab

【Matlab】基础教程

PreviousmatlabNextROS

Last updated 9 months ago

Was this helpful?

@


基本操作命令

1.设置计算显示结果的格式

指令
含义
举例

format、format short

通常保证小数点后四位有效,最多不超过 7 位;对于大于 1000 的实数,用 5 位有效数字的科学记数形式显示。

314.159 被显示为 314.1590;3141.59 被显示为 3.1416e+003

format long

15位数字表示

3.14159265358979

format short e

5 位科学记数表示

3.1416e+00

format long e

15位科学记数表示

3.14159265358979e+00

format short g

从 format short 和 format short e 中自动选择最佳记数方式

3.1416

format long g

从 format long 和 format long e 中自动选择最佳记数方式

3.14159265358979

format rat

近似有理数表示

355/113

format hex

十六进制表示

400921fb54442d18

format +

显示大矩阵用。正数、负数、零 分别用+ , - , 空格表示。

+

format bank

(金融)元、角、分表示

3.14

format compact

显示变量之间没有空行

format loose

在显示变量之间有空行

  • format short 显示格式是默认的显示格式 。

2. 常用指令

指令名
含义

who

查询工作区变量名

whos

查询工作区某个或所有变量及其具体信息

clear

从工作区删除某个或所有变量和函数

pack

整理工作区内存碎片

save<FileName> v1 v2

把变量 v1, v2 保存为 FileName.mat 文件

save<FileName> v1 v2 -append

把变量v1, v添加到 FileName.mat 文件中

save<FileName> v1 v2 -ascii -double

把变量 v1, v2 保存为 FileName 16 位ASCII 文件

load<FileName>

把 FileName.mat 文件中的全部变量装入内存

load<FileName> v1 v2

把 FileName.mat 文件中的 v1,v2 变量装入内存

load<FileName> v1 v2

把 FileName ASCII 文件中的 v1, v2 变量装入内存

3. 数据类型

  • MATLAB的构造型数据基本上与C++的构造型数据相衔接,但它的数组却有更加广泛的含义和不同于一般语言的运算方法。符号对象是MATLAB所特有的一类为符号运算而设置的数据类型。严格地说,它不是某一类型的数据,它可以是数组、矩阵、字符等多种形式及其组合,但它在MATLAB的工作区中的确又是另类的一种数据类型。

4. 数学运算

4.1 取整函数

函数
说明
举例

round(a)

向最接近的整数取整,小数部分是0.5时向绝对值大的方向取整

round(4.3)结果为4,round(4.5)结果为5

fix(a)

向0方向取整

fix(4.3)结果为4,fix(4.5)结果为4

floor(a)

向不大于a的最接近的整数取整

floor(4.3)结果为4,floor(4.5)结果为4

ceil(a)

向不小于a的最接近的整数取整

ceil(4.3)结果为5,ceil(4.5)结果为5

4.2 复数函数

函数
说明

real(z)

返回复数z的实部

imag(z)

返回复数z的虚部

abs(z)

返回复数z的幅度

angle(z)

返回复数z的幅角

返回复数z的共轭复数

返回复数z的共轭复数

complex(a,b)

以a为实部,b为虚部创建复数

4.3 符号常量

常量(特殊函数)
含义

ans

用于存储计算结果的默认变量名

pi

圆周率的双精度表示

i或j

用于复数单位

Inf或 inf

无穷大,前面可加+或-

NaN

非数值量,产生于0/0、无穷/无穷

eps

容错量,非常接近于0,计算机上的值为

date

当前日期

Realmin或realmin

Matlab所能表示实数的最小绝对值

Realmax或realmax

Matlab所能表示实数的最大绝对值

version

Matlab版本信息,如8.3.0.532 (R2014a)

5. 函数

5.1 匿名函数(lemba表达式)

匿名函数通常是简单的函数,不需要编写m文件。匿名函数是面向命令行代码的函数形式,通常是由一句简单的声明语句组成。创建的标准形式是:

  • fhandle=@(arglist)expr

  • arglist为参数列表,指出了函数的参数列表,用“,”分隔

  • expr为关于参数列表的表达式形式,前缀@是固定的,等号右边表示将该函数句柄赋值到变量fhandle。

下面这个例子定义了一个匿名函数来计算x^3^ +y^3^的值

fhandle=@(x, y)(x.\^3+y.^3)

此处定义了一个匿名函数来计算x3+y3的值,其中x和y可以是矩阵。运行如下:

fhandle=@(x, y)(x.\^3+y.^3);
a=5; b=8;
fhandle(a,b)
ans =
637

5.2 内联函数

内联函数是MATLAB中的另一种可以实现函数功能的对象,它的创建形式非常简单。其调用格式如下所示:

  • inline(‘string’,arg1,arg2,…)

  • ‘string’必须是不带赋值号“=”的字符串,arg1, arg2等是函数的输入变量。

下面这个例子创建内联函数实现f(x,y)=cos(x)e^xy^

f =inline('cos(x)*exp(x*y)','x','y')
f=
inline function;
f(x,y)=cos(x)*exp(x*y)

如果输入变量设置为x=1,y=2,即输入形式和结果如下所示:

Z=f(1,2)
Z=
3.9923

5.3 函数指针(函数句柄)

函数句柄实际上提供了一种函数调用的间接方法,创建函数句柄要用到操作符@。前面所讲的匿名函数实际上创建了一种函数句柄。MATLAB中的各种函数都可以创建函数句柄。创建函数句柄的方法如下:

  • fhandle=@filename;

  • filename就是所对应的m函数文件名或者是库函数名

  • fhandle保存了该m文件或者库函数的句柄,通过句柄fhandle即可调用相应的m文件或者库函数。

下面这个例子创建函数cos的句柄

a=@cos;
a(pi)
ans =
-1

该例中,将内置函数cos(x)的句柄赋值到变量a,然后通过a可以实现对函数cos的间接调用。

下面这个例子在SumMax.m文件中自定义SumMax函数

function [a,b] = SumMax(X)
m=max(size(X));
a=0;
for n=1:m
a=a+X(n);
end
b=max(X);
end

将上述程序保存为SumMax.m。采用函数句柄的方法来实现

b=@SumMax;
y=[3,2,10,12,6];
 [c,d]=b(y)
c =
33
d =
12
在这里插入图片描述
TOC