[理学]第2章_MATLAB语言概述

上传人:油条 文档编号:49558774 上传时间:2018-07-30 格式:PPT 页数:39 大小:502KB
返回 下载 相关 举报
[理学]第2章_MATLAB语言概述_第1页
第1页 / 共39页
[理学]第2章_MATLAB语言概述_第2页
第2页 / 共39页
[理学]第2章_MATLAB语言概述_第3页
第3页 / 共39页
[理学]第2章_MATLAB语言概述_第4页
第4页 / 共39页
[理学]第2章_MATLAB语言概述_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《[理学]第2章_MATLAB语言概述》由会员分享,可在线阅读,更多相关《[理学]第2章_MATLAB语言概述(39页珍藏版)》请在金锄头文库上搜索。

1、*第2章 MATLAB语言概述东北大学信息学院 薛定宇2018/7/30Slide 1 (of 39)*数学建模问题及数学语言工具可以分为两个单独的问题 如何从给出的用语言描述的问题建立起其数学 描述(即数学模型) 如何得出数学模型的解数学模型的求解需要计算机工具 MATLAB为首选 学会MATLAB语言,一般编程和使用方法 学会各个分支数学问题的计算机求解 灵活运用MATLAB解决遇到的问题 计算机仿真问题求解(Simulink)2018/7/30Slide 2 (of 39)*参考阅读建议薛定宇、陈阳泉,高等应用数学问题的 MATLAB求解,2004, 2008,清华大学出版 社 (数学分

2、支覆盖全面),英文版张志涌,精通MATLAB 6.5,北京航空航天 大学出版社,2003 (编程介绍深入)陈怀琛,MATLAB及其在理工课程中的应 用指南,2000,2004,西安电子科技大学出版 社 (在相关课程问题的覆盖面全)2018/7/30Slide 3 (of 39)*内容提要MATLAB语言简介MATLAB编程基础MATLAB变量的基本运算MATLAB语言基本程序结构MATLAB语言与可视化MATLAB应用演示2018/7/30Slide 4 (of 39)*2.1 MATLAB 语言简介MATLAB是当今国际上三大数学语言 之一,是科学技术领域事实上的通用计 算机语言语句集成度高

3、,使用灵活易于入门、程序易于调试、跨平台可视化(图形表示)功能强大几乎适用于所有应用数学与工程分支强大的计算机仿真功能2018/7/30Slide 5 (of 39)*其他“高级”语言(如C)的局限性语句繁杂没有基本数学运算求解工具程序冗长,容易出错,得出结果难以令人 相信各种各样的隐患结果可视化效果不佳2018/7/30Slide 6 (of 39)*例1 矩阵特征值求解用数学库EISPACK用MATLAB: eig(A)2018/7/30Slide 7 (of 39)*例2 可能的隐患 Fibonacci数列数学描述C语言实现存在问题:数据结构的预定义MATLAB实现2018/7/30Sl

4、ide 8 (of 39)*2.2 MATLAB编程基础变量与常量数据结构基本语句结构语句流程程序结构程序调试2018/7/30Slide 9 (of 39)*2.2.1 变量与常量变量名由字母开头,后面可跟其他字母、 数字和下划线MATLAB变量名区分大小写MATLAB保留的变量名为常量,如pi,i ,j,eps,Inf 和 NaN常量内容可改写,但应该慎重,必要时需 要重新定义 i=sqrt(-1)2018/7/30Slide 10 (of 39)*2.2.2 数据结构和科学计算相关的主要有两种: 双精度数组 (矩阵为最主要形式,用于数值运 算,可以为复数矩阵;还可以直接定义出向量 、标量

5、等) 符号变量 (用于公式推导和解析解求解)其他数据类型 单精度变量、整型变量等数值型变量 字符串、多维数组、结构体、类与对象等2018/7/30Slide 11 (of 39)*双精度数据结构矩阵的表示矩阵简单分析 F=inv(A)复数矩阵的表示2018/7/30Slide 12 (of 39)*特殊矩阵的输入单位矩阵 A=eye(m,n)零矩阵 A=zeros(n,m)对角矩阵 A=diag(1,3,5,7,2)均匀分布随机数矩阵 A=rand(n,m)多项式按照降幂排列输入系数向量 p=1 2 3 4 0 5伴随矩阵 A=compan(p)2018/7/30Slide 13 (of 39

6、)*符号变量定义与处理和数值型不一样,可以用于公式推导定义方法syms A B C syms A B positive还有real,nonzero等选项转换方法,用于精确运算 B=sym(A)数值、符号变量区别 1/90.1111111111111112018/7/30Slide 14 (of 39)*符号变量的化简与显示符号变量数值显示 vpa命令问题:p 可以记忆到小数点后多少位?非最简的结果可以用simple函数化简 collect合并同类项 expand展开 numden,gcd, lcm, factor 变量替换 subs pretty, latex2018/7/30Slide 15

