当前位置:文档之家› Matlab实用操作指令

Matlab实用操作指令

Matlab实用操作指令
Matlab实用操作指令

matlab编辑器的快捷键

在编辑器(Editor>中:

1> 【Tab】<或【Ctrl+]】)――增加缩进<对多行有效)

2> 【Ctrl+[】--减少缩进<对多行有效)

3> 【Ctrl+I】--自动缩进<即自动排版,对多行有效)

4> 【Ctrl+R】――注释<对多行有效)

5> 【Ctrl+T】――去掉注释<对多行有效)

6>

【Ctrl+B】――括号配对检查<对版本6.5有效,但版本7.0无效,不知道是取消了还是换了另外的快捷键,请大牛们指点,其他版本没有测试过)

7> 【F12】――设置或取消断点

8> 【F5】――运行程序

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( > 返回复数的相位角<弧度的形式,如果要显示度数的话要进行转换,angle( >*180/pi)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

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

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

chol 矩阵的cholesky分解

cholinc 不完全cholesky分解

lu LU分解

luinc 不完全LU分解

qr 正交分解

kron

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时可以找到唯一解,mn,超定系统,至少找到一组解。如果A是奇异的,且AX=B有解,可以用X=pinv

<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,还返回特征向量矩阵。

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

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

conv 多项式的乘法

deconv 多项式的除法,【a,b】=deconv

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

polyeig 求多项式的特征值

Polyfit

polyder 求多项式的一阶导数,polyder

[a,b]=polyder

polyint 多项式的积分

polyval 求多项式的值

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

residue 部分分式展开式

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

注:用ploy

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

griddata 数据网格化合曲面拟合

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

interp1 一维插值Method=nearest/linear/spline/pchip/cubic

Interp2 二维插值zi=interp1(x,y,z,xi,yi’method’>,bili near

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路径

附录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 有理输出

=============================================================== =

A a

abs 绝对值、模、字符的ASCII码值

acos 反余弦

acosh 反双曲余弦

acot 反余切

acoth 反双曲余切

acsc 反余割

acsch 反双曲余割

align 启动图形对象几何位置排列工具

all 所有元素非零为真

angle 相角

ans 表达式计算结果的缺省变量名

any 所有元素非全零为真

area 面域图

argnames 函数M文件宗量名

asec 反正割

asech 反双曲正割

asin 反正弦

asinh 反双曲正弦

assignin 向变量赋值

atan 反正切

atan2 四象限反正切

atanh 反双曲正切

autumn 红黄调秋色图阵

axes 创建轴对象的低层指令

axis 控制轴刻度和风格的高层指令

B b

bar 二维直方图

bar3 三维直方图

bar3h 三维水平直方图

barh 二维水平直方图

base2dec X进制转换为十进制

bin2dec 二进制转换为十进制

blanks 创建空格串

bone 蓝色调黑白色图阵

box 框状坐标轴

break while 或for 环中断指令

brighten 亮度控制

C c

capture <3版以前)捕获当前图形

cart2pol 直角坐标变为极或柱坐标

cart2sph 直角坐标变为球坐标

cat 串接成高维数组

caxis 色标尺刻度

cd 指定当前目录

cdedit 启动用户菜单、控件回调函数设计工具cdf2rdf 复数特征值对角阵转为实数块对角阵ceil 向正无穷取整

cell 创建元胞数组

cell2struct 元胞数组转换为构架数组celldisp 显示元胞数组内容

cellplot 元胞数组内部结构图示

char 把数值、符号、内联类转换为字符对象chi2cdf 分布累计概率函数

chi2inv 分布逆累计概率函数

chi2pdf 分布概率密度函数

chi2rnd 分布随机数发生器

chol Cholesky分解

clabel 等位线标识

cla 清除当前轴

class 获知对象类别或创建对象

clc 清除指令窗

clear 清除内存变量和函数

clf 清除图对象

clock 时钟

colorcube 三浓淡多彩交叉色图矩阵colordef 设置色彩缺省值

colormap 色图

colspace 列空间的基

close 关闭指定窗口

colperm 列排序置换向量

comet 彗星状轨迹图

comet3 三维彗星轨迹图

compass 射线图

compose 求复合函数

cond <逆)条件数

condeig 计算特征值、特征向量同时给出条件数condest 范 -1条件数估计

conj 复数共轭

contour 等位线

contourf 填色等位线

contour3 三维等位线

contourslice 四维切片等位线图

conv 多项式乘、卷积

cool 青紫调冷色图

copper 古铜调色图

cos 余弦

cosh 双曲余弦

cot 余切

coth 双曲余切

cplxpair 复数共轭成对排列

csc 余割

csch 双曲余割

cumsum 元素累计和

cumtrapz 累计梯形积分

cylinder 创建圆柱

D d

dblquad 二重数值积分

deal 分配宗量

deblank 删去串尾部的空格符

dec2base 十进制转换为X进制

dec2bin 十进制转换为二进制

dec2hex 十进制转换为十六进制

deconv 多项式除、解卷

delaunay Delaunay 三角剖分

del2 离散Laplacian差分

demo Matlab演示

det 行列式

diag 矩阵对角元素提取、创建对角阵

diary Matlab指令窗文本内容记录

diff 数值差分、符号微分

digits 符号计算中设置符号数值的精度

dir 目录列表

disp 显示数组

display 显示对象内容的重载函数

dlinmod 离散系统的线性化模型

dmperm 矩阵Dulmage-Mendelsohn 分解dos 执行DOS 指令并返回结果

double 把其他类型对象转换为双精度数值drawnow 更新事件队列强迫Matlab刷新屏幕dsolve 符号计算解微分方程

E e

echo M文件被执行指令的显示

edit 启动M文件编辑器

eig 求特征值和特征向量

eigs 求指定的几个特征值

end 控制流FOR等结构体的结尾元素下标eps 浮点相对精度

error 显示出错信息并中断执行

errortrap 错误发生后程序是否继续执行的控制erf 误差函数

erfc 误差补函数

erfcx 刻度误差补函数

erfinv 逆误差函数

errorbar 带误差限的曲线图

etreeplot 画消去树

eval 串演算指令

evalin 跨空间串演算指令

exist 检查变量或函数是否已定义

exit 退出Matlab环境

exp 指数函数

expand 符号计算中的展开操作

expint 指数积分函数

expm 常用矩阵指数函数

expm1 Pade法求矩阵指数

expm2 Taylor法求矩阵指数

expm3 特征值分解法求矩阵指数

eye 单位阵

ezcontour 画等位线的简捷指令ezcontourf 画填色等位线的简捷指令ezgraph3 画表面图的通用简捷指令ezmesh 画网线图的简捷指令

ezmeshc 画带等位线的网线图的简捷指令ezplot 画二维曲线的简捷指令

ezplot3 画三维曲线的简捷指令

