关于matlab小记
目录:
1、函数取整
2、数据显示格式
3、三角函数运算
4、矩阵运算
5、函数句柄
6、二维函数图像绘制
7、符号对象
8、关于微积分
9、关于逻辑语句
10、关于运算符
───────────────────────────────────────────────────────────────────────────────────────────────────────
floor() 向下取整
ceil() 向上取整
round() 四舍五入到最近的整数
fix() 向零取整
───────────────────────────────────────────────────────────────────────────────────────────────────────
format long 显示15位双精度,7为单精度(scaled fixed point)
format short 显示5位(scaled fixed point format with 5 digits)
format short eng 至少5位加3位指数
format long eng16 位加至少3位指数
format hex 十六进制
format bank 2个十进制位
format + 正、负或零
format rat 有理数近似
format short 缺省显示
format long g 对双精度,显示15位定点或浮点格式,对单精度,显示7位定点或浮点格式。
format short g 5位定点或浮点格式
format short e 5位浮点格式
format long e 双精度为15位浮点格式,单精度为7为浮点格式
───────────────────────────────────────────────────────────────────────────────────────────────────────
matlab中三角函数sin、cos、tan等都是以弧度为单位的。
如果想用角度有两种方法。
一种是用sind、cosd、tand、atand等,他们是角度为单位的
另一种就是用deg2rad将角度转换为弧度。
下面是例子,四个式子的值是一样的。
sin(pi/6)
sind(30)
sin(deg2rad(30))
sind(rad2deg(pi/6))
───────────────────────────────────────────────────────────────────────────────────────────────────────
矩阵:
一般乘法 A*B
矩阵点乘(两矩阵的对应项相乘) A.*B
求矩阵的逆 inv(A)或A^-1
求矩阵的秩 rank(A)
求矩阵的迹trace(A)
───────────────────────────────────────────────────────────────────────────────────────────────────────
whos用于列出当前工作空间中所有变量,以及它们的名字、尺寸(比如一个矩阵或数组的行列维数)、所占字节数、属性等信息。这些信息都显示在matlab中的workspace窗口中。
───────────────────────────────────────────────────────────────────────────────────────────────────────
创建函数句柄一般语法格式:
Func_Handle = @Func_Filename;
①Func_Filename:函数所对应的M文件,或者matlab内部函数;
②Func_Handle:变量,保存函数句柄;
样例:
F_Handle = @cos
x = : 0.25 * pi : * pi
F_Handle(x)
函数句柄的好处:
①提高运行速度。因为matlab对函数的调用每次都是要搜索所有的路径,从set path中我们可以看到,路径是非常的多的,所以如果一个函数在你的程序中需要经常用到的话,使用函数句柄,对你的速度会有提高的。
②使用可以与变量一样方便。比如说,我再这个目录运行后,创建了本目录的一个函数句柄,当我转到其他的目录下的时候,创建的函数句柄还是可以直接调用的,而不需要把那个函数文件拷贝过来。因为你创建的function handles中,已经包含了路径。
───────────────────────────────────────────────────────────────────────────────────────────────────────
关于二维函数图形绘制:
绘制坐标轴的命令:
plot 命令使用线性坐标空间绘制图形;
loglog 命令在两个对数坐标空间中绘制图形;
semilogx(或 semilogy)命令使用 x 轴(或 y 轴)为对数刻度,另外一个轴为线性刻度的坐标空间绘制图形;
polar使用极坐标空间绘制图形。
plot函数的参数:


