MATLAB函式查询及套用案例


MATLAB函式查询及套用案例

文章插图
MATLAB函式查询及套用案例【MATLAB函式查询及套用案例】《MATLAB函式查询及套用案例》是电子工业出版社出版的图书,作者是丁毓峰 。
基本介绍书名:MATLAB函式查询及套用案例
作者:丁毓峰
ISBN:9787121146312
页数:380页
出版社:电子工业出版社
出版时间:2011年9月1日
内容简介本书结合科学研究和工程中的实际需要,系统、全面地介绍了MATLAB的常用函式 。主要内容包括MATLAB基础及通用函式、数学运算函式、数组和矩阵运算函式、数值计算函式、机率统计函式、图形及图像处理函式、符号计算函式、图形用户界面开发函式、Simulink仿真函式、控制系统设计函式、信号处理函式、神经网路套用函式、最最佳化设计函式和小波变换函式 。本书讲解的函式主线为从MATLAB的基础知识到不同领域的套用和实际问题的解决 。结合函式的功能和使用方法的描述,本书提供了大量实例,并将实例原始码收录于配书光碟中,供读者在学习过程中使用 。目录目 录第1章 MATLAB基础及通用函式 11.1 MATLAB概述 11.2 MATLAB集成环境简介 11.2.1 MATLAB的运行 11.2.2 MATLAB界面 21.2.3 MATLAB帮助系统 41.3 通用命令 51.3.1 指定搜寻路径path命令 51.3.2 增加搜寻路径addpath命令 61.3.3 删除搜寻路径rmpath命令 71.3.4 读出超文本档案doc命令 71.3.5 查看档案内容type命令 71.3.6 显示文本或数组disp命令 81.3.7 清除记忆体中的对象clear命令 81.3.8 清屏clc命令 91.3.9 计算向量或矩阵长度length命令 91.3.10 计算数组维数大小size 命令 101.3.11 列出当前记忆体中的变数who/whos命令 101.3.12 列出当前目录档案what命令 111.3.13 获得帮助help 命令 111.4 数据输入/输出函式 121.4.1 数据输入input ( ) 121.4.2 生成选单menu ( ) 131.4.3 程式暂停pause 命令 131.4.4 输出、显示格式控制format( ) 141.4.5 保存工作空间变数到档案save ( ) 151.4.6 从档案中将变数调入工作空间load ( ) 151.4.7 打开档案fopen ( ) 161.4.8 关闭档案fclose ( ) 171.4.9 从档案中读出格式化数据fscanf ( ) 181.4.10 向档案中写入格式化数据fprintf ( ) 191.4.11 从档案中读出二进制数据fread ( ) 201.4.12 向档案中写入二进制数据fwrite ( ) 201.4.13 以字元串形式返回档案下一行fgets ( ) 211.4.14 查询档案输入/输出操作错误ferror ( ) 211.4.15 测试档案结尾feof ( ) 221.4.16 设定档案位置指示器fseek ( ) 221.4.17 获取档案指示器位置ftell ( ) 221.4.18 格式化数据写到字元串sprintf ( ) 231.4.19 规定格式控制下读出字元串sscanf ( ) 231.4.20 读出ASCII档案dlmread ( ) 241.4.21 矩阵写入ASCII档案dlmwrite ( ) 251.5 MATLAB程式设计 261.5.1 MATLAB程式设计概述 261.5.2 for循环 261.5.3 while循环 271.5.4 if-else-end结构 281.5.5 switch-case结构 291.5.6 try-catch结构 301.5.7 continue命令 301.5.8 break命令 311.5.9 return命令 321.5.10 keyboard命令 321.5.11 error和warning命令 331.6 小结 34第2章 数学运算函式 352.1 常用数学函式 352.1.1 三角函式 352.1.2 双曲线函式 382.1.3 複数函式 402.1.4 求和、乘积和差分函式 432.1.5 最大值和最小值函式 452.1.6 简单统计函式 472.1.7 排序sort( ) 492.2 关係和逻辑运算函式 502.2.1 关係操作符 512.2.2 逻辑操作符 542.2.3 关係与逻辑函式 562.3 小结 57第3章 数组和矩阵运算函式 583.1 数组运算的常用函式 583.1.1 一维数组的创建和寻访 583.1.2 二维数组的创建和寻访 603.1.3 执行数组运算的常用函式 613.2 矩阵生成函式 643.2.1 零矩阵zeros ( ) 643.2.2 单位矩阵eye ( ) 653.2.3 全1矩阵ones ( ) 663.2.4魔方矩阵magic ( ) 663.2.5 创建多维数组cat ( ) 673.2.6对角矩阵diag ( ) 673.2.7 生成指定对角线元素的矩阵blkdiag( ) 683.2.8 随机整数排列randperm( ) 693.2.9 Pascal矩阵pascal( ) 693.2.10 托普利兹矩阵toeplitz( ) 70 3.2.11 均匀分布随机矩阵rand ( ) 703.2.12 常态分配随机矩阵randn( ) 703.2.13 线性等分向量linspace( ) 713.2.14 生成对数等分向量logspace( ) 713.3 矩阵基本运算函式 723.3.1 矩阵基本运算函式分类 723.3.2 计算矩阵和向量的範数norm( ) 753.3.3 计算矩阵的秩rank( ) 763.3.4 计算矩阵行列式值det( ) 773.3.5 计算矩阵的迹trace( ) 773.3.6 计算矩阵的特徵值和特徵向量eig( ) 783.3.7 计算矩阵的特徵多项式poly( ) 793.3.8 Cholesky分解chol( ) 793.3.9 计算矩阵的逆矩阵inv ( ) 803.3.10 计算矩阵的伪逆矩阵pinv( ) 803.3.11 计算矩阵的平方根sqrtm( ) 813.3.12 向量或矩阵的乘积dot( ) 813.3.13 向量或矩阵的叉积cross( ) 823.3.14 计算向量的卷积和多项式乘法conv( ) 823.3.15 求两集合的并集union( ) 833.3.16 取集合的单值元素unique( ) 833.3.17 求矩阵的条件数cond( ) 843.3.18 上三角阵的抽取triu ( ) 843.3.19 下三角阵的抽取tril( ) 853.3.20 转换矩阵数值为分数或符号sym ( ) 853.3.21符号矩阵的因式分解factor( ) 863.3.22 展开符号矩阵expand( ) 863.3.23 复对角矩阵转化为实对角矩阵cdf2rdf ( ) 863.3.24 统计矩阵中非零元素的个数nnz( ) 873.3.25 将矩阵中非零元素构成列向量nonzeros( ) 873.3.26 计算矩阵非零元素分配的存储空间数nzmax( ) 883.4 线性方程组求解 883.4.1 求解具有唯一解的矩阵方程组 883.4.2 求具有无穷解的矩阵方程组的通解和特解 893.4.3 利用广义逆求无解方程的近似最小二乘解 903.4.4 利用LU分解求方程组的解 913.4.5 利用QR分解求方程组的解 923.4.6 利用LQ解法解线性方程组 933.5 稀疏矩阵相关函式 943.5.1 生成稀疏矩阵sparse ( ) 943.5.2 生成对角稀疏矩阵spdiags( ) 953.5.3 生成单位稀疏矩阵speye( ) 95 3.5.4 生成均匀分布随机稀疏矩阵sprand( ) 953.5.5 生成常态分配随机稀疏矩阵sprandn( ) 963.5.6 生成随机对称稀疏矩阵sprandsym( ) 973.5.7 稀疏矩阵非零元素的索引find( ) 973.5.8 将稀疏矩阵转化为满矩阵full( ) 983.6 小结 98第4章 数值计算函式 994.1 函式极值 994.1.1 一元函式的极小值fminbnd( ) 994.1.2 多元函式的极小值fminsearch( ) 1004.2 函式插值 1024.2.1 一维插值interp1( ) 1024.2.2 二维插值interp2( ) 1034.3 曲线拟合polyfit( ) 1044.4 多项式及其操作 1044.4.1 创建多项式poly2sym( ) 1054.4.2 求多项式的根roots( ) 1054.4.3 导数polyder( ) 1054.4.4 估值polyval( ) 1064.4.5 有理多项式residue( ) 1064.5 函式积分 1074.5.1 一元函式数值积分trapz( ) 1074.5.2 多重数值积分 1084.6 函式微分 1084.6.1 数值微分diff( ) 1094.6.2 近似梯度graidient( ) 1094.7 常微分方程 1094.8 小结 110第5章 机率统计函式 1115.1 随机数生成 1115.1.1 生成分布随机数betarnd( ) 1115.1.2 生成偏t分布随机数函式nctrnd( ) 1125.1.3 生成二项分布随机数binornd( ) 1125.1.4 生成常态分配随机数函式normrnd( ) 1135.1.5 生成卡方分布随机数函式chi2rnd( ) 1145.1.6 生成泊松分布随机数函式poissrnd( ) 1145.1.7 生成指数分布随机数函式exprnd() 1145.1.8 生成F分布随机数函式frnd( ) 1155.1.9 生成对数常态分配随机数函式lognrnd( ) 1155.1.10 生成几何分布随机数函式geornd( ) 1165.1.11 生成t分布随机数函式trnd( ) 1165.1.12 生成离散均匀分布随机数函式unidrnd( ) 1175.1.13 生成连续均匀分布随机数函式unifrnd( ) 1175.1.14 生成Weibull分布随机数函式wblrnd( ) 1185.1.15 生成指定分布随机数函式random( ) 1185.2 均值与方差 1195.2.1 计算分布的均值和方差函式betastat( ) 120 5.2.2 常用分布的均值与方差计算函式 1205.3 统计特徵函式 1225.3.1 相关係数corrcoef( ) 1225.3.2协方差矩阵cov( ) 1235.3.3 峰度kurtosis( ) 1235.3.4 偏度skewness( ) 1245.3.5 几何平均数geomean( ) 1245.3.6 调和均值harmmean( ) 1255.3.7 截尾均值trimmean( ) 1255.3.8 平均绝对偏差mad( ) 1265.3.9 百分位数prctile( ) 1265.4 假设检验 1275.4.1 秩和检验ranksum( ) 1275.4.2 符号秩检验signrank( ) 1285.4.3 符号检验signtest( ) 1295.4.4 样本均值的t检验ttest( ) 1305.4.5 两个样本均值的t检验ttest2( ) 1315.4.6 z检验ztest( ) 1325.5 线性与非线性回归 1335.5.1单因素方差分析anova1( ) 1335.5.2双因素方差分析anova2( ) 1355.5.3 多项式预测和置信区间评估polyconf( ) 1365.5.4 多项式曲线拟合polyfit( ) 1375.5.5 非线性最小二乘拟合nlinfit( ) 1385.5.6 非线性方程拟合nlintool( ) 1395.5.7 多项式评估polyval( ) 1405.5.8多重线性回归regress( ) 1405.6 参数估计 1415.6.1 分布数据的参数估计betafit( ) 1415.6.2 负分布对数似然函式betalike( ) 1425.6.3 指数分布数据参数估计expfit( ) 1425.6.4 负指数分布对数似然函式explike( ) 1435.6.5 常态分配数据参数估计normfit( ) 1435.6.6 负常态分配对数似然函式normlike( ) 1445.6.7 泊松分布数据参数估计poissfit( ) 1445.6.8 均匀分布数据参数估计unifit( ) 1455.6.9 Weibull分布数据参数估计wblfit( ) 1465.7 小结 146第6章 图形及图像处理函式 1476.1 二维图形绘製 1476.1.1 plot函式 1476.1.2 线型、标记和颜色 1486.1.3 图形坐标轴设定 1496.1.4 多个图形叠绘及多个图形视窗 1506.1.5 绘製子图 1526.1.6 互动式绘图和萤幕刷新 154 6.1.7 绘製双坐标轴 1556.2 三维图形绘製 1556.2.1 绘製二元函式的格线图 1566.2.2 绘製曲线图 1566.2.3 绘製格线图 1576.2.4 绘製曲面图 1586.2.5 绘製等高线 1596.3 特殊图形绘製 1606.3.1 绘製区域图 1606.3.2 绘製饼图 1616.3.3 绘製直方图和梯形图 1626.3.4 绘製矢量分布图 1636.3.5 绘製伪色彩图 1656.3.6 绘製极坐标图 1666.3.7 绘製误差线图形 1666.3.8 绘製离散数据图形 1676.4 图形处理 1696.4.1 图形标注 1696.4.2 坐标轴的控制 1696.4.3 图形数据取点 1716.4.4 图形保持 1726.4.5 图形的列印和输出 1726.5 图形句柄函式 1736.6 图像处理工具箱概述 1736.6.1 常用图像格式 1746.6.2 MATLAB 7.X图像类型和转换 1746.7 图像档案的操作 1766.7.1 图像档案显示 1776.7.2 图像档案读写 1776.7.3 图像格式转换 1796.8 图像增强 1796.8.1 对比度增强 1796.8.2直方图均衡化1806.8.3 空域滤波增强 1816.9 小结 182第7章 符号计算函式 1837.1 符号工具箱函式 1837.2 符号表达式运算 1857.2.1 提取分子和分母numden( ) 1857.2.2 标準代数运算 1857.2.3 变换函式 1867.2.4 高级运算 1897.2.5 变数替换subs( ) 1917.2.6 微分和积分 1927.3 符号表达式化简和格式化 1937.3.1 表达式化简simplify( ) 1937.3.2 多种简化形式simple( ) 1947.3.3 合併同类项并给出降幂排列形式collect( ) 1947.3.4 将降幂排列的多项式转化成嵌套形式honer( ) 1957.3.5 以有理分式等形式显示符号表达式pretty( ) 1957.3.6 对表达式进行因式分解factor( ) 1967.3.7 展开表达式并给出降幂排列形式expand( ) 1967.4 符号矩阵 1977.4.1 创建符号矩阵 1977.4.2 操作符号矩阵 1987.5 符号绘图函式 2017.5.1 绘製符号函式的图形ezplot( ) 2017.5.2 绘製三维曲线图ezplot3( ) 2027.5.3 绘製符号函式的等高线图ezcontour( ) 2027.5.4 绘製极坐标图ezpolar( ) 2037.5.5 绘製用不同颜色填充的等高线图ezcontourf( ) 205 7.5.6 绘製符号函式的三维格线图ezmesh( ) 2067.5.7 同时绘製格线图与等高线图ezmeshc( ) 2077.5.8 绘製三维彩色曲面图ezsurf( ) 2087.5.9 同时绘製曲面图与等高线图ezsurfc( ) 2097.6 符号方程求解 2107.6.1 代数方程的符号解析解 2107.6.2 求解常微分方程 2117.7 小结 211第8章 图形用户界面开发函式 2128.1 图形用户界面概述 2128.1.1 创建图形用户界面的目的 2128.1.2 GUI对象层次结构 2128.2 对话框生成 2138.2.1 创建通用对话框dialog( ) 2138.2.2 创建帮助对话框helpdlg( ) 2148.2.3 创建错误提示对话框errordlg( ) 2148.2.4 显示等待对话框waitbar( ) 2158.2.5 创建警告对话框warndlg( ) 2168.2.6 创建输入对话框inputdlg( ) 2178.2.7 创建设计提问对话框questdlg( ) 2188.2.8 创建页面设定对话框printpreview( ) 2198.2.9 创建选择列表内容对话框listdlg( ) 2198.2.10 创建保存档案的标準对话框uiputfile( ) 2218.2.11 创建列印对话框printdlg( ) 2228.2.12 创建选定目录的标準对话框uigetdir( ) 2228.2.13 创建颜色设定对话框uisetcolor( ) 2238.2.14 创建讯息对话框msgbox( ) 2248.3 图形用户界面开发 2258.3.1 启动GUI界面编辑器guide( ) 2258.3.2 创建选单menu( ) 2268.3.3 创建上下文选单uicontextmenu( ) 2268.3.4 创建用户选单uimenu( ) 2288.3.5 创建用户界面控制项对象uicontrol( ) 2298.3.6 互动式操作获取档案名称uigetfile( ) 2308.3.7 互动式修改对象的字型uisetfont( ) 2318.3.8 显示属性检查器inspect( ) 2318.3.9 获取应用程式定义的数据值getappdata( ) 2328.3.10 设定应用程式定义的数据值setappdata( ) 2338.3.11 滑鼠或指针的数据输入ginput( ) 2338.3.12 创建句柄的一个结构guihandles( ) 2338.3.13 存储或重新获取套用数据guidata( ) 2348.4 其他相关函式 2348.4.1 设定对象属性set( ) 2348.4.2 获得对象属性get( ) 235 8.4.3 返回当前图形句柄gcf( ) 2358.4.4 建立图形视窗figure( ) 2368.4.5 停止程式执行uiwait( ) 2368.4.6 恢复程式执行uiresume( ) 2368.4.7 等待按键或滑鼠被按下waitforbuttonpress( ) 2368.4.8 查找图形对象的句柄findall( ) 2378.4.9 查找特定属性的图形对象的句柄findobj( ) 2378.4.10 获得当前程式图形对象的父对象的句柄gcbf( ) 2388.4.11 获得当前程式图形对象的句柄gcbo( ) 2388.4.12 拖动滑鼠绘製长方形dragrect( ) 2388.4.13 操作和控制图形对象selectmoveresize( ) 2398.5 小结 240第9章 Simulink仿真函式 2419.1 Simulink概述 2419.1.1 Simulink建模方法 2419.1.2 模组库浏览器2419.1.3 Simulink模型视窗 2429.2 Simulink基本操作命令 2439.2.1 启动模组库浏览器Simulink命令 2439.2.2 载入指定的仿真系统load_system命令 2439.2.3 查找指定的仿真系统find_system命令 2449.2.4 打开仿真系统open_system命令 2459.2.5 设定仿真系统的参数set_param命令 2479.2.6 获取仿真系统的参数get_param命令 2479.2.7 获取系统的句柄和名称gcbh命令 2489.2.8 获取当前系统或模组的名称gcs命令 2499.2.9 关闭正在运行的仿真系统视窗bdclose命令 2499.2.10 更新系统模组slupdate命令 2509.2.11 查看帮助信息slhelp命令 2509.3 Simulink仿真 2519.3.1 获取仿真系统的信息simget命令 2519.3.2 设定仿真参数simset命令 2529.3.3 开始进行仿真sim命令 2539.3.4 模型线性化linmod命令 2549.3.5 求系统的平衡点trim命令 2559.4 小结 256第10章 控制系统设计函式 25710.1 系统时间回响及其仿真 25710.1.1 系统时间回响的基本概念 25710.1.2 仿真算法 25710.1.3 MATLAB系统仿真25810.2 系统频率回响及其仿真 26610.2.1 频率特性和频率回响的基本概念 266 10.2.2 频率回响 26810.2.3 系统分析图形用户界面 27110.3 控制系统的综合与校正 27310.3.1系统综合与校正的概念 27310.3.2 系统综合与校正实例 27410.4 小结 275第11章 信号处理函式 27611.1 信号处理概述 27611.2 常用信号的产生 27611.2.1 生成三角波信号 27611.2.2 生成单位阶跃信号 27711.2.3 产生单位冲击信号 27711.2.4 生成锯齿波信号 27811.2.5 生成sinc信号 27911.2.6 生成扫频信号 28011.2.7 生成离散信号 28111.3 信号的时域分析 28111.3.1 计算信号均值mean( ) 28111.3.2 计算信号标準差std( ) 28211.3.3 计算卷积conv( ) 28211.3.4 计算协方差cov( ) 28311.3.5 估计信号相关性xcorr( ) 28411.3.6快速傅立叶变换和反变换函式fft( )和ifft( ) 28511.3.7希尔伯特变换hilbert( ) 28611.3.8 Z反变换residuez( ) 28711.4 滤波器的分析和设计 28811.4.1 计算幅值abs( ) 28811.4.2 计算相位角angle( ) 28811.4.3 设定频率回响的频率间隔freqspace( ) 28911.4.4 模拟滤波器的频率回响freqs( ) 28911.4.5 数字滤波器的频率回响freqz( ) 29011.4.6 计算滤波器的群延迟grpdelay( ) 29111.4.7 计算数字滤波器的冲击回响impz( ) 29211.4.8 相位角的展开函式unwrap( ) 29311.4.9 设计1-D数字滤波器filter( ) 29411.4.10 零相位数字滤波filtfilt( ) 29511.4.11 基于FFT的FIR滤波fftfilt( ) 29511.4.12 ChebyshevⅠ型模拟滤波器cheb1ap( ) 29611.4.13 Chebyshev Ⅱ型模拟滤波器cheb2ap( ) 29711.4.14 Chebyshev Ⅰ型滤波器cheby1( ) 29711.4.15 Chebyshev Ⅱ型滤波器cheby2( ) 29811.4.16 Bessel低通滤波器besselap( ) 30011.4.17 模拟滤波器转化为数字滤波器impinvar( ) 30011.4.18椭圆滤波器ellip( ) 301 11.4.19FIR滤波器fir1( ) 30211.4.20 设计FIR滤波器fir2( ) 30311.5 小结 304第12章 神经网路套用函式 30512.1 神经网路概述 30512.1.1 神经网路的发展和套用 30512.1.2神经网路模型30612.1.3 神经网路工具箱通用函式 30612.2 感知器 30812.2.1 感知器神经网路模型结构 30812.2.2 设计感知器神经网路 31012.3 线性神经网路 31212.3.1 线性神经网路模型结构 31212.3.2 设计线性神经网路 31312.4 BP网路 31412.4.1 BP网路模型结构 31412.4.2 设计BP网路 31412.5 反馈型神经网路 32212.5.1 Hopfield网路设计 32212.5.2 Elman网路设计 32412.6 小结 326第13章 最最佳化设计函式 32713.1 MATLAB最佳化工具箱 32713.1.1 工具箱概述 32713.1.2 工具箱函式介绍 32713.1.3 可视化GUI工具箱 33513.2 小结 337第14章 小波变换函式 33814.1 概述 33814.2 一维连续小波变换33814.2.1 一维连续小波变换cwt( ) 33914.2.2 从一个原始图样中构建一个小波函式pat2cwav( ) 34014.3 一维离散小波变换34114.3.1 单尺度一维小波离散变换dwt ( ) 34114.3.2 离散小波变换拓展模式dwtmode( ) 34314.3.3 单尺度一维离散小波逆变换idwt( ) 34414.3.4 多尺度一维小波分解wavedec( ) 34514.3.5 提取一维小波变换低频係数appcoef( ) 34614.3.6 提取一维小波变换高频係数detcoef ( ) 34714.3.7 重构多尺度一维小波waverec( ) 34814.3.8 对小波分解结构进行单尺度重构upwlev( ) 34814.3.9 对小波分解结构进行单支重构wrcoef( ) 34914.3.10 重构一维繫数的直接小波upcoef( ) 35014.4 二维离散小波变换 35114.4.1 单尺度二维离散小波变换dwt2( ) 35214.4.2 多尺度二维离散小波分解wavedec2( ) 35314.4.3 重构多尺度二维小波waverec2( ) 35414.4.4 提取二维小波分解低频係数appcoef2( ) 35414.4.5 提取二维小波分解高频係数detcoef2( ) 356 14.4.6 二维小波分解的单尺度重构upwlev2( ) 35714.4.7 重构二维小波係数的单支wrcoef2( ) 35814.4.8 二维小波分解的直接重构upcoef2( ) 35914.5 小结 360参考文献 361