ezpolar 画极坐标图的简捷指令

ezsurf 画表面图的简捷指令

ezsurfc 画带等位线的表面图的简捷指令

F f

factor 符号计算的因式分解

feather 羽毛图

feedback 反馈连接

feval 执行由串指定的函数

fft 离散Fourier变换

fft2 二维离散Fourier变换

fftn 高维离散Fourier变换

fftshift 直流分量对中的谱

fieldnames 构架域名

figure 创建图形窗

fill3 三维多边形填色图

find 寻找非零元素下标

findobj 寻找具有指定属性的对象图柄findstr 寻找短串的起始字符下标findsym 机器确定内存中的符号变量finverse 符号计算中求反函数

fix 向零取整

flag 红白蓝黑交错色图阵

fliplr 矩阵的左右翻转

flipud 矩阵的上下翻转

flipdim 矩阵沿指定维翻转

floor 向负无穷取整

flops 浮点运算次数

flow Matlab提供的演示数据

fmin 求单变量非线性函数极小值点<旧版)fminbnd 求单变量非线性函数极小值点

fmins 单纯形法求多变量函数极小值点<旧版)fminunc 拟牛顿法求多变量函数极小值点fminsearch 单纯形法求多变量函数极小值点fnder 对样条函数求导

fnint 利用样条函数求积分

fnval 计算样条函数区间内任意一点的值

fnplt 绘制样条函数图形

fopen 打开外部文件

for 构成for环用

format 设置输出格式

fourier Fourier 变换

fplot 返函绘图指令

fprintf 设置显示格式

fread 从文件读二进制数据

fsolve 求多元函数的零点

full 把稀疏矩阵转换为非稀疏阵

funm 计算一般矩阵函数

funtool 函数计算器图形用户界面

fzero 求单变量非线性函数的零点

G g

gamma 函数

gammainc 不完全函数

gammaln 函数的对数

gca 获得当前轴句柄

gcbo 获得正执行"回调"的对象句柄

gcf 获得当前图对象句柄

gco 获得当前对象句柄

geomean 几何平均值

get 获知对象属性

getfield 获知构架数组的域

getframe 获取影片的帧画面

ginput 从图形窗获取数据

global 定义全局变量

gplot 依图论法则画图

gradient 近似梯度

gray 黑白灰度

grid 画分格线或网格线

griddata 规则化数据和曲面拟合gtext 由鼠标放置注释文字

guide 启动图形用户界面交互设计工具H h

harmmean 调和平均值

help 在线帮助

helpwin 交互式在线帮助

helpdesk 打开超文本形式用户指南hex2dec 十六进制转换为十进制

hex2num 十六进制转换为浮点数hidden 透视和消隐开关

hilb Hilbert矩阵

hist 频数计算或频数直方图

histc 端点定位频数直方图

histfit 带正态拟合的频数直方图

hold 当前图上重画的切换开关horner 分解成嵌套形式

hot 黑红黄白色图

hsv 饱和色图

I i

if-else-elseif 条件分支结构

ifft 离散Fourier反变换

ifft2 二维离散Fourier反变换

ifftn 高维离散Fourier反变换

ifftshift 直流分量对中的谱的反操作ifourier Fourier反变换

i, j 缺省的"虚单元"变量

ilaplace Laplace反变换

imag 复数虚部

image 显示图象

imagesc 显示亮度图象

imfinfo 获取图形文件信息

imread 从文件读取图象

imwrite 把

imwrite 把图象写成文件

ind2sub 单下标转变为多下标

inf 无穷大

info MathWorks公司网点地址

inline 构造内联函数对象

inmem 列出内存中的函数名

input 提示用户输入

inputname 输入宗量名

int 符号积分

int2str 把整数数组转换为串数组interp1 一维插值

interp2 二维插值

interp3 三维插值

interpn N维插值

interpft 利用FFT插值

intro Matlab自带的入门引导

inv 求矩阵逆

invhilb Hilbert矩阵的准确逆ipermute 广义反转置

isa 检测是否给定类的对象

ischar 若是字符串则为真

isequal 若两数组相同则为真isempty 若是空阵则为真

isfinite 若全部元素都有限则为真isfield 若是构架域则为真

isglobal 若是全局变量则为真ishandle 若是图形句柄则为真

ishold 若当前图形处于保留状态则为真isieee 若计算机执行IEEE规则则为真isinf 若是无穷数据则为真

isletter 若是英文字母则为真islogical 若是逻辑数组则为真ismember 检查是否属于指定集isnan 若是非数则为真

isnumeric 若是数值数组则为真isobject 若是对象则为真

isprime 若是质数则为真

isreal 若是实数则为真

isspace 若是空格则为真

issparse 若是稀疏矩阵则为真

isstruct 若是构架则为真

isstudent 若是Matlab学生版则为真iztrans 符号计算Z反变换

J j , K k

jacobian 符号计算中求Jacobian 矩阵jet 蓝头红尾饱和色

jordan 符号计算中获得 Jordan标准型keyboard 键盘获得控制权

kron Kronecker乘法规则产生的数组

L l

laplace Laplace变换

lasterr 显示最新出错信息

lastwarn 显示最新警告信息

leastsq 解非线性最小二乘问题<旧版)legend 图形图例

lighting 照明模式

line 创建线对象

lines 采用plot 画线色

linmod 获连续系统的线性化模型linmod2 获连续系统的线性化精良模型linspace 线性等分向量

ln 矩阵自然对数

load 从MAT文件读取变量

log 自然对数

log10 常用对数

log2 底为2的对数

loglog 双对数刻度图形

logm 矩阵对数

logspace 对数分度向量

lookfor 按关键字搜索M文件

lower 转换为小写字母

lsqnonlin 解非线性最小二乘问题

lu LU分解

M m

mad 平均绝对值偏差

magic 魔方阵

maple &nb, sp。运作 Maple格式指令

mat2str 把数值数组转换成输入形态串数组material 材料反射模式

max 找向量中最大元素

mbuild 产生EXE文件编译环境的预设置指令mcc 创建MEX或EXE文件的编译指令

mean 求向量元素的平均值

median 求中位数

menuedit 启动设计用户菜单的交互式编辑工具mesh 网线图

meshz 垂帘网线图

meshgrid 产生"格点"矩阵

methods 获知对指定类定义的所有方法函数mex 产生MEX文件编译环境的预设置指令mfunlis 能被mfun计算的MAPLE经典函数列表mhelp 引出 Maple的在线帮助

min 找向量中最小元素

mkdir 创建目录

mkpp 逐段多项式数据的明晰化

mod 模运算

more 指令窗中内容的分页显示

movie 放映影片动画

moviein 影片帧画面的内存预置

mtaylor 符号计算多变量Taylor级数展开

N n

ndims 求数组维数

NaN 非数<预定义)变量

