您的位置:首页 > 编程语言 > MATLAB

matlab常用命令

2013-07-20 10:55 295 查看
matlab常用命令,碰见了就记录一下!

一、常用对象操作:除了一般windows窗口的常用功能键外。

1、!dir 可以查看当前工作目录的文件。   !dir& 可以在dos状态下查看。

2、who  可以查看当前工作空间变量名,    whos 可以查看变量名细节。

3、功能键:

功能键             快捷键           说明

方向上键           Ctrl+P          返回前一行输入

方向下键           Ctrl+N          返回下一行输入

方向左键           Ctrl+B          光标向后移一个字符

方向右键           Ctrl+F          光标向前移一个字符

Ctrl+方向右键      Ctrl+R          光标向右移一个字符

Ctrl+方向左键      Ctrl+L          光标向左移一个字符

home              Ctrl+A          光标移到行首

End               Ctrl+E          光标移到行尾

Esc               Ctrl+U          清除一行

Del               Ctrl+D          清除光标所在的字符

Backspace         Ctrl+H          删除光标前一个字符                              Ctrl+K          删除到行尾          

                  Ctrl+C          中断正在执行的命令

4、clc可以命令窗口显示的内容,但并不清除工作空间。

二、函数及运算

1、运算符:

+:加,  -:减,  *:乘,  /: 除, \:左除  ^:  幂,‘:复数的共轭转置, ():制定运算顺序。

2、常用函数表:

sin( )   正弦(变量为弧度)   

Cot( )   余切(变量为弧度)

sind( )  正弦(变量为度数)  

Cotd( )  余切(变量为度数)

asin( )  反正弦(返回弧度)     

acot( )  反余切(返回弧度)    

Asind( ) 反正弦(返回度数)    

acotd( ) 反余切(返回度数)    

cos( )   余弦(变量为弧度)     

exp( )   指数     

cosd( )  余弦(变量为度数)   

log( )   对数   

acos( )  余正弦(返回弧度)   

log10( ) 以10为底对数

acosd( ) 余正弦(返回度数)     

sqrt( )  开方       

tan( )   正切(变量为弧度)      

realsqrt( ) 返回非负根

tand( )  正切(变量为度数)        

abs( )   取绝对值   

atan( )  反正切(返回弧度)     

angle( ) 返回复数的相位角

atand( ) 反正切(返回度数)        

mod(x,y) 返回x/y的余数   

sum(  )  向量元素求和

3、其余函数可以用help elfun和help specfun命令获得。

4、常用常数的值:

pi            3.1415926…….         

realmin       最小浮点数,2^-1022

i             虚数单位              

realmax       最大浮点数,(2-eps)2^1022

j             虚数单位           

Inf           无限值

eps           浮点相对经度=2^-52           

NaN           空值

三、数组和矩阵:

1、构造数组的方法:增量法 linspace(first,last,num) first和last为起始和终止数,num为需要的数组元素个数。

2、构造矩阵的方法:可以直接用[ ]来输入数组,也可以用以下提供的函数来生成矩阵。

ones( )   创建一个所有元素都为1的矩阵,其中可以制定维数,1,2….个变量

zeros()   创建一个所有元素都为0的矩阵

eye()     创建对角元素为1,其他元素为0的矩阵

diag()    根据向量创建对角矩阵,即以向量的元素为对角元素

magic()   创建魔方矩阵

rand()    创建随机矩阵,服从均匀分布

randn()   创建随机矩阵,服从正态分布

randperm()         创建随机行向量

horcat             C=[A,B],水平聚合矩阵,还可以用cat(1,A,B)

vercat             C=[A;B],垂直聚合矩阵, 还可以用cat(2,A,B)

repmat(M,v,h)      将矩阵M在垂直方向上聚合v次,在水平方向上聚合h次

blkdiag(A,B)     以A,和B为块创建块对角矩阵

length             返回矩阵最长维的的长度

ndims              返回维数

numel              返回矩阵元素个数

size               返回每一维的长度,[rows,cols]=size(A)