用法:
x=:0.25:;
y1=x.^0.1;
y2=x.^0.5;
y3=x.^0.8;
y4=x.^1.5;
t=:0.001:*pi;
hold on
plot(*cos(t),*sin(t),':')
plot(x,y1,'bo-',x,y2,'rH-')
plot(x,y3,'gp--')
plot(x,y4,'mx-.')
title('My Title'),xlabel('My X-axis Label'),ylabel('My Y-axis Label')
text(,,'Text for annotation')
grid gtext('Text for annotation')
gtext命令是使用鼠标器定位的文字注释命令。当输入命令后,可以在屏幕上得到一个光标, 然后使用鼠标器控制它的位置。 按鼠标左键, 即可确定文字设定的位置。
hold on是图形保持命令,可以把当前图形保持在屏幕上不变,同时在这个坐标系内绘制另外一个图形,对应的命令为hold off。
axis([x-min,x-max,y-min,y-max])可以控制图形显示的坐标轴的范围。
axis square : 控制横纵坐标比例为1:1(输入axis(‘normal’)后返回一般状态)。
axis tight : sets the axis limits to the range of the data.
───────────────────────────────────────────────────────────────────────────────────────────────────────
关于符号对象和符号表达式:
var = sym(A,flag)
A可以是数字、数值矩阵、数值表达式、字符串;
flag:
d:最接近的十进制浮点精确表示
e:(数值计算时)带估计误差的有理表示
f:十六进制浮点表示
r:默认设置时,最接近有理表示的形式
positive:限定A为正的实型符号变量
real:限定A为实型符号变量
syms a b c … flag;
───────────────────────────────────────────────────────────────────────────────────────────────────────
关于微积分:
1、求极限:
当计算lim(x->a)[f(x)]时,使用函数: limit((x - )/(x-),)
(注:没有标明x->a的参数a时,默认为零;x需要声明为符号对象)。
2、求微分:
syms x y
y = x^
diff(y)
3、求积分:
syms x
int(x * sin(x))
int(x * exp(x))
int(x * exp(x),,)
int(x)
int(x,,)
4、求解常微分方程(符号解法):
r = dsolve( 'eqn1' , 'eqn2' , ... , 'cond1' , 'cond2' , ... , 'var' )
解释如下:eqni表示第i个微分方程,condi表示第i个初始条件,var表示微分方程中的自变量,默认为t。
样例:
syms x
dsolve('Dy = 3*x^2','x') %计算"dy/dx = 3x^2"
dsolve('Dy = 3*x^2','y(0) = 2','x') %计算"dy/dx = 3x^2",初始条件x=0时y=
[x,y]=dsolve('Dx=y','D2y-Dy=0','x(0)=1','y(0)=1','Dy(0)=1')
───────────────────────────────────────────────────────────────────────────────────────────────────────
关于逻辑语句:
if语句:
if <expression >
% Executes when the expression is true
<statement(s)> elseif <expression >
% Executes when the boolean expression is true
<statement(s)> elseif <expression >
% Executes when the boolean expression is true
<statement(s)> else
% executes when the none of the above condition is true
<statement(s)> end
例如:
a = ;
if(a<)
fprintf('a < 10\n');
elseif(a<)
fprintf('10 <= a <50\n');
elseif(a<)
fprintf('50 <= a <80\n');
else
fprintf('a >= 80\n');
end
while语句:
while <expression>
<statements>
end
例如:
a = ;
while(a<)
fprintf('now a = %d\n',a);
a=a+;
end
for语句:
for a = :
fprintf('now a = %d\n', a);
end
fprintf('\n');
for a = ::
fprintf('now a = %d\n', a);
end
fprintf('\n');
for a = :-:
fprintf('now a = %d\n', a);
end
break与continue的用法类似于C语言:
for a = :
if(a == )
continue;
end
fprintf('now a = %d\n', a);
end fprintf('\n'); for a = :
if(a == )
break;
end
fprintf('now a = %d\n', a);
end
───────────────────────────────────────────────────────────────────────────────────────────────────────
关于运算符:
1、数学运算符

