数学实验第一次课_第1页
数学实验第一次课_第2页
数学实验第一次课_第3页
数学实验第一次课_第4页
数学实验第一次课_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

MATLAB基础知识 北京科技大学数学实验 1 课程概述 Matlab与数学实验课程安排 共五节课 前四次讲授 最后一次考试 授课方式 重点讲授与自学相结合 成绩分配 满分100分平时成绩40分 包括 上课 4分 4次课 16分 4分包括 按时上课2分 课堂表现2分 平时作业 4分 4次 16分 只交电子版的综合实验的布置 综合实验报告8分 要求打印报告 如有抄袭为0分 每三人一个组 期末时收取 考试成绩60分 只机试 40分钟2道题 一难一易 不笔试 根据难易程度 程序按步给分 作业分数分配格式正确 1分程序结构清晰 合理 运行结果正确 2分结论分析及心得 1分 北京科技大学数学实验 实验报告包括 实验名称 下面给出 实验目的 本次课程所讲内容 实验任务 布置得作业 实验程序 作业程序 四次实验报告名称 Matlab基础知识Matlab绘图常微分方程求解 曲线拟合及概率统计初步知识线性代数相关运算及数值方法计算定积分附 数学实验报告模板 北京科技大学数学实验 上课不准玩游戏 否则取消考试资格 不准在机房吃东西 遵守机房管理的各项规定 走时将自己的垃圾带走 凳子放好 上课不能共享练习 如发现拷贝 取消考试资格 C D两盘已写保护 课上练习应保存在E盘中 注意事项 北京科技大学数学实验 2 Matlab简介 MATLAB是MatrixLaboratory的缩写 是目前世界上最流行的 应用最广泛的工程计算和仿真软件 它将计算 可视化和编程等功能同时集于一个易于开发的环境 MATLAB主要应用于数学计算 系统建模与仿真 数学分析与可视化 科学工程绘图和用户界面设计等 MATLAB已经成为高等数学 线性代数 自动控制理论 数理统计 数字信号处理等课程的基本工具 各国高校也纷纷将MATLAB正是列入本科生和研究生课程的教学计划中 成为学生必须掌握的基本软件之一 在设计和研究部门 MATLAB也被广泛用来研究和解决各种工程问题 本书以MATLAB7 3平台进行介绍 除了本课程所讲述matlab可以解决一些数学问题外 事实上matlab所能解决的问题远不止这些 可以用于解决更多的工程问题 例如用的比较多的simulink 借助于其中的一些工具箱可以帮助我们解决很多复杂的算法问提等 北京科技大学数学实验 北京科技大学数学实验 3 Matlab的工作环境 Matlab的进入 退出 北京科技大学数学实验 4 Matlab的命令窗口 可以把命令窗口看成 草稿本 或 计算器 在命令窗口输入MATLAB的命令和数据后按回车键 立即执行运算并显示结果 对于简单的问题或一次性问题 在命令窗口中直接输入求解很方便 若求复杂问题时 仍然采用这种方法 输入一行 执行一行 就显得繁琐笨拙 这时可在编辑 调试器中编写M文件 后面详细介绍 即将语句一次全部写入文件 并将该文件保存到MATLAB搜索路径的目录上 然后在命令窗口中用文件名调用 北京科技大学数学实验 命令行的语句格式MATLAB在命令窗口中的语句格式为 变量 表达式 例1在命令窗口输入命令 察看结果 a 3a 3 b sin 命令后面加 不显示结果 ifa bc true 如果a b 则c 1 c为逻辑结果endc 1说明 命令窗口中的每个命令行前会出现提示符 没有 符号的行则是显示结果 程序分析 命令窗口内不同的命令采用不同的颜色 默认输入的命令 表达式以及计算结果等采用黑色字体 字符串采用赭红色 关键字采用蓝色 注释采用绿色 如图所示变量a是数值 b是字符串 c为逻辑True 命令行中的 if end 为关键字 后面的是注释 命令窗口中如果输入命令或函数的开头一个或几个字母 按 Tab 键则会出现以该字母开头的所有命令函数列表 例如 输入 end 命令的开头字母 e 然后按 Tab 键时的显示如图1 4所示 图1 4命令函数列表命令行后面的分号 省略时显示运行结果 否则不显示运行结果 MATLAB变量是区分字母大小写的 myvar和MyVar表示的是两个不同的变量 变量名最多可包含63个字符 字母 数字和下划线 而且第一个字符必须是英文字母 MATLAB可以输入字母 汉字 但是标点符号必须在英文状态下输入 北京科技大学数学实验 数值计算结果的显示格式在命令窗口中 默认情况下当数值为整数 数值计算结果以整数显示 当数值为实数时 以小数后4位的精度近似显示 即以 short 数值的格式显示 如果数值的有效数字超出了这一范围 则以科学计数法显示结果 需要注意的是数值的显示精度并不代表数值的存储精度 例2在命令窗口输入数值 察看不同的显示格式 x pi 在命令窗口输入 并观察MATLAB默认的显示格式x 3 1416用户可以根据需要 对数值计算结果的显示格式和字体风格 大小 颜色等进行设置 方法如下 北京科技大学数学实验 一种方法是在MATLAB的界面选择菜单 File Preference 则会出现参数设置对话框 在对话框的左栏选中 CommandWindow 项 在右边的 Numericformat 栏设置数据的显示格式 x pi 在Numericforma中 将数据显示格式改为 long x 3 14159265358979另一种方法是直接在命令窗口使用 Format 指令来进行数值显示格式的设置 format的语法格式如下 format格式描述format的数据显示格式如表1 3所示 formatlonge x 用科学计数法显示x x 3 141592653589793e 000 北京科技大学数学实验 常用命令Who 将内存中的当前变量以简单形式列出 Whos 列出当前内存变量的名称 大小 类型等信息 Clear 清除内存中的所有变量与函数 Clc 清屏 用于清空命令窗口中的所有的显示内容 clf 清除图形窗口 Help 列出所有最基础的帮助主题 更多内容见菜单中helpdesk 北京科技大学数学实验 常用操作键 北京科技大学数学实验 常用函数 要求重点掌握 abs x 求绝对值sqrt x 开平方round x 四舍五入至最近整数rat x 将实数化为分数表示log x 自然对数log2 x 以2为底的对数log10 x 以10为底的对数 北京科技大学数学实验 5 Editor Dibugger M文件编辑 调试器窗口 对于比较简单的问题和 一次性 问题 通过命令窗口直接输入一组命令来求解比较简便 快捷 但是当待解决的问题所需的命令较多且命令比较复杂时 或当一组命令通过改变少量参数就可以反复被使用去解决不同的问题时 就需要利用M脚本文件来解决 MATLAB通过自带的M文件编辑 调试器来创建和编辑M文件 北京科技大学数学实验 例1编写程序得出50 100范围内的所有素数 解 Matlab命令为 cleary1 primes 100 得到100以内的所有素数n length primes 50 得到50以内的素数的个数y y1 n 1 end 程序分析 将M文件保存在用户自己的工作目录下 命名为 exp 1 先将工作目录添加到搜索路径中 或将MATLAB的 CurrentDirectory 设置为工作目录 运行程序方法 在命令窗口输入命令文件的文件名exp 1 在MATLAB编辑 调试窗口菜单中 debug run 或直接用快捷方式F5或快捷键 M命令文件 北京科技大学数学实验 M函数文件 function 输出参数列表 函数名 输入参数列表 说明 函数名是函数的名称 保存时最好函数名与文件名一致 当不一致时 MATLAB以文件名为准 输入参数列表是函数接受的输入参数 多个参数之间用 隔开 输出参数列表是函数运算的结果 多个参数之间用 隔开 例2编写一函数求n的阶乘 解 Matlab命令为 functiony jc n y 1 fori 1 ny y i endy调用函数文件计算jc 5 北京科技大学数学实验 矩阵的输入矩阵和数组的运算 北京科技大学数学实验 6 MATLAB基本运算 矩阵的输入 常用输入方式直接输入创建矩阵如果矩阵的维数比较小 最方便 最直接的方法就是在命令窗口直接输入矩阵 输入的格式是 整个矩阵以 作为首尾 同行的元素用 或空格隔开 不同行的元素用 或按Enter键来分隔 矩阵的元素可以为数字也可以为表达式 如果进行的是数值计算 表达式中不可包含未知的变量 举例P15例1 北京科技大学数学实验 用矩阵编辑器来创建 修改矩阵它适用于维数较大的矩阵 在调用矩阵编辑器之前必须先定义一个变量 无论是一个数值还是一个矩阵均可 操作步骤如下 在命令窗口创建变量A 在wokspace可以看到多了一个变量A 双击就可打开矩阵编辑器 选中元素可以直接修改元素的值 修改完毕后按关闭按钮 这时变量就定义保存了 北京科技大学数学实验 用矩阵函数来生成矩阵MATLAB提供了大量的函数来创建一些特殊的矩阵 常用的矩阵函数举例 例 输入矩阵解 Matlab命令为 ones 3 生成元素都为1的3阶方阵ans 111111111 北京科技大学数学实验 通过文件生成M文件的保存方法只要在M文件编辑器中按照正常输入矩阵的方法 保存成M文件 使用时在命令窗口直接输入文件名即可 例 用M文件保存矩阵 解 在M文件编辑器中输入以下矩阵 保存文件shuju1 mX 1 2 3 4 5 6 7 8 9 10 11 12 0 2 3 5 8 1 3 7 9 0 4 5 2 3 8 9 0 0 1 0 0 6 3 8 在命令窗口直接输入文件名shuju1 北京科技大学数学实验 数组作为特殊的矩阵 即1 n n 1的矩阵 除了可以作为普通的矩阵输入外 还有其它的方式生成 使用from step to生成数组 当step省略时 表示步长step 1 Step为负数时可以创建降序的数组 例使用from step to创建数组 a 1 0 5 2a 1 0000 0 500000 50001 00001 50002 0000使用linspace和logspace函数生成数组 linspace用来生成线性等分数组 logspace用来生成对数等分数组 Logspace函数可以用于对数坐标的绘制 命令格式如下 linspace a b n 生成从a到b之间线性分布的n个元素的数组 如n省略则默认为100 logspace a b n 生成从10a到10b之间按对数等分的n个元素的数组 如n省略则默认为50 北京科技大学数学实验 矩阵的修改 A i j 矩阵A的第i行第j列元素 A i 矩阵A的第i个元素 A i 取矩阵A的第i列 A j 取矩阵A的第j行 A 以A的所有元素构造2维矩阵A 以A的所有元素作为一个列矩阵 表示空矩阵 北京科技大学数学实验 利用上述符号可以达到对矩阵元素和矩阵本身操作的目的 元素的抽取与赋值A 1 2 3 抽取1 3列A 3 1 1 显示3 2 1列对列的操作同行 同学们思考矩阵的扩充A 12 34 如何扩充为AB 12 34 78 AB 127 348 AA A zeros 2 矩阵的部分删除 北京科技大学数学实验 矩阵和数组的算术运算 矩阵的基本运算是加法 减法 乘法 左除 右除 和乘幂 等 另外还有其它的运算 矩阵A的转置 transpose A A的行列式 det A A的秩 rank A 等 本书将在后面的章节对这些运算作详细的介绍数组的运算在MATLAB中数组就是一行或者为一列矩阵 所以前边介绍的矩阵的输入与修改保存都是用于数组 同时MATLAB还提供了一些创建数组的特殊指令 数组的运算除了作为1 n的矩阵应遵循矩阵的运算规则外 MATLAB中还为数组提供了一些特殊的运算 乘法为 左除为 右除为 乘幂为 设数组 则对应的运算具体为 北京科技大学数学实验 其中 是标量函数 北京科技大学数学实验 P24例2 10 2 11 关系运算和逻辑运算 MATLAB7 3常用的关系操作符有 关系运算的结果是逻辑值1 true 或0 false 常用的逻辑运算符 与 或 非 和xor 异或 例2 9 北京科技大学数学实验 7 MATLAB程序设计 顺序语句循环语句for循环语句for语句的调用格式为 fori 表达式1 表达式2 表达式3循环体End M文件程序控制语句通常包括顺序语句 循环语句 选择语句和交互语句等 北京科技大学数学实验 例用for循环语句生成1 n的乘法表 解 Matlab命令为 functionf Mul n fori 1 nforj i nf i j i j endend在MATLAB命令窗口中调用该函数得到1 8的乘法表 Mul 8 北京科技大学数学实验 while循环语句与for循环语句相比 while循环语句一般用于不能确定循环次数的情况 它的判断控制可以是一个逻辑判断语句 因此它的应用更加灵活 while循环语句的调用格式为 while逻辑表达式循环体end例寻找阶乘超过的最小整数 解 Matlab命令为 n 1 whileprod 1 n 1e10n n 1 endn 北京科技大学数学实验 if语句if语句根据逻辑表达式的值来确定是否执行选择语句体 if语句的调用格式如下 if逻辑表达式1选择语句体1elseif逻辑表达式2选择语句体2elseif逻辑表达式3选择语句体3 else选择语句体elseend switch语句switch语句根据变量或表达式的取值不同分别执行不同的命令 switch语句的调用格式如下 switch表达式case值1语句体1case值2语句体2 otherwise语句体otherwiseend 选择语句MATLAB提供了if语句和switch语句 用于根据条

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论