reshape            重塑矩阵,reshape(A,2,6),将A变为2×6的矩阵,按列排列。

rot90              旋转矩阵90度,逆时针方向

fliplr             沿垂轴翻转矩阵

flipud             沿水平轴翻转矩阵

transpose          沿主对角线翻转矩阵

ctranspose         转置矩阵,也可用A’或A.’,这仅当矩阵为复数矩阵时才有区别

inv                矩阵的逆

det                矩阵的行列式值

trace              矩阵对角元素的和

norm               矩阵或矢量的范数,norm(a,1),norm(a,Inf)…….

normest            估计矩阵的最大范数矢量

chol               矩阵的cholesky分解

cholinc            不完全cholesky分解

lu                 LU分解

luinc              不完全LU分解

qr                 正交分解

kron(A,B)        A为m×n,B为p×q,则生成mp×nq的矩阵,A的每一个元素都会乘上B,并占据p×q大小的空间

rank               求出矩阵的刺

pinv               求伪逆矩阵

A^p                对A进行操作

A.^P               对A中的每一个元素进行操作

四、数值计算

1、线性方程组求解

(1)AX=B的解可以用X=A\B求。XA=B的解可以用X= A/B求。如果A是m×n的矩阵,当m=n时可以找到唯一解,m<n,不定解,解中至多有m个非零元素。如果m>n,超定系统,至少找到一组解。如果A是奇异的,且AX=B有解,可以用X=pinv(A)×B返回最小二乘解

(2)AX=b,  A=L×U,[L,U]=lu(A),  X=U\(L\b),即用LU分解求解。

(3)QR(正交)分解是将一矩阵表示为一正交矩阵和一上三角矩阵之积,A=Q×R[Q,R]=chol(A),  X=Q\(U\b)

(4)cholesky分解类似。

2、特征值

D=eig(A)返回A的所有特征值组成的矩阵。[V,D]=eig(A),还返回特征向量矩阵。

3、A=U×S×UT,[U,S]=schur(A).其中S的对角线元素为A的特征值。

4、多项式Matlab里面的多项式是以向量来表示的,其具体操作函数如下:

conv           多项式的乘法

deconv         多项式的除法,【a,b】=deconv(s),返回商和余数

poly           求多项式的系数(由已知根求多项式的系数)

polyeig        求多项式的特征值

Polyfit(x,y,n)        多项式的曲线拟合,x,y为被拟合的向量,n为拟合多项式阶数。

polyder        求多项式的一阶导数,polyder(a,b)返回ab的导数

[a,b]=polyder(a,b)返回a/b的导数。

polyint        多项式的积分

polyval        求多项式的值

polyvalm       以矩阵为变量求多项式的值

residue        部分分式展开式

roots          求多项式的根(返回所有根组成的向量)

注:用ploy(A)求出矩阵的特征多项式,然后再求其根,即为矩阵的特征值。

5、插值常用的插值函数如下:

griddata       数据网格化合曲面拟合

Griddata3      三维数据网格化合超曲面拟合

