已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数学实验简明教程 MATLAB 入门 东南大学数学系 前 言ii ii 2007 10 10 i 前 言 MATLAB 是美国 MathWorks 公司自 20 世纪 80 年代中期推出的数学软件 优秀的 数值计算能力和卓越的数据可视化能力使其很快在数学软件中脱颖而出 到目前为止 其最高版本 7 0 版已经推出 随着版本的不断升级 它在数值计算及符号计算功能上得 到了进一步完善 MATLAB 已经发展成为多学科 多种工作平台的功能强大的大型软 件 在欧美等高校 MATLAB 已经成为线性代数 自动控制理论 概率论及数理统计 数字信号处理 时间序列分析 动态系统仿真等高级课程的基本教学工具 是攻读学 位的大学生 硕士生 博士生必须掌握的基本技能 MATLAB 的主要特点是 有高性能数值计算的高级算法 特别适合矩阵代数领域 有大量事先定义的数学函数 并且有很强的用户自定义函数的能力 有强大的绘图功能以及具有教育 科学和艺术学的图解和可视化的二维 三维 图 基于 HTML 的完整的帮助功能 适合个人应用的强有力的面向矩阵 向量 的高级程序设计语言 与其它语言编写的程序结合和输入输出格式化数据的能力 有在多个应用领域解决难题的工具箱 本教程提供了使用 MATLAB 的入门指导 它基于 MATLAB7 0 版 内容较浅 主 要针对大学一年级的 几何与代数 的课程需要 对一些基本的命令的使用格式作了 简单的说明 并配备了例题加以说明其用法 并安排了两个实验报告模板 因此 对 于初学者自学是很有帮助的 需要了解 MATLAB 的更多内容的读者可以使用 MATLAB 软件自带的帮助系统 也可以参考有关书籍 如 1 李继成 数学实验 高等教育出版社 2006 年 10 月 第 1 版 2 罗建军 MATLAB 教程 电子工业出版社 2005 年 07 月 第 1 版 3 徐金明等 MATLAB 实用教程 清华大学出版社 2005 年 7 月 第 1 版 4 张圣勤 MATLAB7 0 实用教程 机械工业出版社 2006 年 7 月 第 1 版 第 1 章 初识 MATLAB 1 第 1 章 初识 MATLAB 本章介绍 MATLAB 软件的界面以及几个基本操作 1 1 MATLAB 界面 1 1 1 安装 MATLAB7 0 和安装大多数软件一样 只要把 MATLAB7 0 安装盘插入光驱 它就会自动启动安 装程序 用户可以根据安装程序的提示和个人需要顺利地完成 MATLAB7 0 的安装 当 然 这里假定用户的硬件和软件系统是符合 MATLAB7 0 的安装需求的 1 1 2打开 MATLAB 如果桌面上有 MATLAB 快捷按钮 即图标 用户就可以点击该图标来打开 MATLAB 用户也可以从开始菜单中打开 MATLAB 如图 1 1 1 所示 图 1 1 1 从开始菜单中打开 MATLAB MATLAB 入门 2 1 1 3MATLAB7 0 界面 MATLAB7 0 的界面包括 标题栏 菜单栏 工具栏 当前路径窗口 命令历史记 录窗口 命令窗口等 如图 1 1 2 所示 图 1 1 2 MATLAB 界面窗口 1 1 4获取帮助 用户可以通过下列途径获取 MATLAB 软件自带的帮助信息 菜单栏的 Help 按钮 工具栏的按钮 命令窗口中的 MATLAB Help 链接 命令窗口中的 Demos 链接 1 1 5自由探索 用户可以尝试点击 MATLAB 界面上的各个按钮 看看它们的功能 如果不小心关闭 了当前路径窗口 命令历史记录窗口或命令窗口 可以通过菜单栏的 Desktop 菜单 中 Desktop Layout Default 恢复 如图 1 1 3 所示 第 1 章 初识 MATLAB 3 图 1 1 3 把 MATLAB 界面窗口恢复为默认状态 1 2 简单的计算与图形功能 1 2 1 大材小用 在命令窗口中的 后面输入 1 369 2 sin 7 10 pi sqrt 26 48 2 9 并按回车键可得 图 1 2 1 MATLAB 的计算功能 上面输入的 1 369 2 sin 7 10 pi sqrt 26 48 2 9 是一个命令 它要求 MATLAB MATLAB 入门 4 计算的值 经过 MATLAB 运算的结果为 3 3097 近似值 2 7 1 369sin26 482 9 10 p 可见 MATLAB 的数学表达式命令格式与很多常用的高级语言相似 当然 MATLAB 的功能远远不止这种简单的计算 点击命令窗口中的 Demos 链接就 可以看到 MATLAB 的其他基本功能 1 2 2 打开简单的图形窗口 在命令窗口中的 后面输入 funtool 并按回车键可得如图 1 2 2 所示的三个窗口 图 1 2 2 MATLAB 的计算功能 第 1 章 初识 MATLAB 5 其中上面的两个窗口 Figure 1 和 Figure 2 中所展示的就是下面的窗口 Figure 3 中的两个函数 f x 和 g 1 在区间 2 2 上的图象 用户可以在 Figure 3 的窗口中填写适当的函数表达式 回车后就可以从上面的窗口中观察到该 函数的图象了 也可以通过 Figure 3 中的功能键按钮 对所上述函数进行简单操作 求函数 f x 的导数 求函数 f x 的积分 对函数 f x 简化 求函数 f x 的分子部分 求函数 f x 的分母部分 求函数 f x 的倒数 求函数的反函数 MATLAB 入门 6 第 2 章 矩阵及其基本运算 本章从最基本的运算单元 矩阵 出发 介绍 MATLAB 的命令及其用法 2 1 矩阵的输入与生成 2 1 1 实数值矩阵的输入 不管是任何矩阵 向量 我们可以直接按行方式输入每个元素 同一行中的元素用 逗号 或者用空格符来分隔 且空格个数不限 不同的行用分号 分隔 所有元素处于 一对方括号 内 如 图 2 1 1 输入一个行矩阵 注意 命令行中的百分号 起注释的作用 MATLAB 自动将 以及其后的内容显示为 绿色 在执行这个命令行的命令时 自动忽略 以及其后的内容 这一点与其他 高级计算机语言是类似的 又如 在命令窗口的提示符 后面输入 X Data 2 32 3 43 4 37 5 98 这是一个 2 阶方阵 并按回车键可得 X Data 第 3 章 线性方程组 7 2 3200 3 4300 4 3700 5 9800 再如 图 2 1 2 可以分行输入一个行矩阵 注意 上面的所提到的逗号和分号在输入的时候要注意输入法状态 以 智能 ABC 输 入法 为例 在 全角 或 中文标点 格式下输入的逗号 和分号 将会被 MATLAB 用红色提示为错误输入 如图 2 1 3 所示 图 2 1 3 智能 ABC 输入法 5 0 版的几种输入状态 MATLAB 入门 8 图 2 1 4 MATLAB 提示 因此 应该在 半角半角 及及 英文标点英文标点 格式格式下输入标点符号 如逗号 分号 句号 小数点 2 1 2 特殊矩阵的生成 1 全零阵 第 3 章 线性方程组 9 图 2 1 5 用函数 zeros 生成全零阵 2 单位阵 MATLAB 入门 10 图 2 1 6 用函数 eye 生成全零阵 3 全 1 阵 函数 ones 格式 Y ones n 生成 n n 全 1 阵 Y ones m n 生成 m n 全 1 阵 Y ones size A 生成与矩阵 A 相同大小的全 1 阵 2 2 矩阵运算 第 3 章 线性方程组 11 2 2 1 加 减运算 图 2 2 1 矩阵的加减运算 注意 如果把图 2 2 1 中的命令换成 A 1 2 3 4 B 5 6 7 8 C A B D A B 则回车后 得到的结果就只有 C 和 D 的值了 由此可见其中的两个分号 一个紧 接着 A 1 2 3 4 的后面 另一个紧接着 B 5 6 7 8 的后面 的作用 MATLAB 入门 12 2 2 2 乘法 1 两个矩阵相乘 图 2 2 2 两个矩阵的乘法运算 2 矩阵的数乘 第 3 章 线性方程组 13 图 2 2 3 矩阵的数乘运算 2 2 3 除法运算 MATLAB 提供了两种除法运算 左除 和右除 当矩阵 A 可逆时 X A B 是方程 A X B 的解 这里当然还要求 A 的行数 B 的行数 而 X C A 是方程 X A C 的解 这里当然还要求 A 的列数 C 的列数 图 2 2 7 左除和右除 2 2 4 矩阵乘方 图 2 2 8 矩阵的乘方 MATLAB 入门 14 注意 上面的 1 2 2 1 2 要求 1 2 2 1 是可逆的 2 2 5 矩阵转置 图 2 2 9 矩阵的转置 注意 若 A 为复数矩阵 则 A 表示 A 的共轭转置 对于复数矩阵 A 若仅希望转置 则用如下命令 A 见图 2 2 10 第 3 章 线性方程组 15 图 2 2 10 复矩阵的转置与共轭转置 2 2 6 方阵的行列式 det 命令格式 det A 例如 det 1 2 3 4 ans 2 又如 A 1 2 3 4 5 6 7 8 9 D det A D 0 MATLAB 入门 16 2 2 7 方阵的逆矩阵 inv 命令格式 inv A 例如 inv 1 2 3 4 ans 2 0000 1 0000 1 5000 0 5000 注意 若 A 的行列式的值为 0 则 MATLAB 在执行 inv A 这个命令时会给出警告 信息 例如 图 2 2 11 对奇异矩阵求逆时 MATLAB 给出的警告信息 也可以用初等变换的方法来求逆矩阵 例如 第 3 章 线性方程组 17 图 2 2 12 用初等变换的方法来求逆矩阵 用 format rat 命令可以使输出格式为有理格式 例如 图 2 2 13 以有理格式输出结果 第 3 章 线性方程组 其实在其实在 matlabmatlab 中解方程组还是很方便的 例如 对于代数方程组中解方程组还是很方便的 例如 对于代数方程组 Ax b AAx b A 为系数为系数 矩阵 非奇异矩阵 非奇异 的求解 的求解 MATLABMATLAB 中有两种方法 中有两种方法 1 x inv A b 1 x inv A b 采用求逆运算解方程组 采用求逆运算解方程组 2 x A b 2 x A b 采用左除运算解方程组 采用左除运算解方程组 例例 x1 2x2 8x1 2x2 8 2x1 3x2 132x1 3x2 13 MATLAB 入门 18 A 1 2 2 3 b 8 13 A 1 2 2 3 b 8 13 x inv A b x inv A b x x 2 002 00 3 003 00 x A b x A b x x 2 002 00 3 003 00 即二元一次方程组的解即二元一次方程组的解 x1x1 和和 x2x2 分别是分别是 2 2 和和 3 3 对于用对于用 matlabmatlab 解多次的方程组 有符号解法 方法是 先解出符号解解多次的方程组 有符号解法 方法是 先解出符号解 然然 后用后用 vpa F n vpa F n 求出求出 n n 位有效数字的数值解位有效数字的数值解 具体步骤如下 具体步骤如下 第一步第一步 定义变量定义变量 symssyms x x y y z z 第二步第二步 求解求解 x y z x y z solve eqn1 eqn2 eqnN var1 var2 varN solve eqn1 eqn2 eqnN var1 var2 varN 第三步第三步 求出求出 n n 位有效数字的数值解位有效数字的数值解 x vpa x n y vpa y n z vpa z n x vpa x n y vpa y n z vpa z n 如 解二 多 元二 高 次方程组 如 解二 多 元二 高 次方程组 x 2 3 y 1 0 x 2 3 y 1 0 y 2 4 x 1 0y 2 4 x 1 0 解法如下解法如下 syms syms x x y y x y solve x 2 3 y 1 0 y 2 4 x 1 0 x y solve x 2 3 y 1 0 y 2 4 x 1 0 x vpa x 4 x vpa x 4 y vpa y 4 y vpa y 4 结果是结果是 x x 1 635 3 029 i1 635 3 029 i 1 635 3 029 i1 635 3 029 i 283 283 2 987 2 987 y y 1 834 3 301 i1 834 3 301 i 1 834 3 301 i1 834 3 301 i 3600 3600 3 307 3 307 二元二次方程组二元二次方程组 共共 4 4 个实数根个实数根 用用 matlabmatlab 解高次方程组解高次方程组 非符号方程组非符号方程组 解答如下 解答如下 基本方法是 基本方法是 solve s1 s2 sn v1 v2 vn solve s1 s2 sn v1 v2 vn 即求表达式 即求表达式 s1 s2 sns1 s2 sn 组成组成 的方程组 求解变量分别的方程组 求解变量分别 v1 v2 vnv1 v2 vn 具体例子如下具体例子如下 x 2x 2 x yx y y y 3 3 第 3 章 线性方程组 19 x 2x 2 4 x4 x 3 3 0 0 解法解法 x y x y solve x 2solve x 2 x yx y y y 3 x 23 x 2 4 x4 x 3 3 0 0 运行结果为运行结果为 x x 1 1 3 3 y y 1 1 3 2 3 2 即即 x x 等于等于 1 1 和和 3 3 y y 等于等于 1 1 和和 1 5 1 5 或或 x y x y solve x 2solve x 2 x yx y y y 3 x 23 x 2 4 x4 x 3 3 0 x y 0 x y x x 1 1 3 3 y y 1 1 3 2 3 2 结果一样 二元二方程都是结果一样 二元二方程都是 4 4 个实根 个实根 通过这三个例子可以看出 用通过这三个例子可以看出 用 matlabmatlab 解各类方程组都是可以的 方法也有多种 解各类方程组都是可以的 方法也有多种 只是用到解方程组的函数 注意正确书写参数就可以了 非常方便 只是用到解方程组的函数 注意正确书写参数就可以了 非常方便 MATLAB 入门 20 第 4 章 二维绘图和三维绘图 MATLAB 有很强的绘图功能 本章介绍一些简单的二维绘图和三维绘图命令 4 1 二维图形的绘制 4 1 1 二维曲线的简捷绘制 例 4 1 1 画出 y xcosx 在区间 4 4 上的图形 解 在 MATLAB 的命令窗口输入如下命令 ezplot x cos x 4 pi 4 pi 运行后得 图 4 1 1 用 ezplot 命令绘制的 y xcosx 的图象 例 4 1 2 画出椭圆在区域 3 3 4 4 内的图形 22 1 45 xy 解 在 MATLAB 的命令窗口输入如下命令 ezplot x 2 4 y 2 5 1 3 3 4 4 运行后得 附录 实验报告参考模板 21 图 4 1 2 用 ezplot 命令绘制的 x2 4 y2 5 1 的图象 例 4 1 3 画出曲线在区间 0 内的图形 sin3 cos sin3 sin xtt ytt 解 在 MATLAB 的命令窗口输入如下命令 ezplot sin 3 t cos t sin 3 t sin t 0 pi 运行后得 图 4 1 3 用 ezplot 命令绘制的参数曲线的图象 4 1 2 在同一个坐标系内绘制多条曲线 命令格式 plot x1 y1 s1 x2 y2 s2 其中 s1 s2 等为可选参数 用来指定绘制曲线的线型 颜色 数据点形状等 线型可选参数有 实线 虚线 点划线 和 双划线 颜色可选参数有 y 黄色 m 品红色 c 青色 r 红色 g 绿色 b 蓝色 w 白色 和 k 黑色 数据点可选参数有 实心点 o 圆圈 x 叉 十字 星号 s 方块 d 菱 MATLAB 入门 22 形 v 下三角 上三角 右三角 p 五角星 和 h 六角星 例 4 1 4 在同一个坐标系内画出 y e0 1xsin2x 和 y xcosx 在区间 上的图形 解 在 MATLAB 的命令窗口输入如下命令 x pi 0 1 pi 设置 x 的取值范围和取点间距 y1 exp 0 1 x sin 2 x y2 x cos x 注意其中的 plot x y1 r x y2 o b 两条曲线用不同的数据点形状和颜色 运行后得 图 4 1 4 在同一个坐标系内绘制多条曲线 4 2 三维图形的绘制 4 2 1 三维曲线的绘制 命令格式 plot3 x1 y1 z1 s1 x2 y2 z2 s2 其中 s1 s2 等为可选参数 与 plot 中的用法完全相同 不选则使用默认设置 如果只绘制一条三维曲线 也可以用简捷的绘制命令 ezplot3 命令格式与 ezplot 类似 见下面的例子 例 4 2 1 绘制三维螺线在区间 0 4 上的图形 2cos 2sin 1 5 xt yt zt 解 方法一 在 MATLAB 的命令窗口输入如下命令 t 0 0 1 4 pi x 2 cos t y 2 sin t 附录 实验报告参考模板 23 z 1 5 t plot3 x y z xlabel x ylabel y zlabel z 标识坐标轴 运行后得图 4 2 1 图 4 2 1 用 plot3 绘制的三维螺线 图 4 2 2 用 ezplot3 绘制的三维螺线 方法二 在 MATLAB 的命令窗口输入如下命令 ezplot3 2 cos t 2 sin t 1 5 t 0 4 pi 运行后得图 4 2 2 4 2 2 三维网线图与表面图的绘制 命令格式 mesh x y z 绘制三维网线图 surf x y z 绘制三维表面图 也可以在调用命令时增加可选参数来改变图形的颜色和线型 还可以用简捷的绘制命令 ezmesh 与 ezsurf 绘制三维网线图与表面图 例 4 2 2 画出曲面 z sin xy 在区域 2 2 2 2 上的图形 解 在 MATLAB 的命令窗口输入如下命令 x 2 0 1 2 y 2 0 1 2 设置 x 的取值范围和取点间距 X Y meshgrid x y 用 x 和 y 产生 格点 矩阵 Z sin X Y 计算 格点 矩阵的每个 格点 上的函数值 mesh X Y Z 绘制网线图 运行后得图 4 2 3 MATLAB 入门 24 图 4 2 3 用 mesh 绘制的三维网线图 如果将上面的 mesh X Y Z 换成 surf X Y Z 则运行后得图 4 2 4 图 4 2 4 用 surf 绘制的三维表面图 例 4 2 3 画出曲面 z 的图形 22 e xy x 解 在 MATLAB 的命令窗口输入如下命令 ezsurf x exp x 2 y 2 运行后得图 4 2 5 附录 实验报告参考模板 25 图 4 2 5 用 ezsurf 绘制的三维表面图 4 2 3 特殊曲面的绘制 对于空间曲面 F x y z 0 我们通常采用平行截面法来认识该曲面的特性 即用 平行于坐标面的平面去 截 曲面 F x y z 0 通过研究交线的性质来充分认识曲面 的性质 例 4 2 4 绘制马鞍面 z x2 y2的图形 并用平行截面法观察马鞍面的特点 解 在 MATLAB 的命令窗口输入如下命令 edit 新建一个 M 文件 或者点击 MATLAB 的菜单栏的 file 按钮 并从弹出的菜单中选择 new 然后从其子菜单中选择 M File 如图 4 2 6 所示 MATLAB 入门 26 图 4 2 6 新建一个 M 文件 还可以直接点击 MATLAB 的工具栏的 按钮 新建一个 M 文件 MATLAB 会弹出如图 4 2 7 所示的 M 文件编辑器 图 4 2 7 M 文件编辑器 在上述 M 文件编辑器中输入如下内容 绘制马鞍面 z x 2 y 2 的图形 并用平行截面法观察马鞍面的特点 x 4 0 1 4 y x 设置 x 的取值范围和取点间距 X Y meshgrid x y 用 x 和 y 产生 格点 矩阵 Z X 2 Y 2 计算 格点 矩阵的每个 格点 上的函数值 ix find X 2 找到 x 坐标 2 的点的位置 px 2 ones 1 length ix 截痕 上的点的 x 坐标 附录 实验报告参考模板 27 py Y ix 截痕 上的点的 y 坐标 pz Z ix 截痕 上的点的 z 坐标 subplot 1 2 1 把图形窗口划分成 1 行 2 列 并在第 1 个块里建立起坐标系 hold on 保留当前的绘图和确定轴的性质 使后续的图形命令加入现存的图 形 mesh X Y Z 绘制网线图 plot3 px py pz r 用红色的星号绘制截痕曲线 subplot 1 2 2 在第 2 个块里建立起坐标系 plot3 px py pz 在第 2 个块里绘制 截痕 曲线 要保存这个 M 文件可以点击工具栏上的 软盘图标 按钮 或从菜单栏选择 Save 或 Save as 首次保存 或用 Save as 另存 一个 M 文件都需要指定路径和文件名 为了不引起麻烦 M 文件应该用英文开头 可含数字 的字符串命名 例如 ma an mian 2007 要运行这个文件中的程序 有以下三种方法 1 点击文件编辑器上面的菜单 Debug 有些版本可能选 Tools 点击选项 run 或 Save and Run 这时在 MATLAB 工作空间中将会出现该程序执行的结果 2 按 F5 3 直接在 MATLAB 命令窗中输入这个文件的文件名 然后回车 运行后得图 4 2 8 图 4 2 8 马鞍面及其被平面所截得的截痕 注意 图 4 2 8 中左边所显示的是从该马鞍面的正上方俯视的效
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新教材高考地理二轮复习综合题专项训练六地理过程类含答案
- 【华师】第三次月考卷
- 语文教学论教案 第三章 语文教学设计
- 调研报告:医疗保险基金管理使用中存在的问题及建议
- 金属的腐蚀与防护-2024年高中化学讲义
- 联盟加盟合同模板
- 挖掘机租赁合同示范文本
- 房地产抵押合同2024年
- 银行承兑汇票贴现协议模板
- 股权投资合作协议格式设计
- 工作纪律检查表
- 砌筑工-技能评分记录表3
- 司索工安全操作规程
- 人教版数学五年级上册课本习题(题目)
- 钢筋合格证(共6页)
- BIM技术全过程工程管理及应用策划方案
- 弯扭构件制作工艺方案(共22页)
- 水利工程填塘固基、堤身加固施工方法
- 中医针灸的骨边穴怎样定位
- 电脱水、电脱盐讲解
- 违约损失率(LGD)研究
评论
0/150
提交评论