2、关系运算符
等于 ==
不等于 ~=
大于 >
大于等于 >=
小于 <
小于等于 <=
3、逻辑运算符
与:&
或:|
非:~
关于matlab小记的更多相关文章
- Matlab norm 用法小记
Matlab norm 用法小记 matlab norm (a) 用法以及实例 norm(A,p)当A是向量时norm(A,p) Returns sum(abs(A).^p)^(1/p), for ...
- matlab 曲线拟合小记
在matlab中经常需要对数据进行曲线拟合,如最常见的多项式拟合,一般可以通过cftool调用曲线拟合工具(curve fit tool),通过图形界面可以很方便的进行曲线拟合,但是有些时候也会遇到不 ...
- Matlab 绘制三维立体图(以地质异常体为例)
前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...
- Matlab slice方法和包络法绘制三维立体图
前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...
- Matlab 高斯_拉普拉斯滤波器处理医学图像
前言:本程序是我去年实现论文算法时所做.主要功能为标记切割肝脏区域.时间有点久,很多细节已经模糊加上代码做了很多注释,因此在博客中不再详述. NOTE: 程序分几大段功能模块,仔细阅读,对解决医学图像 ...
- [原]Paste.deploy 与 WSGI, keystone 小记
Paste.deploy 与 WSGI, keystone 小记 名词解释: Paste.deploy 是一个WSGI工具包,用于更方便的管理WSGI应用, 可以通过配置文件,将WSGI应用加载起来. ...
- MATLAB中绘制质点轨迹动图并保存成GIF
工作需要在MATLAB中绘制质点轨迹并保存成GIF以便展示. 绘制质点轨迹动图可用comet和comet3命令,使用例子如下: t = 0:.01:2*pi;x = cos(2*t).*(cos(t) ...
- linux下配置matlab运行环境(MCR)
在安装好的matlab下有MCR(MatlabCompilerRuntime)在matlab2011/toolbox/compiler/deploy/glnxa64下找到MCRInstaller.zi ...
- EMD分析 Matlab 精华总结 附开源工具箱(全)
前言: 本贴写于2016年12与15日,UK.最近在学习EMD(Empirical Mode Decomposition)和HHT(Hilbert-Huang Transform)多分辨信号处理,FQ ...
随机推荐
- android中sharedPreferences的用法(转)
SharedPreferences介绍: 做软件开发应该都知道,很多软件会有配置文件,里面存放这程序运行当中的各个属性值,由于其配置信息并不多,如果采用数据库来存放并不划算,因为数据库连接跟操作等 ...
- TIMEOUT HANDLING WITH HTTPCLIENT
https://www.thomaslevesque.com/2018/02/25/better-timeout-handling-with-httpclient/ The problem If yo ...
- Linux环境下MySQL设置gbk编码
1 编辑mysql配置文件 vi /etc/my.cnf 2 创建数据库 CREATE DATABASE `XXX` DEFAULT CHARACTER SET gbk COLLATE gbk_chi ...
- 深入理解磁盘文件系统之inode
一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统 ...
- Linux应急响应(三):挖矿病毒
0x00 前言 随着虚拟货币的疯狂炒作,利用挖矿脚本来实现流量变现,使得挖矿病毒成为不法分子利用最为频繁的攻击方式.新的挖矿攻击展现出了类似蠕虫的行为,并结合了高级攻击技术,以增加对目标服务器感染 ...
- Python调用7zip命令实现文件批量解压
Python调用7zip命令实现文件批量解压 1.输入压缩文件所在的路径 2.可以在代码中修改解压到的文件路径和所需要解压的类型,列入,解压文件夹下面所有的mp4格式的文件 3.cmd 指的就是Pyt ...
- codeblocks编码设置
注意编码统一,即文件编码和编译时的编码统一即可. codeblock13.12下: 文件编码: setting -> editor ->general setting -> othe ...
- codeforces水题100道 第八题 Codeforces Round #274 (Div. 2) A. Expression (math)
题目链接:http://www.codeforces.com/problemset/problem/479/A题意:给你三个数a,b,c,使用+,*,()使得表达式的值最大.C++代码: #inclu ...
- 删除sql注入
), );--过滤字符串 字符串及之后的数据将被替换为空 set @FilterStr='</title><style>.alx2{'; set @curTable='user ...
- <转>机器学习系列(9)_机器学习算法一览(附Python和R代码)
转自http://blog.csdn.net/han_xiaoyang/article/details/51191386 – 谷歌的无人车和机器人得到了很多关注,但我们真正的未来却在于能够使电脑变得更 ...