MATLAB基础及其在数学建模中的应用课件

上传人:91274****mpsvz 文档编号:241299542 上传时间:2024-06-16 格式:PPT 页数:64 大小:2.57MB
返回 下载 相关 举报
MATLAB基础及其在数学建模中的应用课件_第1页
第1页 / 共64页
MATLAB基础及其在数学建模中的应用课件_第2页
第2页 / 共64页
MATLAB基础及其在数学建模中的应用课件_第3页
第3页 / 共64页
点击查看更多>>
资源描述
MATLAB基础及其在数学建模中的应用大连大学数学建模工作室陈皓MATLAB基础及其在数学建模中的应用大连大学数学建模工作室数学建模与计算机数学建模与计算机数学建模是在20世纪60和70年代进入一些西方国家大学的60和70年代计算机产品的设计和更新换代。数学建模与计算机数学建模是在20世纪60和70年代进入工欲善其事,必先利其器工欲善其事,必先利其器讲座目标讲座目标初步了解初步了解MATLAB;掌握其相关规则、常用函数;掌握其相关规则、常用函数;能进行简单的画图、计算;能进行简单的画图、计算;能解决一些实际问题。能解决一些实际问题。工欲善其事,必先利其器讲座目标Matlab语言基本元素语言基本元素常量,变量圆周率,圆的面积运算符加减乘除等语句判断循环选择函数sin()等Matlab语言基本元素常量,变量圆周率,圆的面积矩阵矩阵在数学上,矩阵是指纵横排列的二维数据表格,最早来自于方程组的系数及常数所构成的方阵。矩阵在数学上,矩阵是指纵横排列的二维数据表格,最早来自于方目录目录MATLAB简介简介MATLAB 数据类型数据类型基本命令基本命令数学函数数学函数简单语句简单语句图形操作图形操作常见作图函数常见作图函数获得帮助获得帮助应用举例应用举例自定义函数自定义函数目录MATLAB简介1、MATLAB简介简介MATLAB是是MAtrix LABoratory(矩阵实验室)的缩写;(矩阵实验室)的缩写;MATLAB是是美国新墨西哥大学美国新墨西哥大学Clever Moler博士首创,采用博士首创,采用FORTRAN语言编写,其初衷是解决线性代数课程中繁琐的矩阵语言编写,其初衷是解决线性代数课程中繁琐的矩阵运算。运算。20世纪世纪80年代后出现了年代后出现了MATLAB的第二版,全部采用的第二版,全部采用C语语言编写;言编写;1984年年Moler博士和一批数学家及软件专家创建了博士和一批数学家及软件专家创建了MathWorks公公司,专门开发司,专门开发MATLAB。1、MATLAB简介MATLAB是MAtrixLABora1、MATLAB简介简介MATLAB可以进行数学计算、算法开发、数据采集;数学计算、算法开发、数据采集;建模、仿真;建模、仿真;数据分析、开发和可视化;数据分析、开发和可视化;科学和工程图形应用程序的开发,包括图形用户界面科学和工程图形应用程序的开发,包括图形用户界面的创建。的创建。1、MATLAB简介MATLAB可以进行数学计算、算法开发、1、MATLAB简介简介MATLAB的主要应用领域的主要应用领域(1)数值分析;数值分析;(2)数值和符号计算;数值和符号计算;(3)工程与科学绘图;工程与科学绘图;(4)控制系统的设计与仿真;控制系统的设计与仿真;(5)数字图像处理;数字图像处理;(6)数字信号处理;数字信号处理;(7)通讯系统设计与仿真;通讯系统设计与仿真;(8)财务与金融工程。财务与金融工程。1、MATLAB简介MATLAB的主要应用领域1、MATLAB简介简介MATLAB优势优势强大易用的科学计算语言;全面的图形功能;独立开放的平台;实用的程序接口。1、MATLAB简介MATLAB优势1、MATLAB简介简介命令窗口(命令窗口(Command Window)工作空间管理窗口(工作空间管理窗口(Workspace)历史命令窗口(历史命令窗口(Command History)MATLAB主要窗口主要窗口1、MATLAB简介命令窗口(CommandWindow)DiagramDiagram1、MATLAB简介简介命令窗口 命令窗口位于命令窗口位于MATLAB默认桌面的中间,显示命令提示符为默认桌面的中间,显示命令提示符为“”,可在,可在“”之后输入命令,按下之后输入命令,按下Enter键后键后MATLAB会立会立即显示结果并将结果自动赋予变量即显示结果并将结果自动赋予变量ans,例如:,例如:(3.14*32+3)/2 ans=15.63001、MATLAB简介命令窗口MATLAB基础及其在数学建模中的应用课件2、MATLAB数据类型数据类型常量在MATLAB中有一些特定的变量,它们已经被预定义了某个特定的值,因此这些变量被称为常量。MATLAB 中的常量主要有pi、inf 和eps等。2、MATLAB数据类型常量在MATLAB中有一些特定的变量2、MATLAB数据类型数据类型变量变量是变量是MATLAB 的基本元素之一,的基本元素之一,MATLAB 语言语言不要求对所使用的变量进行事先说明或指定变量的不要求对所使用的变量进行事先说明或指定变量的类型,系统会根据该变量被赋予的值或对该变量所类型,系统会根据该变量被赋予的值或对该变量所进行的操作来自动确定变量的类型;进行的操作来自动确定变量的类型;变量名长度不超过变量名长度不超过31位,超过位,超过31位的字符系统将忽位的字符系统将忽略不计;略不计;变量名区分大小写;变量名区分大小写;变量名必须以字母开头,变量名中可以包含字母、变量名必须以字母开头,变量名中可以包含字母、数字或下划线,但不允许出现标点符号。数字或下划线,但不允许出现标点符号。2、MATLAB数据类型变量变量是MATLAB的基本元素之2、MATLAB数据类型数据类型变量的赋值变量的赋值实数赋值实数赋值 x=5复数赋值复数赋值 x=5+10j (或 x=5+10i)向量的赋值向量的赋值行向量赋值:行向量赋值:x=1 2 3(或 x=1,2,3)列向量赋值:列向量赋值:y=1;2;3矩阵的赋值:矩阵的赋值:x=1 2 3;4 5 6;7 8 92、MATLAB数据类型变量的赋值3、基本命令、基本命令矩阵运算矩阵运算 +两矩阵相加两矩阵相加 -两矩阵相减两矩阵相减 *两矩阵相乘两矩阵相乘 /右除右除 左除左除 乘方乘方 转置转置3、基本命令矩阵运算3、基本命令、基本命令数组运算数组运算 +两数组相加两数组相加 -两数组相减两数组相减 .*两数组相乘两数组相乘 ./对应元素相除对应元素相除 .乘方乘方3、基本命令数组运算3、基本命令基本命令逻辑运算符3、基本命令逻辑运算符3、基本命令、基本命令矩阵的行列操作矩阵的行列操作 A=1,2,3;4,5,6;7,8,9A=1 2 3 4 5 6 7 8 9A(2,2)ans=5矩阵操作3、基本命令矩阵的行列操作矩阵操作3、基本命令、基本命令初等数学计算(1)在)在MATLAB指令窗中输入以下内容:指令窗中输入以下内容:(12+2*(7-4)/32(2)在在上上述述表表达达式式输输入入完完成成后后,按按【Enter】键键,该该指指令令被被执行;执行;(3)在指令执行后,)在指令执行后,MATLAB指令窗中将显示以下结果:指令窗中将显示以下结果:ans=2 3、基本命令初等数学计算(1)在MATLAB指令窗中输入以3、基本命令、基本命令矩阵的行列操作矩阵的行列操作 A=1 2 3;4 5 6;7 8 9 A(1,:)ans=1 2 3 A(:,1)ans=1 4 73、基本命令矩阵的行列操作3、基本命令、基本命令矩阵的行列操作矩阵的行列操作 A=1 2 3;4 5 6;7 8 9 A(2:3,1:2)ans=4 5 7 8 A(1,1)=10A=10 2 3 4 5 6 7 8 93、基本命令矩阵的行列操作3、基本命令、基本命令常用的矩阵常用的矩阵 名名 称称 调用格式调用格式zeros zeros(n)或或zeros(n,m)ones ones(n)或或ones(n,m)eye eye(n)或或eye(n,m)3、基本命令常用的矩阵3、基本命令、基本命令 A=1,2,3;4,5,6;7,8,9 A.*Aans=1 4 9 16 25 36 49 64 81注意以下操作结果的区别3、基本命令A=1,2,3;4,5,6;7,8,93、基本命令、基本命令 A=1,2,3;4,5,6;7,8,9 A*Aans=30 36 42 66 81 96 102 126 150 mean(A)ans=4 5 63、基本命令3、基本命令、基本命令 x=1,2,3 mean(x)ans=2常用函数:常用函数:meansumsort注意:若这些函数作用在矩阵上,其默认状态是对列操作注意:若这些函数作用在矩阵上,其默认状态是对列操作3、基本命令x=1,2,34、数学函数、数学函数常用数学函数常用数学函数sin cos tan cot 三角函数三角函数asin acos atan acot 反三角函数反三角函数exp 指数函数指数函数log log10 对数函数对数函数Sqrt abs 开平方、绝对值开平方、绝对值sign 符号函数符号函数sum sort 求和求和、排序、排序limit int 求极限、求积分求极限、求积分solve 方程求根方程求根4、数学函数常用数学函数4、数学函数、数学函数示例:示例:x=linspace(0,pi,10)x=0 0.3491 0.6981 1.0472 1.3963 1.7453 2.0944 2.4435 2.7925 3.1416 sin(x)ans=0 0.3420 0.6428 0.8660 0.9848 0.9848 0.8660 0.6428 0.3420 0.00004、数学函数示例:4、数学函数、数学函数 x=linspace(0,pi,10);y=sin(x);plot(x,y)4、数学函数x=linspace(0,pi,10);5、简单语句、简单语句For end for i=1:10 endIf else endif flag else endswitch caseend5、简单语句ForendIfelseendsw5、简单语句、简单语句例:自己编辑程序计算例:自己编辑程序计算100的阶乘;的阶乘;Sum=1;for i=1:100 Sum=Sum*i;end factorial(100)ans=9.3326e+1575、简单语句例:自己编辑程序计算100的阶乘;6、简单作图、简单作图绘制绘制sin和和cos曲线。曲线。x=-2*pi:0.05:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,-b,x,y2,-m);title(sinx and cosx);xlabel(x);ylabel(y);text(0,0,zero);legend(sin,cos)grid on6、简单作图绘制sin和cos曲线。title(sinx7、图形控制、图形控制坐标控制:坐标控制:axis ylim ylim 网格控制:网格控制:grid on/off grid minor 多子图:多子图:subplot 补补 充:充:xlabel ylabel linewidth makersize 7、图形控制坐标控制:axisylimylim7、图形控制、图形控制多子图:多子图:subplot(m,n,i)subplot(2,2,1)fplot(sin(x),-pi,pi)subplot(2,2,2)fplot(cos(x),-pi,pi)subplot(2,2,3)fplot(tan(x),-pi,pi)subplot(2,2,4)fplot(cot(x),-pi,pi)7、图形控制多子图:8、作图函数、作图函数fplot f函数图polar 极坐标图bar 柱状图pie 饼状图8、作图函数fplotf函数图8、作图函数、作图函数fplot fplot(sin(x),-pi,pi)8、作图函数fplot8、作图函数、作图函数polar t=0:0.01:4*pi;s=abs(sin(2*t).*cos(2*t);polar(t,s,r)8、作图函数polar8、作图函数、作图函数bar p=21 15 41 10 8 8 3 6 2 30;t=0:9;bar(t,p)8、作图函数bar8、作图函数、作图函数pie x=59 15 15 10 8 8 8;pie(x);8、作图函数pie三维作图三维作图plot3(x,y,z)三维绘图基本命令三维绘图基本命令mesh(X,Y,Z)三维网格图三维网格图surf(X,Y,Z)三维曲面图三维曲面图9、作图函数、作图函数三维作图plot3(x,y,z)三维绘图基本命令9、作plot3x=0:0.01:pi*20;y=sin(x);z=cos(x);plot3(x,y,z)三维作图三维作图9、作图函数、作图函数plot3三维作图9、作图函数x=0:0.05:pi*2;y=sin(x);x,y=meshgrid(x,y);z=cos(x).*sin(y);mesh(x,y,z)meshc(x,y,z)注注:meshgrid的作用是的作用是将给定区域平面网格化将给定区域平面网格化三维作图三维作图9、作图函数、作图函数x=0:0.05:pi*2;注:meshgrid的作用是将surfx=0:0.05:pi*2;y=sin(x);x,y=meshgrid(x,y);z=cos(x).*sin(y);surf(x,y,z)三维作图三维作图9、作图函数、作图函数surf三维作图9、作图函数10、获得帮助、获得帮助如果你知道一个函数名,想了解它的用法,你可以用如果你知道一个函数名,想了解它的用法,你可以用“help”命令得到它的帮助文档:命令得到它的帮助文档:help functionname如果你了解含某个关键词的函数,你可以用如果你了解含某个关键词的函数,你可以用lookfor命令命令得到相关的函数:得到相关的函数:lookfor keyword 10、获得帮助如果你知道一个函数名,想了解它的用法,你可以用11、应用举例、应用举例如右图,有如右图,有10个点,其坐标集合为个点,其坐标集合为:data=2,4,5,6,3,4,5,1,4,3;3,4,7,1,0,3,5,3,6,10;求图上任意两点间的距离;求图上任意两点间的距离;数学表达式为:数学表达式为:11、应用举例如右图,有10个点,其坐标集合为:data=11、应用举例、应用举例data=2,4,5,6,3,4,5,1,4,3;3,4,7,1,0,3,5,3,6,10;%坐标集合x=data(1,:);%X轴坐标y=data(2,:);%Y轴坐标n=length(x);%求X中元素个数 for i=1:n for j=1:n dis(i,j)=sqrt(x(i)-x(j).2+.(y(i)-y(j).2);%求出i,j两点间距离 endend11、应用举例data=2,4,5,6,3,4,5,1,4数据拟合数据拟合有如下数据:有如下数据:x=1 2 3 4 5 6 7 8;Y=4.5 3 5 7.6 4 7 10 7;如右图:如右图:请对其进行请对其进行5次拟合次拟合拟合函数:拟合函数:polyfit(x,y,n)方程求解函数:方程求解函数:polyval(P,xx)11、应用举例、应用举例数据拟合11、应用举例axis(0 9 0 11)%对坐标进行设置hold on%保持当前图形y=4.5 3 5 7.6 4 7 10 7;x=1:8;plot(x,y,o)%画出原始数据P=polyfit(x,y,5);%对原始数据进行5次拟合xx=1:0.1:length(y);%取值点yy=polyval(P,xx);%求取值点的函数值plot(xx,yy,r-)%画出新图像title(5次拟合图像)%图形名称11、应用举例、应用举例axis(09011)%对11、应用举例、应用举例11、应用举例数据插值数据插值有如下数据:有如下数据:x=1 2 3 4 5 6 7 8;Y=4.5 3 5 7.6 4 7 10 7;如右图:如右图:请对其进行插值运算请对其进行插值运算插值函数:插值函数:interp1(x,y,xx,method)11、应用举例、应用举例数据插值11、应用举例插值方法插值方法nearst 最近点差值最近点差值linear线性插值线性插值spline 三次样条插值三次样条插值cubic 三次多项式插值三次多项式插值11、应用举例、应用举例插值方法11、应用举例axis(0 9 0 11)%对坐标进行设置hold on%保持当前图形y=4.5 3 5 7.6 4 7 10 7;x=1:8;plot(x,y,o)%画出原始数据xx=1:0.1:length(y);%插值点yy=interp1(x,y,xx,cubic)%进行三次多项式插值plot(xx,yy,r-)%画出新图像title(三次多项式插值)%图形名称11、应用举例、应用举例axis(09011)%对坐标进行设11、应用举例、应用举例11、应用举例如图,求图上任意两点间的距离如图,求图上任意两点间的距离SABEFDC22541435517711、应用举例、应用举例如图,求图上任意两点间的距离SABEFDC225414355数据导入数据导入xlsread(filename)load(filename)11、应用举例、应用举例数据导入11、应用举例算法的基本步骤(1)输入权矩阵)输入权矩阵(2)计算)计算其中其中(3)中元素中元素就是就是vi到到vj的最短路长的最短路长FloydFloyd算法算法11、应用举例、应用举例算法的基本步骤(1)输入权矩阵(2)计算(3)for k=1:n for i=1:n for j=1:n if Dis(i,k)+Dis(k,j)Dis(i,j)Dis(i,j)=Dis(i,k)+Dis(k,j);R(i,j)=k;end end endend11、应用举例、应用举例fork=1:n11、应用举例格式:格式:function 返回值返回值=filename(输入参数输入参数)例例1:定义一个函数,功能是求输入参数的阶乘:定义一个函数,功能是求输入参数的阶乘function y=f(x)y=1;for i=1:x y=y*i;end12、自定义函数、自定义函数格式:function返回值=filename(输入参新建M文件新建M文件MATLAB基础及其在数学建模中的应用课件RunRunThanksThanks
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学培训


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!