7、 (of 39)*2.2.3 基本语句结构直接赋值语句函数调用语句A=5; B=1 2; 3 4;C=A+6+B2;e,f,g=funname(a,b,c)2018/7/30Slide 16 (of 39)*2.2.4 程序流程循环语句 for, while 转移语句 if, elseif, else开关语句 switch case试探语句 try catch不同流程语句的嵌套使用每个流程应该对应一个end2018/7/30Slide 17 (of 39)*for 循环循环结构例题:求和MATLAB实现 2018/7/30Slide 18 (of 39)*while 循环循环结构MATLAB举

8、例2018/7/30Slide 19 (of 39)*不同循环结构有不同的特色、用途看似for循环优于while循环例:for循环解决不了的问题,求最小m用while循环可以直接求解2018/7/30Slide 20 (of 39)*条件转移语句结构各种结构2018/7/30Slide 21 (of 39)*开关结构和C语言的开关结构有区别2018/7/30Slide 22 (of 39)*全新的试探结构全新结构优点: 设置错误陷阱 提高算法的执行效率2018/7/30Slide 23 (of 39)*2.3 矩阵的运算代数运算 +、- 、* 、/ 、 , 点运算逻辑运算 &、|、xor比较运

9、算 = 、 、 、= find 、all 、any2018/7/30Slide 24 (of 39)*2.4 基本程序结构交互式命令脚本程序M-函数 主流编程方法 为什么需要M-函数 M-函数实现何时使用M-函数2018/7/30Slide 25 (of 39)*函数的结构与编程函数的入口函数的调用2018/7/30Slide 26 (of 39)*2.5 MATLAB语言与科学可视化 (将数据用图形表示)二维曲线 直角坐标系、极坐标、三维图形 三维曲线、轨迹 三维曲面四维表示 动画 (时间为第4维)三维图下的切面表示2018/7/30Slide 27 (of 39)*2.5.1 二维曲线绘制

10、由实测或计算出来的数据直接绘图 已知 绘图语句 构造绘图变量 画图 plot(t, y) 扩展图形后处理2018/7/30Slide 28 (of 39)*已知函数曲线绘制已知函数自变量向量生成 等间距 等对数间距 logspace不等间距计算函数值 (点运算)绘图并检验2018/7/30Slide 29 (of 39)*函数MATLAB命令检验数据存储导入2018/7/30Slide 30 (of 39)*极坐标图形绘制绘制极坐标函数 仍然首先生成q 向量,再用点运算计算r 调用polar函数绘图绘制曲线注意周期检验2018/7/30Slide 31 (of 39)*2.5.2 隐函数绘制有

11、的函数不能这样绘制例:隐函数非单值函数MATLAB语句2018/7/30Slide 32 (of 39)*2.5.3 三维曲线绘制三维曲线及三维参数方程曲线绘制 生成 t 计算 x,y,z绘图图坐标读取及坐标系旋转2018/7/30Slide 33 (of 39)*2.5.4 三维曲面绘制数学函数曲面绘制方法 在 x-y 平面生成网格计算网格上每点的函数值 用surf绘制表面图或mesh画网格图语句插值或光滑处理2018/7/30Slide 34 (of 39)*2.5.5 视角设置用可视方法旋转用命令旋转 视角定义 仰角 方位角 唯一确定视角视角设置 view(a,b)三视图2018/7/3

12、0Slide 35 (of 39)*2.6 MATLAB应用演示高等数学公式推导线性代数运算积分变换与复变函数非线性方程求解与最优化微分方程求解数据插值与拟合概率论与数理统计非传统方法 (FL, NN, GA, PSO, RS, FDA等)2018/7/30Slide 36 (of 39)*2.6.1 高等数学中的公式推导高等数学几乎全部内容用5个函数即可求解 求极限 limit (偏)导数、微分运算 diff 积分运算 int Taylor级数展开 taylor 级数求和 symsum不必记忆类型及方法、技巧,直接求解没有中间结果2018/7/30Slide 37 (of 39)*函数分析实例已知函数先定义自变量为符号变量,再写函数函数分析 一阶导数 高阶导数 导数还原(积分) Taylor幂级数展开 有限项Taylor幂级数逼近效果研究2018/7/30Slide 38 (of 39)*小 结 学习 MATLAB 语言的方法“三十字” 学习方法:带着问题学,活学活用,学用结合,急用先学,立竿见影,要在用字上狠下功夫。2018/7/30Slide 39 (of 39)

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号