一、常用对象操作:除了一般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路径
附录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 有理输出