目录 1
第1章 数据输入和输出 1
1.1 MATLAB数据输入和输出的方法 1
1.1.1 向MATLAB输入数据 1
1.1.2 从MATLAB提取数据 1
1.2 读写MAT文件 2
1.2.1 MAT文件接口库 2
1.2.2 创建CMAT文件示例 3
1.2.3 读取CMAT文件示例 7
1.2.4 创建FORTRANMAT文件示例 11
1.2.5 读取FORTRANMAT文件示例 15
1.2.6 编译和链接MAT文件 17
1.3 ImportWizard 18
1.3.1 输入MAT数据 18
1.3.2 输入Excel数据 20
1.3.3 输入文本数据 21
1.3.4 输入图像数据 21
第2章 编译器 23
2.1 概述 23
2.1.1 使用编译器 23
2.1.2 MATLAB编译器族 24
2.2 安装和注册 26
2.2.1 系统需求 26
2.2.2 编译器选项文件 27
2.2.3 MATLAB编译器 27
2.2.4 MEX确认 28
2.2.5 MATLAB编译器确认 30
2.3 独立应用 31
2.3.1 MEX文件与独立应用之间的区别 31
2.3.3 在PC上生成独立应用 32
2.3.2 创建独立的C/C++应用 32
2.3.5 生成共享库 37
2.3.4 发布独立应用程序 37
2.3.6 生成COM对象 38
2.3.7 创建Excel插件 38
2.4 控制代码的生成 39
2.4.1 概述 39
2.4.2 编译私有的方法函数 41
2.4.3 生成的头文件 42
2.4.4 内部接口函数 44
第3章 MATLAB与C和FORTRAN接口 47
3.1 MEX文件 47
3.1.1 关于MEX文件 47
3.1.2 使用数据类型 48
3.1.3 MEX文件的组成 49
3.1.5 自动生成MEX文件 50
3.1.4 MEX文件的参数 50
3.1.6 手工生成MEX文件 51
3.1.7 定制MEX文件 55
3.2 引擎函数 57
3.2.1 MATLAB引擎库 57
3.2.2 调用引擎函数示例 57
3.3 其他混合编程方法 64
3.3.1 一个简单的例子 64
3.3.2 C调用经过编译的M文件——高级示例 67
3.3.3 从CMEX文件中调用MATLAB函数 70
第4章 COM生成器(COMBuilder) 72
4.1 创建COM生成器组件 72
4.1.1 创建工程 72
4.1.2 管理M文件和MEX文件 73
4.1.4 打包和分发组件 74
4.1.3 生成组件 74
4.1.5 组件生成的内部过程 75
4.1.6 数据转换 75
4.1.7 调用约定 76
4.1.8 COM生成器组件的兼容性 76
4.2 利用COM生成器组件编程 76
4.2.1 给COM生成器对象添加方法和属性 76
4.2.2 给COM生成器对象添加事件 78
4.2.3 创建类实例 80
4.2.4 调用类实例的方法 82
4.2.5 处理varargin和varargout变量 82
4.2.6 在调用方法的过程中控制错误 82
4.2.7 修改标记 83
4.3.1 创建M文件 84
4.3.2 创建工程 84
4.3 应用举例 84
4.3.3 生成工程 85
4.3.4 创建VisualBasic工程 85
4.3.5 创建用户界面 85
4.3.6 测试应用 88
4.3.7 组件打包 88
第5章 Excel生成器(ExcelBuilder) 90
5.1 创建Excel生成器插件 90
5.1.1 创建工程 90
5.1.2 管理M文件和MEX文件 91
5.1.3 生成组件 92
5.1.4 测试VBA模块 92
5.1.5 打包和发布组件 93
5.2 用Excel生成器组件编程 93
5.2.1 用Excel初始化生成器库 94
5.2.2 创建类的实例 94
5.2.3 调用类实例的方法 96
5.2.4 处理varargin和varargout变量 97
5.2.5 在调用方法的过程中控制错误 98
5.2.6 修改标记 98
5.3 魔方示例 101
5.3.1 一个输入的情况 101
53.2 使用多个文件和变量 103
5.4 谱分析示例 107
5.4.1 创建组件 108
5.4.2 将组件集成到VBA中 109
5.4.3 创建图形用户界面 111
5.4.4 保存和测试插件 116
5.4.5 打包组件 117
5.5 工具库 118
5.5.1 MWUtil类 118
5.5.2 MWFlags类 122
5.5.3 MWStruct类 124
5.5.4 MWField类 127
5.5.5 MWComplex类 127
5.5.6 MWSparse类 128
5.5.7 MWArg类 130
5.5.8 3个枚举类型 130
第6章 MATLAB与VisualBasic接口 132
6.1 DDE(动态数据交换)编程 132
6.1.1 DDE的概念和技巧 132
6.1.2 MATLAB作为服务器端 133
6.1.3 MATLAB作为客户端 135
6.2 MATLAB调用VB组件 136
6.2.1 在MATLAB中创建COM自动化控件 136
6.2.2 对象属性 136
6.2.3 操作对象的方法 142
6.2.4 对象事件 144
6.2.5 确认对象 148
6.2.6 保存和删除工作 149
6.2.7 MATLAB作为自动化客户端示例 150
6.2.8 使用COM集合 154
6.2.9 转换数据 155
6.3 VB调用MATLAB(组件) 156
6.3.1 MATLABCOM自动化方法和属性 156
6.3.2 MATLAB作为自动化服务器端示例 157
第7章 MATLAB与VisualC++接口 162
7.1 VisualC++调用MATLAB引擎 162
7.1.1 引擎库函数 163
7.1.2 阵列的创建与访问 165
7.1.3 在VisualC++中调用MATLAB引擎 168
7.2 MATLAB可执行程序 169
7.2.1 接口函数mexFunction 170
7.2.2 在VisualC++中实现MATLAB可执行程序 170
7.3.1 MATLABC++数学函数库 174
7.3 VC调用MATLAB数学库 174
7.3.2 使用MATLAB数学函数库的环境设置 175
7.3.3 在VisualC++中调用MATLAB数学函数库 175
7.3.4 VC++环境下的MATLAB开发 177
第8章 MATLAB与Excel接口 179
8.1 自动化链接 179
8.1.1 MATLAB作为自动化客户端 179
8.1.2 MATLAB作为自动化服务器端 180
8.2 ExcelLink插件 181
8.2.1 概述 181
8.2.2 安装和操作ExcelLink插件 182
8.2.3 ExcelLink的函数 185
8.2.4 技巧和提示 186
8.2.5 ExcelLink使用实例 188
9.2 SPSS中的对象 191
第9章 MATLAB与SPSS接口 191
9.1 SPSS软件 191
9.3 MATLAB调用SPSS 193
9.4 SPSS调用MATLAB 195
第10章 MATLAB与硬件接口 199
10.1 MATLAB串行接口介绍 199
10.2 利用串行口进行通信 199
10.2.1 一个简单的例子 200
10.2.2 通信步骤及有关函数介绍 201
10.3 应用实例 205
第11章 运行时服务器(RuntimeServer) 208
11.1 概述 208
11.1.1 编译器的局限和约束 208
11.1.2 运行时服务器 209
11.3 开发运行时应用程序应注意的问题 210
11.3.1 防止在命令窗口中输入和输出 210
11.2 安装运行时服务器 210
11.1.3 MATLAB运行时服务器的特点 210
11.3.2 有选择地使默认菜单选项不可用 211
11.3.3 提供一个退出应用程序的方法 213
11.3.4 捕捉错误 214
11.4 开发一个MATLAB运行时GUI应用程序 216
11.4.1 组织文件、管理启动任务 216
11.4.2 编译GUI应用程序 218
11.4.3 测试和调试应用程序 220
11.4.4 运行时GUI应用程序示例 222
11.5 开发MATLAB运行时引擎应用程序 227
11.5.1 组织文件和管理启动任务 227
11.5.2 编译应用程序 229
11.5.3 测试和调试应用程序 229
13.5.4 ActiveX自动化示例 230
11.5.5 引擎API示例 236
11.6 发布MATLAB运行时应用程序 240
11.6.1 创建启动窗口 240
11.6.2 组织文件 240
11.6.3 自动打包 240
11.6.4 手工打包 241
11.6.5 自动生成安装器 241
11.6.6 手工创建安装器 241
第12章 报表生成器(ReportGenerator) 243
12.1 概述 243
12.1.1 什么是报表生成器 243
12.1.2 报表生成器的组成 243
12.1.3 演示——生成一个报表 244
12.2 生成报表 246
12.2.3 使用安装文件编辑器创建报表 247
12.2.1 使用命令行生成报表 247
12.2.2 使用安装文件列表创建报表 247
12.3 编辑组件的属性 254
12.3.1 概述 254
12.3.2 图像“For”循环组件 255
12.4 生成和编辑安装文件 259
12.4.1 组件 259
12.4.2 安装文件编辑器 259
12.4.3 安装文件大纲 259
12.4.4 添加组件 259
12.4.5 激活组件 260
12.4.6 移动组件 260
12.4.7 剪切、复制和粘贴组件 261
12.5 创建自己的组件 261
12.5.2 输入组件分类信息 262
12.5.1 启动组件创建大师 262
12.5.3 创建组件名 263
12.5.4 创建组件属性 264
12.5.5 创建组件的方法 266
12.5.6 回顾所有的组件信息 268
12.5.7 创建和确认组件 268
第13章 改善MATLAB的运行效率 269
13.1 改善运行的技巧 269
13.1.1 分析程序的运行状况 269
13.1.2 循环向量化 270
13.1.3 数组的内存预分配 271
13.1.4 加速运行的其他方法 272
13.2 MATLAB6.5 以上版本对运行效率的改进 272
13.2.1 MATLAB中能加速和不能加速的元素 272
13.2.2 运行MATLAB时应该避免的问题 274
13.2.3 加速运行演示 275
13.3 程序运行情况监测——Profiler 276
13.3.1 Profiler的运行环境 276
13.3.2 使用Profiler 277
13.3.3 监测一个图形用户界面的运行情况 277
13.3.4 从命令窗口监测语句 278
13.3.5 监测综述报表 278
13.3.6 监测详细报表 278
13.3.7 利用Profiler报表中的信息 282
13.3.8 改变Profiler的字体 282
13.4 使用Profile函数 283
13.4.1 Profile函数语法和使用步骤 283
13.4.2 Profile函数使用演示 283
13.4.3 使用Profiler结果结构示例 286
13.5 有效使用内存 288
13.5.1 内存管理函数 288
13.5.2 驻留内存的方法 288