MATLAB 科学计算、算法开发、数据可视化、数据分析、高级程序设计、交互式环境
    MATLAB的重要特征:
    (1)是一种技术计算的高级语言。
    (2)提供了一个管理代码、文件和数据的开发环境。
    (3)提供探索、设计和迭代求解的交互式工具。
    (4)自带了支持线性代数、统计学、傅里叶分析、过滤、最优化和数值集成的数学函数。
    (5)能生成辅助数据可视化的高质量二维和三维图像。
    (6)提供了能生成个性化图形用户接口的工具。
    (7)可以和其他语言进行集成,如C/C++、Java、Microsoft Excel、COM、FORTRAN。

    MATLAB语言包含向量和矩阵运算。
    MATLAB具有传统程序设计语言的特点,包括算术运算符、控制流、数据结构、数据类型、面向对象设计、调试等。和传统语言相比,MATLAB语言可以实现更快速编程和开发算法,不需要执行那些低级的管理任务(如声明变量、指定数据类型、分配内存等)
    可以在不需要编译和连接的情况下,一次执行一组或几组指令,并可重复执行直到最优解。

    一些MATLAB工具
    (1)MATLAB Editor——用来编辑函数和标准化调试,如设置断点、分步执行模拟实验。
    image.png
    (2)M-Lint Code Checker(主页—分析代码)——分析代码和提出建议以改善性能和进行维护。
    (3)MATLAB Profiler(主页—运行并计时)——记录执行每行代码所用的时间。
    image.png
    (4)Directory Reports——扫描目录中的所有文件并且能够产生代码效率报表、文件区别报表、文件独立性报表和代码费用报表。
    用户接口 交互式工具GUIDE(图形用户接口开发环境)

    支持整个数据分析过程
    (从外部设备和数据库获取数据、数据预处理、数据可视化、数值分析、结果展示)
    (1)
    高效的访问数据文件、其他应用、数据库和外部设备。
    Excel、ASCII文本文件、二进制图像、声音、视频、科技档案(HDF\HDF5)、I/O函数的为进制文件等
    浏览Web网页和XML数据。
    (2)
    提供了用于数据分析的交互式工具和命令行操作,包括数据分段、数据缩放、取均值法、插值法、阈值化、平滑化、相关性分析、傅里叶分析、过滤法、寻找一维峰值和零点、基本统计学方法和曲线求律法矩阵分析等。
    (3)
    可以调用其他应用和语言(如C、C++、COM、DLLs、Java、Excel等,可以访问FTP网站和Web设备,通过数据库工具集可访问ODBC/JDBC数据库)。

    数据可视化
    二维、三维图像工具、三维例题可视化工具、生成交互式图像工具
    提供表示二维数据、三维标量数据和三维向量数据的函数,来可视化和理解大量的复杂多维数据。
    自定义图(添加多个坐标轴、改变线和标志颜色,添加注释,用LaTeX工具对公式和图例进行排版,绘制路径)

    MATLAB具有图像编辑和图像设计的交互式工具,对于一个MATLAB图像,可以做以下工作。
    (1)将新的数据集合通过拖曳的方式拖到图像上。 (2)更改图像中任一对象的属性。
    (3)更改缩放、旋转、视图(即全景)、相机角度、光。 (4)添加数据标签和注释。
    (5)绘制形状。 (6)为重用不同的数据生成一个M文件。
    image.png
    image.png

    数值计算
    (1)矩阵和线性代数的计算。(2)多项式和插值。 (3)傅里叶分析和过滤器。
    (4)统计学和数据分析。
    (5)最优化和数值积分。(6)常微分方程(ODEs)。(7)偏微分方程(PDEs)。(8)稀疏矩阵运算。