interp1        一维插值(yi=interp1(x,y,xi,’method’)Method=nearest/linear/spline/pchip/cubic

Interp2        二维插值zi=interp1(x,y,z,xi,yi’method’),bilinear

Interp3        三维插值

interpft       用快速傅立叶变换进行一维插值,help fft。

mkpp           使用分段多项式

spline         三次样条插值

pchip          分段hermit插值

6、函数最值的求解

fminbnd(‘f’,x1,x2,optiset(,))求f在 x1和x2之间的最小值。Optiset选项可以有‘Display’+‘iter’/’off’/’final’,分别表示显示计算过程/不显示/只显示最后结果。fminsearch求多元函数的最小值。fzero(‘f’,x1)求一元函数的零点。X1为起始点。同样可以用上面的选项。

五、图像绘制:

1、基本绘图函数

plot            绘制二维线性图形和两个坐标轴

plot3           绘制三维线性图形和两个坐标轴

fplot           在制定区间绘制某函数的图像。fplot(‘f’,区域,线型,颜色)

loglog          绘制对数图形及两个坐标轴(两个坐标都为对数坐标)semilogx        绘制半对数坐标图形

semilogy        绘制半对数坐标图形

2、线型:   颜色           线型

        y   黄色       .  圆点线           v       向下箭头

        g   绿色       -.   组合           >    向右箭头

        b   蓝色       +    点为加号形      <      向左箭头

        m   红紫色     o    空心圆形        p      五角星形

        c   蓝紫色     *    星号           h        六角星形

        w   白色       .    实心小点       hold on   添加图形

        r   红色       x   叉号形状        grid on  添加网格

        k   黑色       s   方形             -    实线       

        d   菱形       --   虚线           ^ 向上箭头     

3、可以用subplot(3,3,1)表示将绘图区域分为三行三列,目前使用第一区域。此时如要画不同的图形在一个窗口里,需要hold on。

附录1.1 管理用命令

函数名    功能描述    函数名    功能描述

addpath    增加一条搜索路径    rmpath    删除一条搜索路径

demo    运行Matlab演示程序    type    列出.M文件

doc    装入超文本文档    version    显示Matlab的版本号

help    启动联机帮助    what    列出当前目录下的有关文件

lasterr    显示最后一条信息    whatsnew    显示Matlab的新特性

lookfor    搜索关键词的帮助    which    造出函数与文件所在的目录

path    设置或查询Matlab路径         

%快速产生数据

X=[1:0.1:100];

基本

plot(X,Y);%最常用

 subplot(2, 2, 1); plot(x, sin(x));%子窗口

plot(x, y1, '--*', x, y2, ':o');%两条线

形状

plot(x, y, 'CLM');%控制颜色,线形状,点C 代表颜色(Colors),L 代表曲线的格式(Line Styles),M代表曲线所用的线标(Markers)。’颜格标 ’

颜色:  r  红色 •c  青色 g绿  b蓝 k黑 m紫红

格式:. 点   -  实线    -.  短虚线  --  长虚线  :  点线

线标:o 圈  +   加号  x  x-符号       * 星号  .点

例:'r--o' 'k:x'

 

文字

xlabel('radian');      %写出x坐标标示

>> ylabel('sine value');      %写出y坐标标示

>> title('ROC');  %写出此图形代表标题

>> legend('sin(x)','e^{-x}');%多条曲线说明

>> grid on         %绘上网格

 

三维

>> [x, y] = meshgrid(-2:0.1:2);%做出 x, y坐标所交集的网格点坐标

>> z = y.*exp(-x.^2-y.^2);

>> plot3(x, y, z);//线

mesh(x, y, z)   % x: 函数图形上x坐标 y: 函数图形上y坐标 z: 函数图形上z坐标

surf(x, y, z)    % x:函数图形上x坐标 y:函数图形上y坐标 z:函数图形上z坐标

ezplot3(x,y,z)             % 绘 x = x(t), y = y(t), and z = z(t)  0 < t < 2*pi

ezplot3(x,y,z,[tmin,tmax])   

plot3(x, y, z)             % 输入x, y, z数据,绘出3D曲线图

附录1.2管理变量与工作空间用命令 

函数名    功能描述    函数名    功能描述

clear    删除内存中的变量与函数    pack    整理工作空间内存

disp    显示矩阵与文本    save    将工作空间中的变量存盘

length    查询向量的维数    size    查询矩阵的维数

load    从文件中装入数据    who,whos    列出工作空间中的变量名

附录1.3文件与操作系统处理命令 

函数名    功能描述    函数名    功能描述

cd    改变当前工作目录    edit    编辑.M文件

delete    删除文件    matlabroot    获得Matlab的安装根目录

diary    将Matlab运行命令存盘    tempdir    获得系统的缓存目录

dir    列出当前目录的内容    tempname    获得一个缓存(temp)文件

!    执行操作系统命令         

附录1.4窗口控制命令 

函数名    功能描述    函数名    功能描述

echo    显示文件中的Matlab中的命令    more    控制命令窗口的输出页面

format    设置输出格式          

附录1.5启动与退出命令 

函数名    功能描述    函数名    功能描述

matlabrc    启动主程序    quit    退出Matlab环境

startup    Matlab自启动程序         

附录2 运算符号与特殊字符附录

2.1运算符号与特殊字符

函数名    功能描述    函数名    功能描述

+    加    ...    续行标志

-    减    ,    分行符(该行结果不显示)

*    矩阵乘    ;    分行符(该行结果显示)

.*    向量乘    %    注释标志

^    矩阵乘方    !    操作系统命令提示符

.^    向量乘方         矩阵转置

kron    矩阵kron积    .    向量转置

\    矩阵左除    =    赋值运算

/    矩阵右除    ==    关系运算之相等

.\    向量左除    ~=    关系运算之不等

./    向量右除    <    关系运算之小于

:    向量生成或子阵提取    <=    关系运算之小于等于

()    下标运算或参数定义    >    关系运算之大于

[]    矩阵生成    >=    关系运算之大于等于

{}         &    逻辑运算之与

.    结构字段获取符    |    逻辑运算之或

.    点乘运算,常与其他运算符联合使用(如.\)    ~    逻辑运算之非

xor    逻辑运算之异成         

附录2.2逻辑函数 

函数名    功能描述    函数名    功能描述

all    测试向量中所用元素是否为真    is*(一类函数)    检测向量状态.其中*表示一个确定的函数(isinf)

any    测试向量中是否有真元素    *isa    检测对象是否为某一个类的对象

exist    检验变量或文件是否定义    logical    将数字量转化为逻辑量

find    查找非零元素的下标         

附录3 语言结构与调试

附录3.1编程语言 

函数名    功能描述    函数名    功能描述

builtin    执行Matlab内建的函数    global    定义全局变量

eval    执行Matlab语句构成的字符串    nargchk    函数输入输出参数个数检验

feval    执行字符串指定的文件    script    Matlab语句及文件信息
function    Matlab函数定义关键词          

附录3.2控制流程 

函数名    功能描述    函数名    功能描述

break    中断循环执行的语句    if    条件转移语句

case    与switch结合实现多路转移    otherwise    多路转移中的缺省执行部分

else    与if一起使用的转移语句    return    返回调用函数

elseif    与if一起使用的转移语句    switch    与case结合实现多路转移

end    结束控制语句块    warning    显示警告信息

error    显示错误信息    while    循环语句

for    循环语句         

附录3.3交互输入 

函数名    功能描述    函数名    功能描述

input    请求输入    menu    菜单生成

keyboard    启动键盘管理    pause    暂停执行

附录3.4面向对象编程 

函数名    功能描述    函数名    功能描述

class    生成对象    isa    判断对象是否属于某一类

double    转换成双精度型    superiorto    建立类的层次关系

inferiorto    建立类的层次关系    unit8    转换成8字节的无符号整数

inline    建立一个内嵌对象         

附录3.5调试 

函数名    功能描述    函数名    功能描述

dbclear    清除调试断点    dbstatus    列出所有断点情况

dbcont    调试继续执行    dbstep    单步执行

dbdown    改变局部工作空间内存    dbstop    设置调试断点

dbmex    启动对Mex文件的调试    sbtype    列出带命令行标号的.M文件

dbquit    退出调试模式    dbup    改变局部工作空间内容

dbstack    列出函数调用关系         

附录4 基本矩阵与矩阵处理

附录4.1基本矩阵 

函数名    功能描述    函数名    功能描述

eye    产生单位阵    rand    产生随机分布矩阵

linspace    构造线性分布的向量    randn    产生正态分布矩阵

logspace    构造等对数分布的向量    zeros    产生零矩阵
ones    产生元素全部为1的矩阵    :    产生向量

附录4.2特殊向量与常量 

函数名    功能描述    函数名    功能描述

ans    缺省的计算结果变量    non    非数值常量常由0/0或Inf/Inf获得

computer    运行Matlab的机器类型    nargin    函数中参数输入个数

eps    精度容许误差(无穷小)    nargout    函数中输出变量个数

flops    浮点运算计数    pi    圆周率

i    复数单元    realmax    最大浮点数值

inf    无穷大    realmin    最小浮点数值

inputname    输入参数名    varargin    函数中输入的可选参数

j    复数单元    varargout    函数中输出的可选参数

附录4.3时间与日期 

函数名    功能描述    函数名    功能描述

calender    日历    eomday    计算月末

clock    时钟    etime    所用时间函数

cputime    所用的CPU时间    now    当前日期与时间

date    日期    tic    启动秒表计时器

datenum    日期(数字串格式)    toc    读取秒表计时器

datestr    日期(字符串格式)    weekday    星期函数

datevoc    日期(年月日分立格式)         

附录4.4矩阵处理 

函数名    功能描述    函数名    功能描述

cat    向量连接    reshape    改变矩阵行列个数

diag    建立对角矩阵或获取对角向量    rot90    将矩阵旋转90度

fliplr    按左右方向翻转矩阵元素    tril    取矩阵的下三角部分

flipud    按上下方向翻转矩阵元素    triu    取矩阵的上三角部分

repmat    复制并排列矩阵函数         

附录5 特殊矩阵 

函数名    功能描述    函数名    功能描述

compan    生成伴随矩阵    invhilb    生成逆hilbert矩阵

gallery    生成一些小的测试矩阵    magic    生成magic矩阵

hadamard    生成hadamard矩阵    pascal    生成pascal矩阵

hankel    生成hankel矩阵    toeplitz    生成toeplitz矩阵

hilb    生成hilbert矩阵    wilkinson    生成wilkinson特征值测试矩阵 

附录6 数学函数

附录6.1三角函数 

函数名    功能描述    函数名    功能描述

sin/asin    正弦/反正弦函数    sec/asec    正割/反正割函数

sinh/asinh    双曲正弦/反双曲正弦函数    sech/asech    双曲正割/反双曲正割函数

cos/acos    余弦/反余弦函数    csc/acsc    余割/反余割函数

cosh/acosh    双曲余弦/反双曲余弦函数    csch/acsch    双曲余割/反双曲余割函数

tan/atan    正切/反正切函数    cot/acot    余切/反余切函数

tanh/atanh    双曲正切/反双曲正切函数    coth/acoth    双曲余切/反双曲余切函数

atan2    四个象限内反正切函数         

附录6.2指数函数 

函数名    功能描述    函数名    功能描述

exp    指数函数    log10    常用对数函数

log    自然对数函数    sqrt    平方根函数

附录6.3复数函数 

函数名    功能描述    函数名    功能描述

abs    绝对值函数    imag    求虚部函数

angle    角相位函数    real    求实部函数

conj    共轭复数函数         

附录6.4数值处理 

函数名    功能描述    函数名    功能描述

fix    沿零方向取整    round    舍入取整

floor    沿-∞方向取整    rem    求除法的余数

ceil    沿+∞方向取整    sign    符号函数

附录6.5其他特殊数学函数 

函数名    功能描述    函数名    功能描述

airy    airy函数    erfcx    比例互补误差函数

besselh    bessel函数(hankel函数)    erfinv    逆误差函数

bessili    改进的第一类bessel函数    expint    指数积分函数

besselk    改进的第二类bessel函数    gamma    gamma函数

besselj    第一类bessel函数    gammainc    非完全gamma函数

bessely    第二类bessel函数    gammaln    gamma对数函数

beta    beta函数    gcd    最大公约数

betainc    非完全的beta函数    lcm    最小公倍数

betaln    beta对数函数    log2    分割浮点数

elipj    Jacobi椭圆函数    legendre    legendre伴随函数

ellipke    完全椭圆积分    pow2    基2标量浮点数

erf    误差函数    rat    有理逼近
erfc    互补误差函数    rats    有理输出”用命令 killall gnome-session重新登录;

参考博客资料:
http://blog.csdn.net/ji0525084/article/details/8488204 http://blog.163.com/realking123@126/blog/static/50526420201092101825118/ http://www.ilovematlab.cn/thread-1715-1-1.html
在此感谢各位博主的分享!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: