描述
开 本: 128开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787302656708丛书名: 计算机科学与技术丛书
本书系统介绍了MATLAB特有的编程思想、高效的编程方法,以编程案例的形式介绍MATLAB在科学计算中的实际应用。书中内容涉及MATLAB矩阵运算、计算函数、符号运算、程序结构、二维/三维及动画绘图、Simulink仿真、App界面设计、建模方法及多种语言联合调用等。全书提供了300多个案例帮助读者全面理解MATLAB工具箱的使用方法,帮助读者轻松地创建人机交互界面,将C/C /Python程序在MATLAB中运行,帮助读者掌握MATLAB科学计算和Simulink系统仿真的知识体系。本书知识要点如下:
MATLAB应用的基础知识;
MATLAB矩阵与数组的应用;
MATLAB符号与多项式运算;
MATLAB高等数学计算;
MATLAB程序设计方法;
MATLAB二维/三维及动画绘图;
Simulink系统仿真;
App界面设计及回调函数;
MATLAB与C/C /Python语言的调用;
MATLAB数学建模。
本书以MATLAB2023a为操作平台,每个章节使用【实战练习】进行讲解,由浅入深、通俗易懂。该书共分为十章,内容从最基本的窗口操作开始,由矩阵使用到MATLAB的建模应用,共计使用了三百多个案例贯穿于每个章节中。所有例程内嵌程序命令、注释、说明和运行结果,图文并茂。该教材不仅适合理工类所有专业学生使用,也可作为一本计算机语言的开启和提高课程教材。本书讲解重视边学边练,配合演示文稿的课件和实战练习,有助于课堂教学和学生自学。特别在增强学习的可视性方面,书中的APP设计案例新颖实用,几乎涵盖了所有基本组件的应用。且将二维、三维、网格、网面图、色彩的渲染、光照效果及图像的动画设计嵌到了App中,突出了人机交互界面展示。
第1章 MATLAB基础概述1
1.1 MATLAB主要功能1
1.2 MATLAB R2023a主窗口2
1.2.1 命令行窗口2
【实战练习1-1】命令行窗口的使用3
1.2.2 工具栏窗口3
1.3 命令行窗口操作6
1.3.1 常用命令行窗口命令6
【实战练习1-2】保存、导入及查看命令的使用6
【实战练习1-3】表达式运算7
1.3.2 命令行窗口常用快捷键7
1.4 App设计(Designer)8
1.4.1 App的功能8
1.4.2 App的使用9
【实战练习1-4】使用App设计简单GUI9
1.5 认识Simulink10
1.5.1 Simulink初始界面10
1.5.2 Simulink简单仿真案例11
【实战练习1-5】Simulink简单仿真模型11
1.6 帮助窗口12
1.6.1 help命令12
1.6.2 demo命令13
第2章 MATLAB矩阵与数组的应用14
2.1 常量和变量14
2.1.1 常量14
2.1.2 变量15
2.1.3 变量使用规则15
2.1.4 全局变量15
2.1.5 数据类型16
【实战练习2-1】变量的应用17
2.1.6 常用标点符号的使用18
2.2 矩阵操作18
2.2.1 创建矩阵的方法19
【实战练习2-2】创建实数和复数矩阵19
2.2.2 创建向量的方法19
2.2.3 常用特色矩阵20
【实战练习2-3】创建特色矩阵21
2.2.4 稀疏矩阵22
【实战练习2-4】创建稀疏矩阵22
【实战练习2-5】创建对角稀疏矩阵23
【实战练习2-6】创建带状稀疏矩阵24
2.2.5 矩阵拆分(分解)24
【实战练习2-7】矩阵拆分的应用25
【实战练习2-8】矩阵扩展的应用25
2.3 矩阵基本运算25
2.3.1 矩阵常用运算25
【实战练习2-9】矩阵算术运算的应用26
【实战练习2-10】矩阵乘法运算的应用27
【实战练习2-11】矩阵左除运算的使用28
【实战练习2-12】矩阵复数运算的应用28
【实战练习2-13】关系运算的应用29
【实战练习2-14】逻辑运算的应用29
2.3.2 矩阵、向量元素的和与积运算30
【实战练习2-15】求矩阵元素的和与积30
2.3.3 矩阵、向量累加和与累乘积30
【实战练习2-16】求矩阵列元素的累加和与累乘积30
2.3.4 矩阵平均值和中值31
【实战练习2-17】求矩阵的平均值和中值31
2.3.5 矩阵最大值、最小值与排序31
【实战练习2-18】求向量的最大值、最小值32
【实战练习2-19】求矩阵最大值、最小值32
【实战练习2-20】矩阵升序和降序的应用33
2.3.6 矩阵的秩、迹和条件数34
【实战练习2-21】求矩阵的秩、迹和条件数34
2.3.7 矩阵的逆35
【实战练习2-22】利用逆矩阵求方程组的解35
2.3.8 矩阵的特征值和特征向量35
【实战练习2-23】求矩阵的特征向量36
2.3.9 矩阵的海森伯格变换36
【实战练习2-24】求海森伯格变换矩阵36
2.4 MATLAB常用函数及应用37
2.4.1 常用数学函数37
【实战练习2-25】求指数、余数及最小公倍数38
【实战练习2-26】求复数的模、相角和共轭复数38
【实战练习2-27】求阶乘及组合数38
【实战练习2-28】求矩阵的点乘39
【实战练习2-29】求矩阵的秩、逆及行列式的值39
【实战练习2-30】求矩阵维数及非零元素个数39
【实战练习2-31】求向量元素的全排列及排列个数40
2.4.2 常用三角函数40
【实战练习2-32】求给定角度的三角函数值41
2.4.3 常用取整函数41
【实战练习2-33】不同取整函数的应用41
2.4.4 随机函数42
【实战练习2-34】随机函数的多种应用43
2.4.5 转换函数43
【实战练习2-35】不同进制转换函数的应用44
2.4.6 字符串处理函数44
【实战练习2-36】字符串的查找及连接45
2.4.7 判断函数45
【实战练习2-37】判断矩阵是否包含元素46
【实战练习2-38】判断矩阵数据类型46
【实战练习2-39】判断矩阵中的质数46
【实战练习2-40】判断矩阵中的非零元素47
2.4.8 查找函数47
【实战练习2-41】查找矩阵元素坐标位置47
2.4.9 测试向量(矩阵)零元素函数48
【实战练习2-42】测试向量和矩阵是否存在非零元素48
2.4.10 日期和时间函数49
【实战练习2-43】利用函数输出指定时间49
2.4.11 标准差函数50
【实战练习2-44】求矩阵的标准差51
2.4.12 函数句柄51
【实战练习2-45】利用句柄实现函数计算51
【实战练习2-46】利用句柄实现求导数52
【实战练习2-47】利用句柄实现矩阵运算52
2.5 MATLAB数组表示53
2.5.1 结构数组53
【实战练习2-48】建立结构体数组53
【实战练习2-49】结构数组操作54
2.5.2 元胞(单元)数组55
【实战练习2-50】元胞数组的应用57
【实战练习2-51】元胞数组操作及绘图57
【实战练习2-52】函数句柄的元胞数组应用58
2.6 数组集合运算59
2.6.1 交运算59
2.6.2 差运算59
2.6.3 并运算59
2.6.4 异或运算59
2.6.5 唯一性运算59
2.6.6 集合连接运算60
2.6.7 集合判断运算60
【实战练习2-53】数组集合的应用60
第3章 符号与多项式运算62
3.1 MATLAB中的符号运算62
3.1.1 符号变量与符号表达式62
【实战练习3-1】建立符号矩阵64
3.1.2 符号基本运算65
【实战练习3-2】符号算术运算65
【实战练习3-3】符号的关系运算与逻辑运算66
【实战练习3-4】符号表达式的替换67
3.2 多项式表示67
3.2.1 直接建立多项式67
3.2.2 使用函数建立多项式68
【实战练习3-5】符号与多项式的转换68
3.3 多项式运算68
3.3.1 多项式加、减运算69
【实战练习3-6】多项式加、减运算的应用69
3.3.2 多项式乘、除运算69
【实战练习3-7】多项式的乘、除运算的应用69
3.3.3 多项式分解、展开与提取70
【实战练习3-8】多项式分解与展开的应用70
【实战练习3-9】提取多项式的分子和分母70
【实战练习3-10】提取与展开三角函数多项式70
【实战练习3-11】合并同类项的应用71
3.3.4 多项式化简71
【实战练习3-12】化简并计算简单多项式71
【实战练习3-13】化简并计算复杂多项式72
3.3.5 表达式之间的转换72
【实战练习3-14】多项式替换的应用72
3.3.6 复合函数与反函数73
【实战练习3-15】复合函数及反函数的应用73
3.3.7 分数多项式通分73
【实战练习3-16】分数多项式通分计算的应用73
3.4 多项式求解(多项式方程求解)74
3.4.1 多项式的特征值(多项式的解)74
3.4.2 特征多项式系数74
【实战练习3-17】求多项式的解及多项式系数74
3.4.3 方程与方程组的符号解75
【实战练习3-18】求方程及方程组的数值解75
【实战练习3-19】求微分方程的符号解75
【实战练习3-20】求方程组的符号解76
【实战练习3-21】求复数乘积多项式的解76
3.4.4 多项式数值解77
【实战练习3-22】求多项式指定的数值解77
3.4.5 多项式拟合77
【实战练习3-23】温度值的直线拟合77
【实战练习3-24】求多项式的2阶和4阶拟合78
【实战练习3-25】求多项式的曲线拟合79
3.5 多项式求导79
3.5.1 多项式直接求导数79
【实战练习3-26】多项式求导的应用80
3.5.2 插值、拟合多项式并求导80
【实战练习3-27】插值、拟合多项式并求导数80
第4章 MATLAB的高等数学计算82
4.1 傅里叶变换与反变换82
4.1.1 傅里叶变换82
4.1.2 傅里叶反变换82
【实战练习4-1】求傅里叶变换及反变换82
4.1.3 快速傅里叶变换83
【实战练习4-2】快速傅里叶变换的应用84
4.1.4 快速傅里叶反变换84
【实战练习4-3】快速傅里叶反变换的应用85
4.2 拉普拉斯变换与反变换86
4.2.1 拉普拉斯变换86
4.2.2 拉普拉斯反变换86
【实战练习4-4】拉普拉斯变换和反变换应用86
4.3 Z变换与Z反变换86
4.3.1 Z变换87
4.3.2 Z反变换87
【实战练习4-5】Z变换和Z反变换应用87
4.4 求极限87
【实战练习4-6】极限求解应用88
4.5 求导数88
4.5.1 语法格式88
4.5.2 使用案例88
【实战练习4-7】导数求解应用88
【实战练习4-8】二阶导数及求值应用89
4.6 求积分89
4.6.1 使用int()函数求积分89
【实战练习4-9】求不定积分90
【实战练习4-10】求定积分90
【实战练习4-11】求二重积分90
4.6.2 使用quad()(quadl)函数求积分91
【实战练习4-12】利用小梯形的面积求定积分91
【实战练习4-13】利用函数求表达式积分92
4.7 零点与极值92
4.7.1 求零点92
【实战练习4-14】根据零点求解92
【实战练习4-15】求三角函数的零点93
4.7.2 求极值93
【实战练习4-16】求给定区间的极值93
4.8 方程求解93
4.8.1 线性方程组求解94
【实战练习4-17】使用除法求解多元方程组94
【实战练习4-18】使用函数求解多元方程组94
【实战练习4-19】使用solve()函数求解多元方程组符号解94
【实战练习4-20】使用solve()函数求解多元方程组数值解95
4.8.2 符号代数方程求解95
【实战练习4-21】符号代数方程求解的应用95
4.8.3 常微分方程(组)的求解96
【实战练习4-22】求方程通解96
【实战练习4-23】求方程特解96
【实战练习4-24】求方程组通解97
4.9 级数97
4.9.1 级数求和97
【实战练习4-25】求级数的前n项和98
4.9.2 一元函数的泰勒级数展开98
【实战练习4-26】求给定的泰勒展开式98
4.9.3 麦克劳林公式99
【实战练习4-27】求函数的麦克劳林展开式99
4.10 函数拟合与插值99
4.10.1 一维插值99
【实战练习4-28】正弦函数的一维插值及绘图100
【实战练习4-29】测试点的插值应用100
【实战练习4-30】利用默认插值并绘图101
【实战练习4-31】利用三次样条插值和线性插值绘图102
4.10.2 二维插值102
【实战练习4-32】对平均工资进行二维插值103
【实战练习4-33】对给定函数插值拟合三维曲面103
4.10.3 三维插值与三维切片104
【实战练习4-34】指定位置的三维函数切片绘图105
【实战练习4-35】根据给定三维函数进行不同三维插值并绘图105
4.10.4 多维散点数据插值106
【实战练习4-36】基于均匀网格对散点数据插值与拟合107
【实战练习4-37】基于四维函数网格插值、拟合与绘图107
【实战练习4-38】多维插值用于绘制精确图108
【实战练习4-39】同一样本数据四种插值及拟合的绘图比较109
第5章 MATLAB程序设计111
5.1 数据输入/输出111
5.1.1 数据输入111
【实战练习5-1】输入函数input( )的应用112
5.1.2 数据输出112
【实战练习5-2】无格式输出disp( )函数的应用112
【实战练习5-3】有格式输出fprintf( )函数的应用113
【实战练习5-4】字符串输出的应用114
【实战练习5-5】数值输出的应用114
5.2 命令的流程控制115
5.2.1 顺序结构115
【实战练习5-6】顺序结构程序应用115
5.2.2 选择结构115
【实战练习5-7】简单选择结构程序的应用116
【实战练习5-8】利用选择结构处理阶段函数116
【实战练习5-9】利用条件嵌套判断输入数据118
【实战练习5-10】利用条件嵌套购买折扣商品118
【实战练习5-11】利用多分支选择购买折扣商品120
【实战练习5-12】利用多分支选择将成绩分段输出120
5.2.3 循环结构122
【实战练习5-13】利用while循环计算阶乘122
【实战练习5-14】利用for循环计算矩阵行和列的和123
【实战练习5-15】利用条件和循环输出水仙花数123
【实战练习5-16】利用for循环绘制同心圆124
【实战练习5-17】利用for循环输出斐波那契级数124
5.2.4 break与continue语句125
【实战练习5-18】continue与break的应用125
【实战练习5-19】利用continue与break语句设计猜数小游戏125
【实战练习5-20】利用break语句设计抓奖程序126
【实战练习5-21】利用break和continue语句设计猜拳游戏127
5.2.5 循环嵌套128
【实战练习5-22】利用循环嵌套完成阶乘计算129
【实战练习5-23】利用循环嵌套完成条件购物129
【实战练习5-24】利用循环嵌套完成空心正方形输出130
【实战练习5-25】利用循环嵌套完成空心三角形输出130
【实战练习5-26】利用循环嵌套完成实心菱形输出131
【实战练习5-27】利用循环嵌套完成回字形输出132
【实战练习5-28】利用循环嵌套实现概率抽取133
5.2.6 try语句134
【实战练习5-29】利用try语句实现矩阵乘积135
5.3 m文件135
5.3.1 脚本文件与函数文件135
5.3.2 函数文件的基本使用136
【实战练习5-30】利用函数将直角坐标转换为极坐标137
【实战练习5-31】利用递归函数求阶乘137
【实战练习5-32】利用递归函数求斐波那契级数137
【实战练习5-33】利用函数求一元二次方程的解138
5.3.3 函数文件的嵌套使用139
【实战练习5-34】利用函数嵌套调用实现矩阵运算139
【实战练习5-35】利用函数嵌套绘制微分方程曲线141
【实战练习5-36】利用函数嵌套调用求极值142
5.4 文件操作142
5.4.1 文件操作函数143
5.4.2 文件的打开143
5.4.3 二进制文件的读写143
【实战练习5-37】读二进制文件144
【实战练习5-38】写二进制文件144
【实战练习5-39】二进制文件读写操作145
5.4.4 文件的关闭145
5.4.5 文本文件的读写145
【实战练习5-40】读文本文件146
【实战练习5-41】写文本文件147
5.4.6 文件定位和查询文件状态147
【实战练习5-42】对文本文件进行操作148
5.4.7 按行读取文件数据148
【实战练习5-43】读取文件生成矩阵148
【实战练习5-44】数据文件的读写与输出149
5.5 MATLAB面向对象设计方法149
5.5.1 类的定义及说明149
5.5.2 类的应用案例150
【实战练习5-45】完成一个简单类的调用150
【实战练习5-46】使用类调用完成判别式151
【实战练习5-47】使用类绘制三维网格图152
【实战练习5-48】使用类计算三角形面积152
5.5.3 类的继承和多态154
【实战练习5-49】类的继承与多态应用154
5.5.4 类中get()和set()函数156
【实战练习5-50】类中get()和set()函数的应用157
第6章 MATLAB的绘图应用158
6.1 二维绘图功能158
6.1.1 绘制函数曲线158
【实战练习6-1】绘制正弦曲线159
【实战练习6-2】绘制多条曲线160
【实战练习6-3】在不同窗口绘制图形160
【实战练习6-4】使用子图绘制多条曲线163
6.1.2 使用图形对象及句柄绘图163
【实战练习6-5】绘制曲线y=e-tsin2πt164
【实战练习6-6】在同一坐标轴绘制多条曲线165
6.1.3 绘制对数坐标图166
【实战练习6-7】使用subplot绘制曲线166
6.1.4 绘制特色二维图167
【实战练习6-8】绘制特色羽毛图168
【实战练习6-9】绘制多种特色二维曲线168
【实战练习6-10】绘制面积图与散点图169
【实战练习6-11】绘制饼图和直角柱状图169
【实战练习6-12】绘制在极坐标系中的曲线170
6.1.5 绘制符号函数曲线172
【实战练习6-13】利用ezplot()函数绘制曲线172
【实战练习6-14】使用子图绘制不同函数曲线172
【实战练习6-15】利用fplot()函数绘图173
【实战练习6-16】绘制同一坐标系上多条三角函数曲线174
6.2 三维绘图功能175
6.2.1 绘制三维曲线图175
【实战练习6-17】绘制两组函数三维曲线175
【实战练习6-18】修饰图元属性绘制三维曲线176
【实战练习6-19】构建网格矩阵并绘制三维曲线176
【实战练习6-20】绘制三元函数三维曲线图177
6.2.2 绘制常用三维立体图178
【实战练习6-21】利用子图绘制多种三维立体图179
【实战练习6-22】绘制三维顶点多边形立体图180
【实战练习6-23】绘制三维向量场图和三维彩带图180
【实战练习6-24】绘制随机数三维散点图181
【实战练习6-25】绘制三维组合图182
6.2.3 绘制三维网格图182
【实战练习6-26】绘制给定函数三维网格图183
【实战练习6-27】绘制三角函数三维网格图183
【实战练习6-28】绘制给定区间的三维网格图184
6.2.4 绘制三维曲面图184
【实战练习6-29】绘制马鞍曲面图185
【实战练习6-30】绘制函数曲面图185
【实战练习6-31】利用子图绘制网格及曲面图186
6.2.5 绘制特色三维立体图187
【实战练习6-32】绘制球面图187
【实战练习6-33】绘制柱面图188
【实战练习6-34】绘制柱面函数立体图188
【实战练习6-35】绘制多峰立体图189
6.2.6 图形颜色的修饰190
6.2.7 色彩的渲染191
【实战练习6-36】输出球体不同渲染效果192
6.2.8 设置光照效果192
【实战练习6-37】输出柱体不同光照效果193
6.2.9 设置等高线及垂帘193
【实战练习6-38】输出等高线和垂帘效果194
6.2.10 设置三维图形姿态194
【实战练习6-39】多峰曲面不同视角效果对比194
6.3 创建动画195
6.3.1 质点动画195
【实战练习6-40】绘制二维平面动点曲线196
【实战练习6-41】绘制三维立体动点曲线196
6.3.2 电影动画197
【实战练习6-42】输出多峰旋转效果198
【实战练习6-43】输出直径变化的旋转效果198
【实战练习6-44】输出多峰立体图动画效果198
6.3.3 程序动画200
【实战练习6-45】实时更新曲线效果200
【实战练习6-46】绘制动画圆环200
【实战练习6-47】绘制动画衰减曲线201
6.4 图像及视频操作202
6.4.1 提取图像文件202
【实战练习6-48】显示静态图片202
【实战练习6-49】实时更新图片效果203
6.4.2 播放视频文件203
【实战练习6-50】实现图片的动画效果204
【实战练习6-51】拆分视频文件为静态图片205
6.4.3 保存视频文件206
【实战练习6-52】将静态图片存储为视频文件207
第7章 Simulink仿真基础应用208
7.1 Simulink仿真界面及模型208
7.1.1 仿真界面及模型仿真208
【实战练习7-1】建立简单PID控制仿真209
7.1.2 基本模块211
7.2 模块参数设置215
7.2.1 基本参数设置215
【实战练习7-2】建立三种比例环节的仿真219
【实战练习7-3】建立三种惯性环节的仿真220
【实战练习7-4】建立积分环节的仿真221
【实战练习7-5】建立复杂模型仿真221
7.2.2 模块属性设置222
7.2.3 仿真参数设置223
7.3 Simulink仿真命令225
7.3.1 线性化处理命令225
7.3.2 构建模型命令225
【实战练习7-6】使用命令建立仿真模型227
【实战练习7-7】利用工具栏进行PID仿真228
【实战练习7-8】不同二阶系统参数的仿真229
7.4 子系统的封装231
【实战练习7-9】创建子系统的仿真231
7.5 S函数组合仿真233
7.5.1 S函数的结构233
7.5.2 S函数操作235
7.5.3 S函数应用案例236
【实战练习7-10】创建自定义函数236
7.6 Simulink与m文件组合仿真238
7.6.1 在m文件中运行Simulink239
【实战练习7-11】在脚本中运行Simulink并绘图240
【实战练习7-12】通过脚本程序设置PID仿真241
【实战练习7-13】使用脚本程序输入参数运行仿真242
7.6.2 在Simulink中运行m文件244
【实战练习7-14】在Simulink中运行m文件进行仿真244
第8章 App界面设计246
8.1 图形用户界面开发环境246
8.1.1 初识App246
8.1.2 使用空白界面建立App248
8.2 App组件与属性250
8.2.1 App的组件250
8.2.2 组件控制属性253
8.2.3 句柄式图形对象254
8.2.4 创建图形句柄的常用函数256
8.2.5 以编程方式开发App257
【实战练习8-1】利用plot()函数在App上绘制二维曲线图257
8.3 回调函数258
8.3.1 创建回调函数258
8.3.2 回调函数的使用258
8.4 标签、按钮与编辑字段259
8.4.1 标签(Label)259
8.4.2 按钮(Button)259
8.4.3 编辑字段(EditField)260
【实战练习8-2】计数器界面设计260
【实战练习8-3】数制转换界面设计261
【实战练习8-4】简单计算器界面设计263
【实战练习8-5】模拟计算器界面设计264
8.5 单选按钮组、切换按钮组、复选框、面板与日期选择器266
8.5.1 单选按钮组(Button Group)266
8.5.2 切换按钮组(Button Group)266
8.5.3 复选框(Check Boxes)266
8.5.4 面板(Panel)267
8.5.5 日期选择器(Date Picker)267
【实战练习8-6】称重界面设计267
【实战练习8-7】利用单选按钮组设计测试界面268
【实战练习8-8】利用切换按钮组设计运动会比赛项目界面271
8.6 坐标区与图像272
8.6.1 坐标区(UIAxes)272
【实战练习8-9】利用编辑文本数据绘制二维曲线272
【实战练习8-10】利用按钮选择绘制多种几何图形274
【实战练习8-11】利用编辑字段绘制火柴杆二维图275
【实战练习8-12】利用按钮绘制二维子图277
8.6.2 图像(Image)278
【实战练习8-13】利用函数绘制曲面图278
【实战练习8-14】使用傅里叶变换绘制频谱分析图279
【实战练习8-15】利用画布显示一幅图片281
【实战练习8-16】利用App制作一张工作证281
【实战练习8-17】利用按钮显示多幅图片282
【实战练习8-18】在画布中的动画显示284
8.7 列表框与下拉框285
8.7.1 列表框(ListBox)285
【实战练习8-19】利用列表框绘制网格和球面图286
8.7.2 下拉框(DropDown)287
【实战练习8-20】利用下拉框绘制三维特色图287
8.8 滑块、微调器与选项卡289
8.8.1 滑块(Slider)289
【实战练习8-21】设计滑块与编辑文本联动界面289
【实战练习8-22】利用App设计音乐播放界面289
8.8.2 微调器(Spinner)291
【实战练习8-23】设计微调器与滑块的联动界面291
【实战练习8-24】App综合界面设计292
8.8.3 选项卡(TabGroup)294
8.9 表与树295
8.9.1 表(UITable)295
8.9.2 表操作案例296
【实战练习8-25】在App上创建、修改成绩表296
【实战练习8-26】在App上显示Excel成绩数据并绘图298
【实战练习8-27】设计城市温度变化表并绘图299
8.9.3 树(Tree)302
【实战练习8-28】创建标准树和复选框树组合界面302
【实战练习8-29】创建二级树结构界面303
8.10 仪器303
【实战练习8-30】设计电控信号监测界面303
【实战练习8-31】设计工作台操作界面304
【实战练习8-32】设计一个模拟稳压电源操作界面307
8.11 菜单设计309
8.11.1 利用组件创建菜单309
【实战练习8-33】利用“菜单栏”组件创建菜单并选择绘图309
【实战练习8-34】利用“工具栏”组件创建菜单并选择绘图312
8.11.2 利用程序命令创建级联菜单313
【实战练习8-35】创建菜单并调用命令绘图315
【实战练习8-36】创建菜单并调用函数绘图315
8.11.3 利用程序命令创建下拉框菜单317
【实战练习8-37】创建两个下拉框菜单和一个列表菜单318
【实战练习8-38】创建下拉框菜单并选择绘图319
8.11.4 利用程序命令创建上下文菜单320
【实战练习8-39】创建上下文菜单并选择绘图321
8.12 对话框设计322
8.12.1 对话框操作322
8.12.2 专用对话框323
【实战练习8-40】建立一个选择绘图列表对话框324
【实战练习8-41】建立一个提示信息对话框并加入颜色阵图标326
【实战练习8-42】建立一个等待条对话框,设置调用、处理和完成信息显示327
【实战练习8-43】建立4种对话框并进行显示328
8.12.3 创建标准对话框328
【实战练习8-44】列表选择对话框与信息对话框的混合设计329
8.13 App打包330
8.13.1 什么是打包330
8.13.2 打包过程331
8.13.3 打包注意事项331
第9章 MATLAB与其他程序的调用332
9.1 MATLAB与外部数据的交互332
9.1.1 应用程序接口介绍332
9.1.2 交互文件333
9.2 MATLAB与C语言的交互335
【实战练习9-1】利用MATLAB调用C 语言函数335
【实战练习9-2】利用MATLAB调用C语言函数336
【实战练习9-3】利用m文件调用cpp文件并进行对比337
【实战练习9-4】利用MATLAB调用C语言程序计算矩阵的积338
9.3 MATLAB与Python语言的交互339
9.3.1 MATLAB调用Python语言常用方法340
9.3.2 MATLAB调用Python语言变量341
【实战练习9-5】利用MATLAB直接访问Python语言模块库变量341
9.3.3 MATLAB调用Python语言列表341
【实战练习9-6】利用MATLAB直接调用Python语言列表342
【实战练习9-7】在MATLAB中运行Python语言列表并绘图342
9.3.4 MATLAB调用Python语言日期数据343
9.3.5 MATLAB调用Python语言元组数据343
【实战练习9-8】利用MATLAB调用Python语言元组344
9.3.6 MATLAB调用Python语言字典数据344
【实战练习9-9】利用MATLAB调用Python语言字典344
【实战练习9-10】利用MATLAB调用Python语言的类函数345
第10章 MATLAB的建模346
10.1 建模概述346
10.1.1 建模的作用346
10.1.2 建模的方法349
10.1.3 数学模型的特点及分类350
10.2 根据机理建模350
【实战练习10-1】根据小车倒立摆的动力学分析,建立数学模型350
【实战练习10-2】由惯性圆盘的直流电动机参数建立数学模型353
【实战练习10-3】根据机械平移系统的平衡,建立数学模型355
【实战练习10-4】由旋转倒立摆的力学及电学分析,建立数学模型357
10.3 根据仿真优化数学模型360
【实战练习10-5】仿真优化数学模型360
10.4 根据实验数据建模362
【实战练习10-6】二阶液位的实验建模362
参考文献365
MATLAB R2023a是MathWorks公司于2023年3月推出的新版本。该软件在工程计算、控制系统仿真、建模、信号处理与通信、图像处理、信号检测、金融建模设计与分析等领域中,不仅在实时脚本和函数编辑中增加了多项辅助功能,还对App组件浏览器设置了重新排序子级,增加了用户体验。该版MATLAB应用范围不断扩大,支持Python语言的语法突出显示,对原有工具箱也做了改进和缺陷(Bug)修复;拥有更多数据分析、机器学习和深度学习选项,且速度比以往更快;能将大型数据集运行分析扩展到群集和云。
本书以培养学生的基本操作技能、综合应用能力和创新能力为目标,系统讲解了基础操作和算法应用,采用了300多个案例进行讲解,是一本工科院校学生不可缺少的教材,亦可作为理论教学、实验、通识选修课的参考书。
本书最大的特色是案例教学,该内容将MATLAB软件与实战练习融为一体,一方面帮助使用者学习MATLAB编程方法;另一方面为学习高等数学算法提供支持,使复杂的数学计算用一个函数即可完成,大大节省了计算时间。
本书的编写凝聚了作者多年理论及实验教学经验,力求将计算机软件操作与理论分析有机地结合起来。本书获得了深圳北理莫斯科大学教材出版资助。
欢迎大家对书中内容进行交流,对出现的错误敬请读者批评指正。
编著者
2024年1月
贾云得 北京理工大学教授,深圳北理莫斯科大学工程系主任
《MATLAB编程实战——手把手教你掌握300个精彩案例》从便于读者动手实践的角度出发,深入浅出地讲解MATLAB的使用方法,通过300多个应用案例全面论述矩阵运算、函数应用、程序设计、Simulink仿真及App设计等方面的知识,帮助读者边学边练,快速掌握MATLAB编程及Simulink仿真方法。本书对于MATLAB/Simulink初学者具有极高的参考价值。
陆耀 北京理工大学教授,智能感知与计算机技术团队负责人
《MATLAB编程实战——手把手教你掌握300个精彩案例》以MATLAB2023a为操作平台,系统介绍MATLAB矩阵运算、程序设计、Simulink仿真、App界面设计及多语言联合调用。本书以培养读者的科研素质为出发点,全书使用300多个应用实例进行讲解,可以作为高等院校学生学习MATLAB/Simulink编程的入门参考读物。
何潇 清华大学自动化学院教授,多项国家自然科学基金负责人
MATLAB是科学计算领域首屈一指的编程工具。《MATLAB编程实战——手把手教你掌握300个精彩案例》是一部介绍MATLAB科学运算的实用教科书,能帮助读者在较短的时间内迅速掌握MATLAB矩阵运算函数、数学计算、结构化编程及仿真方法。本书能让读者在学习过程中体验软件开发的乐趣,有助于读者参加数学建模比赛及创新项目。
宋廷强 青岛科技大学信息科学技术学院副院长
《MATLAB编程实战——手把手教你掌握300个精彩案例》不仅系统介绍了MATLAB的知识体系,而且配套提供完整的教学课件、程序代码、教学大纲及习题解答等学习资源。这些学习资源可帮助读者快速掌握编程方法,易于动手实践,提高学习效率。
评论
还没有评论。