nargchk 输入宗量数验证

nargin 函数输入宗量数

nargout 函数输出宗量数

ndgrid 产生高维格点矩阵

newplot 准备新的缺省图、轴

nextpow2 取最接近的较大2次幂

nnz 矩阵的非零元素总数

nonzeros 矩阵的非零元素

norm 矩阵或向量范数

normcdf 正态分布累计概率密度函数

normest 估计矩阵2范数

norminv 正态分布逆累计概率密度函数normpdf 正态分布概率密度函数

normrnd 正态随机数发生器

notebook 启动Matlab和Word的集成环境

null 零空间

num2str 把非整数数组转换为串

numden 获取最小公分母和相应的分子表达式nzmax 指定存放非零元素所需内存

O o

ode1 非Stiff 微分方程变步长解算器

ode15s Stiff 微分方程变步长解算器

ode23t 适度Stiff 微分方程解算器

ode23tb Stiff 微分方程解算器

ode45 非Stiff 微分方程变步长解算器

odefile ODE 文件模板

odeget 获知ODE 选项设置参数

odephas2 ODE 输出函数的二维相平面图odephas3 ODE 输出函数的三维相空间图odeplot ODE 输出函数的时间轨迹图

odeprint 在Matlab指令窗显示结果

odeset 创建或改写 ODE选项构架参数值

ones 全1数组

optimset 创建或改写优化泛函指令的选项参数值orient 设定图形的排放方式

orth 值空间正交化

P p

pack 收集Matlab内存碎块扩大内存

pagedlg 调出图形排版对话框

patch 创建块对象

path 设置Matlab搜索路径的指令

pathtool 搜索路径管理器

(整理)matlab16常用计算方法.

常用计算方法 1.超越方程的求解 一超越方程为 x (2ln x – 3) -100 = 0 求超越方程的解。 [算法]方法一:用迭代算法。将方程改为 01002ln()3 x x =- 其中x 0是一个初始值,由此计算终值x 。取最大误差为e = 10-4,当| x - x 0| > e 时,就用x 的值换成x 0的值,重新进行计算;否则| x - x 0| < e 为止。 [程序]P1_1abs.m 如下。 %超越方程的迭代算法 clear %清除变量 x0=30; %初始值 xx=[]; %空向量 while 1 %无限循环 x=100/(2*log(x0)-3); %迭代运算 xx=[xx,x]; %连接结果 if length(xx)>1000,break ,end %如果项数太多则退出循环(暗示发散) if abs(x0-x)<1e-4,break ,end %当精度足够高时退出循环 x0=x; %替换初值 end %结束循环 figure %创建图形窗口 plot(xx,'.-','LineWidth',2,'MarkerSize',12)%画迭代线'.-'表示每个点用.来表示,再用线连接 grid on %加网格 fs=16; %字体大小 title('超越方程的迭代折线','fontsize',fs)%标题 xlabel('\itn','fontsize',fs) %x 标签 ylabel('\itx','fontsize',fs) %y 标签 text(length(xx),xx(end),num2str(xx(end)),'fontsize',fs)%显示结果 [图示]用下标作为自变量画迭代的折线。如P0_20_1图所示,当最大误差为10-4时,需要迭代19次才能达到精度,超越方程的解为27.539。 [算法]方法二:用求零函数和求解函数。将方程改为函数 100()2ln()3f x x x =-- MATLAB 求零函数为fzero ,fzero 函数的格式之一是 x = fzero(f,x0) 其中,f 表示求解的函数文件,x0是估计值。fzero 函数的格式之二是 x = fzero(f,[x1,x2])

Matlab使用技巧

Matlab-scope示波器菜单调用命令set(0,'ShowHiddenHandles','on'); set(gcf,'menubar','figure'); 一般的测量检测模块是把示波器输入端连到要测量的参数所在点或者回路。Multimeter则不一样。楼主有没有注意过有的模块的连接是尖头的,有的是一个圆圈形状的?可以理解为尖头的是弱电或数字信号,可以用示波器直接测。圆头的是强电信号,不能直接用示波器。对于这样的信号,一般是:有些器件(强电器件)打开后,器件设置单中最后有一栏是“测量量”,选择测量什么信号以后,再用Multimeter“不接触测量”。比如:一个RLC模块,最后一栏选定“测量所有电流电压”。注意这之前Multimeter打开左栏是空白的,外观是一个“回”里面一个“0”,选定RLC“测量所有电流电压”后打开Multimeter,左栏就有RLC的电流电压什么的了。选定要测的,移到右栏,就可以用示波器测波形了。此后“回”里面就不是“0”了,而是用户选择测量的数据个数了。matlab 6.5/7.0——simulink模型无法保存及其兼容性问题完整解决方案2009-06-25 09:45 mdl文件在6.5里面做的,但是到了7.0里面却打不开,下面就是相关信息:Warning: Unable to load model file 'd:\MATLAB7\work\*.mdl'. Run "bdclose all;

set_param(0, 'CharacterEncoding', Enc)" where Enc is one of windows-1252, ISO-8859-1, then load the model. The first character that is not supported in the current character encoding setting ('ibm-1386_P100-2002') occurs on line 1795, byte offset 21. To correctly load models with non-ASCII characters, you must explicitly use the character encoding that was used to save the file. Type "help slCharacterEncoding" for more information on setting character encoding and to learn more about which encodings are commonly found on your platform. 或 者是直接保存出现如下信息:Error while saving model 'untitled'using the character encoding setting 'ibm..... 问题产生原因:模型中含有不能识别的字符,比如中文等等,尤其是matlab对中文的支持不是很 好(不知道是不是D版的原因)。解决的办法:(1)在工作空间中输入下列命令,然后打开bdclose all; set_param(0,'CharacterEncoding','windows-1252') 或(2)在工作空间中输入下列命令,然后打开bdclose all set_param(0, 'CharacterEncoding', 'ISO-8859-1') 或(3)在工作空间中输入下列命令,然后

matlab编程技巧

1、. Ctrl+C 中断正在执行的操作 如果程序不小心进入死循环,或者计算时间太长,可以在命令窗口中使用Ctrl+c来中断。MATLAB这时可能正疲于应付,响应会有些滞后。 2. figure命令新建一个绘图窗口 figure 可以打开一个空的绘图窗口,接下的绘图命令可以将图画在它里面,而不会覆盖以前的绘图窗口。当有多个figure窗口时,在命令窗口中执行如Plot等命令将覆盖当前figure窗口中的对象。所谓的当前figure窗口,也就是最后一次查看的窗口(可以用命令gcf得到)。 figure(N),将编号为N的窗口置为当前figure,出现在所有窗口的最前面,如果该窗口不存在,则新建一个编号为N的空白figure。 3. 注释掉一段程序:%{、%}。 经典方法是用 if 0,但缺点是不够直观,注释掉的内容仍然保持代码的颜色。现在可以用 %和{ 的组合。输入%{后,后面的代码都会变绿,在注释结束的地方再加上 %} 。 也可以选中要注释内容,在右键菜单中选择Comment (Uncomment去掉注释标记),或使用快捷键Ctrl+R。 将光标放在需要注释的行中,按Ctrl+R,将该行变为注释。取消注释也是一样的,快捷键为Ctrl+T。 4. doc 命令名,打开命令的帮助文档 与help命令不同,帮助文档MATLAB Help中对命令的描述更详细,往往还有一些例子,更便于理解。 5. clc 清屏 清除命令窗口中的所有输入和输出信息,不影响命令的历史记录。 6. clear 和clear all clear 变量名:可以清除workspace中的无用的变量,尤其是一些特别大的矩阵,不用时及时清理,可以减少内存占用。 clear all 清除所有的变量,使workspace一无所有,当重新开始一次算法验证时,最好执行一次,让workspace中的变量一目了然。 7. close all 如果开了多个绘图窗口,用这个命令将它们一起关掉。 8. 上下光标键↑↓ 在命令窗口中,上下光标键可以将历史记录中的命令复制到输入位置,便于快速重新执行。如果输入命令的前几个字母如 [row, col] =,再使用光标键,则只会选择以这些字母开始的命令。 9. Tab补全 对名称记得不太清楚的命令,可以输入开头的几个字母,然后按Tab键,当只有一个以这些字母开头的命令时,将自动补全命令名,否则显示一个命令名列表,方便从中选择。当然,只在命令窗口中有效。 10. cell模式 在一个长长的脚本m文件中,可能需要对其中的一段反复修改,查看执行效果,这时,cell模式就非常有用了。cell模式相当于将其中的代码拷贝到命令窗口中运行。两个%后接一个空格(%% )开始一个cell。将输入光标放到一个cell中时,背景将变为浅黄色,Ctrl+Enter执行cell中的代码。 执行cell中代码时不需要保存m文件,该m文件可以不在路径列表中。 cell模式中,断点不起作用,当然,调用的子程序中的断点还是正常的。 11. 获取文件列表,批处理

MATLAB使用方法1

A a abs绝对值、模、字符的ASCII码值acos反余弦 acosh反双曲余弦 acot反余切 acoth反双曲余切 acsc反余割 acsch反双曲余割 align启动图形对象几何位置排列工具all所有元素非零为真 angle相角 ans表达式计算结果的缺省变量名any所有元素非全零为真 area面域图 argnames函数M文件宗量名 asec反正割 asech反双曲正割 asin反正弦 asinh反双曲正弦 assignin向变量赋值 atan反正切 atan2四象限反正切 atanh反双曲正切 autumn红黄调秋色图阵 axes创建轴对象的低层指令 axis控制轴刻度和风格的高层指令 B b bar二维直方图 bar3三维直方图 bar3h三维水平直方图 barh二维水平直方图 base2dec X进制转换为十进制 bin2dec二进制转换为十进制blanks创建空格串 bone蓝色调黑白色图阵 box框状坐标轴 break while或for环中断指令brighten亮度控制C c capture(3版以前)捕获当前图形 cart2pol直角坐标变为极或柱坐标 cart2sph直角坐标变为球坐标 cat串接成高维数组 caxis色标尺刻度 cd指定当前目录 cdedit启动用户菜单、控件回调函数设计工具 cdf2rdf复数特征值对角阵转为实数块对角阵 ceil向正无穷取整 cell创建元胞数组 cell2struct元胞数组转换为构架数组celldisp显示元胞数组内容 cellplot元胞数组内部结构图示 char把数值、符号、内联类转换为字符对象 chi2cdf分布累计概率函数 chi2inv分布逆累计概率函数 chi2pdf分布概率密度函数 chi2rnd分布随机数发生器 chol Cholesky分解 clabel等位线标识 cla清除当前轴 class获知对象类别或创建对象 clc清除指令窗 clear清除内存变量和函数 clf清除图对象 clock时钟 colorcube三浓淡多彩交叉色图矩阵colordef设置色彩缺省值 colormap色图 colspace列空间的基 close关闭指定窗口 colperm列排序置换向量 comet彗星状轨迹图 comet3三维彗星轨迹图 compass射线图

matlab入门教程文献

MATLAB入门教程 1.MATLAB的基本知识 1-1、基本运算与函数 在MATLAB下进行基本数学运算,只需将运算式直接打入提示号(>>)之後,并按入Enter键即可。例如: >> (5*2+1.3-0.8)*10/25 ans =4.2000 MATLAB会将运算结果直接存入一变数ans,代表MATLAB运算後的答案(Answer)并显示其数值於萤幕上。 小提示:">>"是MATLAB的提示符号(Prompt),但在PC中文视窗系统下,由於编码方式不同,此提示符号常会消失不见,但这并不会影响到MATLAB的运算结果。 我们也可将上述运算式的结果设定给另一个变数x: x = (5*2+1.3-0.8)*10^2/25 x = 42 此时MATLAB会直接显示x的值。由上例可知,MATLAB认识所有一般常用到的加(+)、减(-)、乘(*)、除(/)的数学运算符号,以及幂次运算(^)。小提示:MATLAB将所有变数均存成double的形式,所以不需经过变数宣告(Variable declaration)。MATLAB同时也会自动进行记忆体的使用和回收,而不必像C语言,必须由使用者一一指定.这些功能使的MATLAB易学易用,使用者可专心致力於撰写程式,而不必被软体枝节问题所干扰。 若不想让MATLAB每次都显示运算结果,只需在运算式最後加上分号(;)即可,如下例: y = sin(10)*exp(-0.3*4^2); 若要显示变数y的值,直接键入y即可: >>y y =-0.0045 在上例中,sin是正弦函数,exp是指数函数,这些都是MA TLAB常用到的数学函数。 下表即为MATLAB常用的基本数学函数及三角函数: 小整理:MATLAB常用的基本数学函数 abs(x):纯量的绝对值或向量的长度 angle(z):复数z的相角(Phase angle) sqrt(x):开平方 real(z):复数z的实部 imag(z):复数z的虚部 conj(z):复数z的共轭复数 round(x):四舍五入至最近整数 fix(x):无论正负,舍去小数至最近整数 floor(x):地板函数,即舍去正小数至最近整数

(完整版)matlab的一些画图技巧

matlab中如何在指定一点画一个填充颜色的小圆 plot(1,1,'r.','markersize',50) 二维作图 绘图命令plot绘制x-y坐标图;loglog命令绘制对数坐标图;semilogx和semilogy命令绘制半对数坐标图;polor命令绘制极坐标图. 基本形式 如果y是一个向量,那么plot(y)绘制一个y中元素的线性图.假设我们希望画出 y=[0., 0.48, 0.84, 1., 0.91, 6.14 ] 则用命令:plot(y) 它相当于命令:plot(x, y),其中x=[1,2,…,n]或x=[1;2;…;n],即向量y的下标编号, n为向量y的长度 Matlab会产生一个图形窗口,显示如下图形,请注意:坐标x和y是由计算机自动绘出的. 图4.1.1.1 plot([0.,0.48,0.84,1.,0.91,6.14])

上面的图形没有加上x轴和y轴的标注,也没有标题.用xlabel,ylabel,title 命令可以加上. 如果x,y是同样长度的向量,plot(x,y)命令可画出相应的x元素与y元素的x-y坐标图.例: x=0:0.05:4*pi; y=sin(x); plot(x,y) grid on, title(' y=sin( x )曲线图' ) xlabel(' x = 0 : 0.05 : 4Pi ') 结果见下图. 图4.1.1.2 y=sin(x)的图形 title图形标题 xlabel x坐标轴标注 ylabel y坐标轴标注 text标注数据点

legend 在右上角加解释 文字 grid给图形加上网格 hold保持图形窗口的图形 表4.1.1.1 Matlab图形命令 多重线 在一个单线图上,绘制多重线有三种办法. 第一种方法是利用plot的多变量方式绘制: plot(x1,y1,x2,y2,...,xn,yn) x1,y1,x2,y2,...,xn,yn是成对的向量,每一对x, y在图上产生如上方式的单线.多变量方式绘图是允许不同长度的向量显示在同一图形上.第二种方法也是利用plot绘制,但加上hold on/off命令的配合:plot(x1,y1) hold on plot(x2,y2) hold off 第三种方法还是利用plot绘制,但代入矩阵:

matlab技巧

axis([xmin xmax ymin ymax]) 设置当前图形的坐标范围,分别为x轴的最小、最大值,y轴的最小最大值 坐标轴的编辑在figure—edit—axe property中 一、散点图 1.1.命令 plot 功能线性二维图。在线条多于一条时,若用户没有指定使用颜色,则plot循环使用由当前坐标轴颜色顺序属性(current axes ColorOrder property)定义的颜色,以区别不同的线条。在用完上述属性值后,plot又循环使用由坐标轴线型顺序属性(axes LineStyleOrder property)定义的线型,以区别不同的线条。 用法 plot(X,Y) 当X,Y均为实数向量,且为同维向量(可以不是同型向量),X=[x(i)],Y=[y(i)],则plot(X,Y)先描出点(x(i),y(i)),然后用直线依次相连;若X,Y为复数向量,则不考虑虚数部分。若X,Y均为同维同型实数矩阵,X = [X(i)],Y = [Y(i)],其中X(i),Y(i)为列向量,则plot(X,Y)依次画出plot(X(i),Y(i)),矩阵有几列就有几条线;若X,Y中一个为向量,另一个为矩阵,且向量的维数等于矩阵的行数或者列数,则矩阵按向量的方向分解成几个向量,再与向

量配对分别画出,矩阵可分解成几个向量就有几条线;在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。 plot(Y) 若Y为实数向量,Y的维数为m,则plot(Y)等价于plot(X,Y),其中x=1:m;若y为实数矩阵,则把y按列的方向分解成几个列向量,而y 的行数为n,则plot(Y)等价于plot(X,Y)其中x=[1;2;…;n];在上述的几种使用形式中,若有复数出现,则复数的虚数部分将不被考虑。 plot(X1,Y1,X2,Y2,…),其中Xi与Yi成对出现,plot(X1,Y1,X2,Y2,…)将分别按顺序取两数据Xi与Yi进行画图。若其中仅仅有Xi或Yi是矩阵,其余的为向量,向量维数与矩阵的维数匹配,则按匹配的方向来分解矩阵,再分别将配对的向量画出。 plot(X1,Y1,LineSpec1,X2,Y2,LineSpec2…) 将按顺序分别画出由三参数定义Xi,Yi,LineSpeci的线条。其中参数LineSpeci指明了线条的类型,标记符号,和画线用的颜色。在plot 命令中我们可以混合使用三参数和二参数的形式: plot(X1,Y1,LineSpec1,X2,Y2,X3,Y3,LineSpec3) plot(…,'PropertyName',PropertyValue,…) 对所有的用plot生成的line图形对象中指定的属性进行恰当的设置。 h = plot(…) 返回line图形对象句柄的一列向量,一线条对应一句柄值。 说明参数LineSpec 功能定义线的属性。Maltab允许用户对线条定义如下的特性: 1.线型 表7-1 2.线条宽度

MATLAB基础及应用教程

第4章程序设计 在前面我们已经看到,MATLAB不但可以在命令窗直接输入命令并运行,而且还可以生成自己的程序文件,这就是我们通常说的一类以M为后缀的M文件,本章我们就来研究这类文件的形成方法。 M文件可分分为两大类,一是命令式M文件(也称为脚本文件,script),二是函数式M 文件(function)。两类文件的区别在于: (1)命令式文件可以直接运行,函数式文件不能直接运行,只能调用。 (2)命令式文件运行时没有输入输出参量,函数式文件在调用时需要进行输入输出参量设置。 (3)命令式文件运行中可以调用工作空间的数据,运行中产生的所有变量为全局变量。 (4)函数式文件不能调用工作空间的数据,运行中产生的所有变量为局部变量。命令式文件运行中产生的所有变量为全局变量,可以调用和存储到工作空间的数据。 4.1 MATLAB的程序文件-M文件 4.1.1 脚本文件(Scripts) 当我们需要在命令窗进行大量的命令集合运行时,直接从命令窗口输入比较麻烦,这时就可以将这些命令集合存放在一个脚本文件(Scripts)中,运行时只需要输入其文件名就可以自动执行这些命令集合。需要注意的是,脚本文件运行所产生的变量都驻留在MATLAB 的工作空间中,同时脚本文件也可以调用工作空间中的数据。因此,脚本文件所涉及的变量是全局变量。前几章所涉及到的M文件都是这类脚本文件。 编辑一个脚本文件可以直接在命令窗口的左上角打开编辑窗进行编辑。 4.1.2 函数文件(function) 函数式文件(function)的构成 (1)函数定义行: Function [输出参量]=gauss(输入参量) (2): 完成函数的功能。 (3)函数说明。 (4)函数行注。 从上面构成的情况看,函数式文件实际上是完成输入参量与输出参量的转换,这样的转换是由函数文件名为gauss的文件来完成的。函数体的功能必须说明清楚输入参量与输出参量的关系。函数说明是用来解释该函数的功能的,函数行注是对程序行进行说明的。上面(1)和(2)是必须的。 【例4-1】分析下面函数文件。 %一个数列,任意项等于前两项之和,输入项数可以给出这个数列

matlab使用技巧整理

Title中引入变量 (1) MATLAB简单图像读写 (2) 坐标控制 (5) 显示特殊字符 (5) matlab导出数据(fprintf,dlmwrite,xlswrite) (6) MATLAB取整函数的应用 (11) matlab里有关于集合运算的函数: (12) 线型:颜色线型 (13) 用matlab绘制箭头1 (14) 数组逆序 (16) 模运算 (17) 删除数组中一个或多个元素 (18) matlab中fopen函数在指定文件打开的实例如下: (18) matlab图片保存为eps格式后中文显示乱码 (20) Matlab中digits()与vpa() (22) Title中引入变量 问题描述:我现在i=8,希望在title命令中引用i,以便在图形上能显示出i 的值8 方法:title(['figure ',num2str(i)]); 注意:有两点,一是title中引入中括号[];二是用到函数num2str(i) 推广:在title中引入多个变量,如下: title(['频率f=401.5MHz,障碍物在距离发射天线',num2str(zaw_location),'m处,障碍物高度',num2str(R),'m']); 例子: clear clc theta= 0:pi/20:2*pi; p=1000; e1=0; r1=p./(1-e1.*cos(theta)); l1=min(r1); subplot(1,3,1); polar(theta,r1) title(['1.the minnus distance is ',num2str(l1)]) e2=0.25; r2=p./(1-e2.*cos(theta)); l2=min(r2); subplot(1,3,2); polar(theta,r2) title(['2.the minnus distance is ',num2str(l2)]) e3=0.5;

matlab使用技巧

matlab的默认字体总是helvetica,每次担心会产生字体会和IEEE的字体库产生冲突或者reviewer那边的电脑没有办法打开,上网查了一阵,把这个让人烦又简单的东西干掉了,其实就四句话。以前在画每一个子图的时候,设置一下字体就可以了,省得每一次都点属性设置,烦死了。但是一定要在编辑了标题和label之前,否则就得不偿失了,会把已经输入的东西覆盖掉的。以后又可以省掉一点琐事了。 set(gca,'FontSize',10, 'FontName','Arial') xlabel('test','FontSize',10,'FontName','Arial') ylabel('test','FontSize',10,'FontName','Arial') legend('test','FontSize',10,'FontName','Arial') title('test','FontSize',13,'FontName','Times New Roman') %{ {figure_FontSize=12; set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top'); set(get(gca,'YLabel'),'FontSize',figure_FontSize,'Vertical','middle'); set(findobj('FontSize',12),'FontSize',figure_FontSize); %}这4句是将字体大小改为8号字,在小图里很清晰 %set(gcf,'Position',[100 100 260 220]);%这句是设置绘图的大小,不需要到word里再调整大小。我给的参数,图的大小是7cm %set(gca,'Position',[.13 .17 .80 .74]);%这句是设置xy轴在图片中占的比例,可能需要自己微调。 %set(findobj(get(gca,'Children'),'LineWidth',,'LineWidth',2);%这句是 将线宽改为2 set(gca, 'Fontname', 'Times newman', 'Fontsize', 12);%设置图片的字体类型和字号大小的。

Matlab常用小命令及技巧总结

目录 1.随机变量生成 (2) 2.多项式运算 (2) 3.输入变量个数 (3) 4.通过mentagna产生数据,使用如下命令画出图像。 (3) 5. 一幅图显示多个图像 (3) 6.inline定义函数 (4) 7.m文件命名不要带() (4) 8. 用法:linspace(x1,x2,N) (4) 9. 句柄@ (4) 10.画三维图 (5) 11.画概率密度函数图 (5) 12.行求和,列求和 (6) 13.eye(5) 和 eye(5,5) 效果一样。 (6) 14.程序段 (6) 15.求Exp的矩阵次幂。 (6) 16.hist划分区间 (7) 17.ctrl+R,批量注释,ctrl+T批量取消注释 (8) 18.zeros(5)生成5行5列的零元素矩阵。 (8) 19.formatSpec = 'The array is %dx%d.'; (8) 20.数据取整,四舍五入 (9) 21.实现饼图每个部分的依次跳跃 (9) 22. try和catch (9) 23.可变个数参数输入 (10) 24.在title中引用变量值,比如 (10) 25.希腊字母与符号 (10) 26.保存图片的命令 (12) 27.matlab程序部分运行 (12) 28.运算变量保存为txt,及读取 (12) 29.画多条曲线图例 (13) 30.图像调整后保存 (14) 31.保存程序运行过程中的图像,数组等信息 (15) 32.关闭所有的图像 (15) 33.matlab中的numel函数 (15) 34.数值计算二重积分 (16) 37. matlab Y轴坐标怎么改变汉字方向 (17) 38.画图坐标轴显示导数的点 (17) 39.设置图像坐标轴刻度 (17) 40.matlab 调整图例颜色 (18) 41. 赋值具有的非单一 rhs 维度多于非单一下标数 (18)

MATLAB编程技巧

MATLAB编程技巧 这里只介绍加快MATLAB程序编程效率的建议,其他内容请参见作者著作。 因为 MATLAB 语言是一种解释性语言,所以有时 MATLAB 程序的执行速度不是很理想。这里将依照作者十多年的实际编程经验给出加快 MATLAB 程序执行速度的一些建议和体会。 尽量避免使用循环:循环语句及循环体经常被认为是~MATLAB 编程的瓶颈问题。 改进这样的状况有两种方法: o尽量用向量化的运算来代替循环操作。我们将通过如下的例子来演示如何 将一般的循环结构转换成向量化的语句。 〖例1〗考虑下面无穷级数求和问题: 如果我们只求出其中前有限项,比如100,000 项之和(要精确地求出级数的 和,无需求100000 项,几十项往往就能得出满意的精度。这里主要是为了 演示循环运算向量化的优越性。),则可以采用下面的常规语句进行计算 >> tic, s=0; for i=1:100000, s=s+(1/2^i+1/3^i); end, s,toc s = 1.5000 elapsed_time = 1.9700 如果采用向量化的方法,则可以得出下面结果。可以看出,采取向量化的方 法比常规循环运算效率要高得多。 >> tic, i=1:100000; s=sum(1./2.^i+1./3.^i), toc s = 1.5000 elapsed_time = 0.3800 o在必须使用多重循环的情况下,如果两个循环执行的次数不同,则建议在 循环的外环执行循环次数少的,内环执行循环次数多的。这样也可以显著提 高速度。 〖例2〗考虑生成一个5x10000 的Hilbert 长方矩阵,该矩阵的定义是其第 i 行第j 列元素为h_{i,j}=1/(i+j-1)。我们可以由下面语句比较先进行i=1:5 的循环和后进行该循环的耗时区别,其效果和前面分析的是一致的。 >> tic for i=1:5

matlab实验心得总结

通过《matlab仿真》实验使我学习掌握了许多知识。首先是对matlab有了一个全新的认识,其次是对matlab的更多操作和命令的使用有了更高的掌握,最重要的事对matlab的处理能力有了一个更高的飞跃尤其是对相关函数的使用及相关问题的处理。 就对matlab相关的命令操作而言,通过这次实验的亲身操作和实践,学习掌握了许多原本不知道的或者不太熟悉的命令。比如说相关m文件的建立,画图用到的标注,配色,坐标控制,同一张图里画几幅不同的图像,相关参数的设置以及相关函数的调用格式等等。就拿建立一个数学方程而言,通过设置不同的参数达到所需要的要求和结果,而且还可以在不同的窗口建立不同的函数而达到相同的效果,比如说可以再命令窗口和m文件中通过不同的命令设置的到相同的所需的效果图。而自己对于矩阵及闭环传递函数的建立原本所掌握的知识几乎为零,而通过这次实验使我彻底的掌握了相关的命令操作和处理的方法,在这里我们不仅可以通过建立函数和参数来达到目标效果,而且还可以通过可视化的编程达到更快更方便,更简洁的效果。就拿可视化编程而言原本根本就只是听说而已罢了,从来就没有亲身去尝试过,然而现在自己却可以和容易的通过搭建不同功能木块来实现相关的函数及功能。这些在原本根本就不敢相信,然而通过《matlab仿真》的学习和实验亲身操作这些原本看似不可能的操作在此就变的轻而易举的事了。 再此我不得不题到的事指导老师教我们怎么去搭建构造相关闭环传递函数的实验,这个实验几乎在我们的这次实验中占据了非常大的比重,在后面的几个大一点的实验中几乎都是涉及这个方面的内容,我现在想说的事怎么去搭建相关的函数和功能模块对我们来说几乎已经不是什么难事了,就拿怎么去对模块功能的实现以及分析确实是个重点和难点。通过对同一个模块分析其对应的不同的参数分析图的建立去分析和解释其对应的相关功能和技术指标和性能分析是非常重要的,我们不可能只需要建立相关的模块和功能就说自己掌握了所有的相关知识和技术,真正的技术和知识是怎么去分析和解释相关的技术指标和功能参数才是重中之重。就此而言,我坦诚的说自己所掌握的还是十分的有限的,但是老师给我们介绍的相关方法和技巧还是十分有效果的,如果自己真的想在这方面有什么建树对自己以后的要求还是需要更改的要求的,万不可以就此止步不前,自命不凡,我们还需掌握和了解还有许多许多,我们真正所掌握的只是皮毛,要想取得更大的成绩就得不断的去努力学习和汲取相关的知识和技巧。万不可自以为傲,裹足不前,matlab真的是个非常强大和有用的工具我们真正的能把它学懂学透的话还是需要下非常大的功夫和努力的。然而,不是说兴趣才是最大的老师嘛,我也相信,只要你自己有兴趣,即使它再怎么强大和难搞,我们能做的还是非常多的,关键的就只是在于你自己的态度了。我这里想说的事,matlab对于我来说是非常有吸引力的,我不敢说自己多么喜欢它,但是兴趣确实蛮高的,所以我相信在以后的学习和工作当中matlab将成为我非常有用的帮忙工具和好伙伴,也许这要说有点太草率了,但是我觉得对它的评价怎么也不会让每一个接触过它的人吝啬是自己赞美之词。它不仅仅可以用来建模分析函数,还可以用来进行图形的建模和仿真,还可以用来分析系统和函数的参数稳定性等等。再次就不一一列举了,我怕三天也不会说完的。

(完整word版)matlab_gui初学者教程

什么是GUI呢? GUI是Graphical User Interface 图形用户界面的意思。象很多高级编程语言一样。Matlab也有图形用户界面开发环境。随着计算机技术的飞速发展。人与计算机的通信方式也发生的很大的变化。从原来的命令行通讯方式(例如很早的DOS系统)变化到了现在的图形界面下的交互方式。而现在绝大多数的应用程序都是在图形化用户界面下运行的。 记得读书的时候。大学开学不久。学校很多同学就开始报考全国计算机等级考试了。当然我也是其中的一分子。其中C语言是大多数人选择的科目。当时在学C语言的时候。经常也会遇到人机交互的例子。譬如一个计算两个数相加的程序。运行程序后便切换到了Dos模式。然后在此模式下输入两个数。再回车。才能返回运算结果。当时就觉得很不方便。也不友好。后来才得知C语言是面向过程的语言。是非面向对象的语言(VC++,VB,Matlab等是面向对象的)。那么下面我们就来看看Matlab是如何简单、快速而友好地解决这类问题的吧。 Matlab GUI编程教程(适用于初学者) 1.首先我们新建一个GUI文件:File/New/GUI 如下图所示; 选择Blank GUI(Default) 2.进入GUI开发环境以后添加两个编辑文本框。6个静态文本框。和一个按钮。布置如下图所示;

布置好各控件以后。我们就可以来为这些控件编写程序来实现两数相加的功能了。3.我们先为数据1文本框添加代码; 点击上图所示红色方框。选择edit1_Callback。光标便立刻移到下面这段代码的位置。function edit1_Callback(hObject, eventdata, handles) % hObject handle to edit1 (see GCBO) % eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % Hints: get(hObject,'String') returns contents of edit1 as text % str2double(get(hObject,'String')) returns contents of edit1 as a double 然后在上面这段代码的下面插入如下代码: %以字符串的形式来存储数据文本框1的内容. 如果字符串不是数字。 则现实空白内容 input = str2num(get(hObject,'String')); %检查输入是否为空. 如果为空,则默认显示为0 if(isempty(input)) set(hObject,'String','0')

matlab中快捷键命令组合的使用技巧如下

matlab中快捷键命令组 合的使用技巧如下: 1. Ctrl+C 中断正在执行的操作 如果程序不小心进入死循环,或者计算时间太长,可以在命令窗口中使用Ctrl+c来中断。MATLAB这时可能正疲于应付,响应会有些滞后。 2. figure命令新建一个绘图窗口 figure 可以打开一个空的绘图窗口,接下的绘图命令可以将图画在它里面,而不会覆盖以前的绘图窗口。当有多个figure窗口时,在命令窗口中执行如Plot等命令将覆盖当前figure窗口中的对象。所谓的当前figure窗口,也就是最后一次查看的窗口(可以用命令gcf得到)。 figure(N),将编号为N的窗口置为当前figure,出现在所有窗口的最前面,如果该窗口不存在,则新建一个编号为N的空白figure。 3. 注释掉一段程序:%{、%}。 经典方法是用 if 0,但缺点是不够直观,注释掉的内容仍然保持代码的颜色。现在可以用 %和{ 的组合。输入%{后,后面的代码都会变绿,在注释结束的地方再加上 %} 。也可以选中要注释内容,在右键菜单中选择Comment (Uncomment去掉注释标记),或使用快捷键Ctrl+R。 将光标放在需要注释的行中,按Ctrl+R,将该行变为注释。取消注释也是一样的,快捷键为Ctrl+T。 4. doc 命令名,打开命令的帮助文档 与help命令不同,帮助文档MATLAB Help 中对命令的描述更详细,往往还有一些例子,更便于理解。 5. clc 清屏 清除命令窗口中的所有输入和输出信息,不影响命令的历史记录。 6. clear 和clear all clear 变量名:可以清除workspace中的无用的变量,尤其是一些特别大的矩阵,不用时及时清理,可以减少内存占用。 clear all 清除所有的变量,使workspace 一无所有,当重新开始一次算法验证时,最好执行一次,让workspace中的变量一目了然。 7. close all 如果开了多个绘图窗口,用这个命令将它们一起关掉。 8. 上下光标键↑↓ 在命令窗口中,上下光标键可以将历史记录中的命令复制到输入位置,便于快速重新执行。如果输入命令的前几个字母如 [row, col] =,再使用光标键,则只会选择以这些字母开始的命令。 9. Tab补全 对名称记得不太清楚的命令,可以输入开头的几个字母,然后按Tab键,当只有一个以这些字母开头的命令时,将自动补全命令名,否则显示一个命令名列表,方便从中选择。当然,只在命令窗口中有效。 10. cell模式 在一个长长的脚本m文件中,可能需要对其中的一段反复修改,查看执行效果,这时,cell模式就非常有用了。cell模式相当于将其中的代码拷贝到命令窗口中运行。两个%后接一个空格(%% )开始一个cell。将输入光标放到一个cell中时,背景将变为浅黄色,Ctrl+Enter执行cell中的代码。 执行cell中代码时不需要保存m文件,该m 文件可以不在路径列表中。 cell模式中,断点不起作用,当然,调用的子程序中的断点还是正常的。 11. 获取文件列表,批处理 MATLAB内置了一些文件操作命令,例如cd(切换工作目录),dir(同ls,显示目录内文件列表)等。dir命令可以返回目录中的文件和文件夹列表,存在一个结构体数组中。如果需要对一些数据文件进行批处理,而文件名又没有一定的规律,你可能需要借助于这个命令。 12. 对输出图像的修改 如果需要对输出图像进行标注、坐标、颜色、线条等修改,可以在输出图像界面上,点击edit下current object properties,然后可以图像各属性进行修改。 13. Ctrl+D打开子程序

怎样掌握matlab模糊控制工具箱的使用技巧

4步教你学会使用matlab模糊控制工具箱(2008-09-20 23:42:02) Matlab模糊控制工具箱为模糊控制器的设计提供了一种非常便捷的途径,通过它我们不需要进行复杂的模糊化、模糊推理及反模糊化运算,只需要设定相应参数,就可以很快得到我们所需要的控制器,而且修改也非常方便。下面将根据模糊控制器设计步骤,一步步利用Matlab工具箱设计模糊控制器。 首先我们在Matlab的命令窗口(command window)中输入fuzzy,回车就会出来这样一个窗口。 下面我们都是在这样一个窗口中进行模糊控制器的设计。 1.确定模糊控制器结构:即根据具体的系统确定输入、输出量。 这里我们可以选取标准的二维控制结构,即输入为误差e和误差变化ec,输出为控制量u。注意这里的变量还都是精确量。相应的模糊量为E,EC和U,我们可以选择增加输入(Add Variable)来实现双入单出控制结构。

2.输入输出变量的模糊化:即把输入输出的精确量转化为对应语言变量的模糊集合。 首先我们要确定描述输入输出变量语言值的模糊子集,如{NB,NM,NS,ZO,PS,PM,PB},并设置输入输出变量的论域,例如我们可以设置误差E(此时为模糊量)、误差变化EC、控制量U的论域均为{-3,-2,-1,0,1,2,3};然后我们为模糊语言变量选取相应的隶属度函数。 在模糊控制工具箱中,我们在Member Function Edit中即可完成这些步骤。首先我们打开Member Function Edit窗口.

然后分别对输入输出变量定义论域范围,添加隶属函数,以E为例,设置论域范围为[-3 3],添加隶属函数的个数为7.

EXCEL和matlab 使用技巧

第3章 Excel 2003操作操作和和Matlab 操作 实验一实验一、、Excel 操作 本实验不仅需要用户熟练掌握Excel 的基本操作,还要求用户熟练掌握Excel 数据清单的应用。 电子表格软件Excel 是用于数据处理的软件,它可以对由行和列构成的二维表格中的数据进行管理,能运算、分析、输出结果,并能制作出图文并茂的工作表格。电子表格中的每一个单元格可以存储的数据并不是简单的数值,而是字符、数值、变量、公式、图像等信息。 一、实验目的 掌握Excel 文档的编辑和格式化,利用公式和函数实现数据处理,建立图表和数据清单操作。 二、实验任务与要求 1.掌握工作簿和工作表操作。 2.工作表中公式与常用函数的使用。 3.掌握工作表的格式化、页面设置、打印预览和打印。 4.掌握图表的创建。 5.掌握数据清单的操作。 三、知识要点 操作Excel 前应掌握相应概念或操作:工作簿、工作表、工作表标签、单元格、行号、列标、活动单元格、绝对地址、相对地址、填充、填充柄、“清除”和“删除”、运算符、公式、函数、图表(分类X 轴标题、数值Y 轴标题、图表标题、图例、系列名称或图例文字、数据系列等)、排序、筛选、记录单、分类汇总、数据透视表和数据透视图等。 掌握以下常用函数(其中的参数可以是单元格引用或表达式): ① 求和函数SUM :返回参数所对应的数值之和。 格式:SUM(number1,number2,……) ② 求平均值函数A VERAGE :返回参数所对应数值的算术平均数。 格式:A VERAGE(number1,number2,……) 说明:该函数只对参数中的数值求平均数,如区域引用中包含了非数值的数据,则A VERAGE 不把它包含在内。 ③ 求最大值函数MAX 和求最小值函数MIN :用于求参数表中对应数字的最大值或最小值。 格式:MAX(number1,number2,……) 和 MIN(number1,number2,……) ④ 取整函数INT :返回一个小于number 的最大整数。 格式:INT(number) ⑤ 四舍五入函数ROUND :返回数字number 按指定位数num_digits 舍入后的数字。 格式:ROUND(number,num_digits) 如果num_digits>0,则舍入到指定的小数位;如果num_digits=0,则舍入到整数。如果num_digits<0,则在小数点左侧(整数部分)进行舍入。 ⑥ 条件计数函数COUNTIF :统计给定区域内满足特定条件的单元格的数目。 格式:COUNTIF(range,criteria)

相关主题
文本预览
相关文档 最新文档