收藏 分销(赏)

MATLAB数学实验整套教学课件.ppt

上传人:丰**** 文档编号:10252426 上传时间:2025-04-30 格式:PPT 页数:455 大小:12.84MB 下载积分:25 金币
下载 相关 举报
MATLAB数学实验整套教学课件.ppt_第1页
第1页 / 共455页
MATLAB数学实验整套教学课件.ppt_第2页
第2页 / 共455页


点击查看更多>>
资源描述
*,*,单击此处编辑母版标题样式,第一章 Matlab入门,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,第二章 MATLAB编程与作图,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,第三章 矩阵代数,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,MATLAB,数学实验,2025/4/30 周三,2,第一章 Matlab入门,第一章,MATLAB,入门,1.1,MATLAB,桌面,1.2,数据和变量,1.3,数组及其运算,1.4,字符串、元胞和结构,2025/4/30 周三,3,第一章 Matlab入门,1.1 MATLAB,桌面,最小安装,:,MATLAB 2013a,,,Curve Fitting Toolbox,,,Optimization Toolbox,,,Symbolic Math Toolbox,工具条,:,Home,Plots,Apps,等,窗口,:,指令,(Command Window),当前文件夹,(Current Directory),工作空间,(Workspace),指令历史,(Command History),例,:a=1;b=2;c=a+b(,不输入提示符,),2025/4/30 周三,4,第一章 Matlab入门,1.2,数据和变量,P4,例,1.1,球的体积计算,表达式,分号,(;),逗号,(,),省略号,(.),。,历史指令调用,科学记数法,数据显示格式,Short,long,rational,显示格式与计数精度区别,2025/4/30 周三,5,第一章 Matlab入门,1.2,数据和变量,复数,i,j,注意,(,-8)(1/3),预定义变量,pi,圆周率,3.1415,eps,浮点数识别精度,2.2210,-16,realmin,最小正实数,2.225110,-308,realmax,最大正实数,1.797710,308,Inf,无穷大,NaN,不定值,注意,e,在,MATLAB,中只是普通变量,2025/4/30 周三,6,第一章 Matlab入门,1.2,数据和变量,用户变量,命名规则:字母开头,由字母、数字或下划线组成(,不得使用减号、空格等,),区分大小写,防止与系统的预定义变量名,(,如,i,j,pi,eps,等,),,函数名,(,如,who,length,等,),,保留字,(for,if,while,end,等,),冲突。,特殊变量,ans,是系统本身一个特殊变量名,若运算结果没有赋于任何变量,系统将其赋予,ans,clear,清除,(,注意,Clear Workspace,与,Clear Command Window,的区别,.,),2025/4/30 周三,7,第一章 Matlab入门,1.2,数据和变量,数据,Mat,文件,实现与外部数据文件交换,:mat,txt,等,菜单方式:,Save Workspace,和,Import Data,例,:save-clear-import,指令方式:,save,和,load,MATLAB,还提供了方便的工具来导入外部数据文件,包括文本文件、,Excel(Spreadsheets),文件、图像文件等,以便与其它应用程序交换数据,我们将在第二章介绍。,2025/4/30 周三,8,第一章 Matlab入门,1.3,数组及其运算,a=1 2 3;4 5 6;7 8 0,变量编辑器,(Variables),和剪贴板的使用,数组的输入和分析,中括号,表示矩阵,同行无素间用空格或逗号分隔,不同行间用分号或回车分隔。,冒号运算,函数,linspace(x1,x2,n),生成,x1,与,x2,间的,n,维等距行向量,即将,x1,x2,n-1,等分,length,size,编址:,不能为,0,,按列编址,如,a(6),2025/4/30 周三,9,第一章 Matlab入门,1.3,数组及其运算,数组的抽取和统计,分块矩阵,a(1,3,1:3),sum,prod,min,max,按列计算,例如,x,y=max(-1 3;5-6;2 4),x=,5 4,y=,2 3,2025/4/30 周三,10,第一章 Matlab入门,1.3,数组及其运算,数组运算,A+B,与,A-B,加与减,k*A,或,A*k,数乘矩阵,k+A,与,k-A k,加,(,减,)A,的每个元素,A.k,k.A,数组乘方,A.*B,数组乘数组,k./A,数除以数组,左除,A.B=,右除,B/.A,数组除法,点运算就是对应元素的运算,P12,例,(注意点运算与矩阵运算的区别),2025/4/30 周三,11,第一章 Matlab入门,1.3,数组及其运算,数学函数,矩阵的数学函数也是按元素的运算,使用通常的函数号,如,sin(A),cos(A),asin(A),acos(A),tan(A),cot(A),exp(A),sqrt(A),等。,fix,向,0,取整,floor,向下取整,ceil,向,+,取整,mod,模余,rem,除法余数,abs,绝对值,(,模),real,复数实部,imag,复数虚部,angle,复数幅角,conj,复数共轭,log,自然对数,ln,log10,以,10,为底对数,2025/4/30 周三,12,第一章 Matlab入门,1.3,数组及其运算,4,、关系与逻辑运算,、,、,=,大于、大于等于,=,、,=,等于、不等于,&,(与)、,|,(或)、,(非),any,、,all,、,find,“真,(true)”,用,1,表示,“假,(false)”,用,0.,逻辑运算中,所有非零元素作为,1,处理,.,P15,例子,小结:,Matlab,中的三类运算函数,按元素运算(数学函数):如,sin(A),log(A),find(A),按列运算(统计函数):如,sum(A),prod(A),min(A),max(A),any(A),all(A),按矩阵运算(矩阵函数):如,size(A),length(A),det(A),2025/4/30 周三,14,第一章 Matlab入门,1.4,字符串、元胞和结构,数据类型:,数值,(Double),逻辑,(Logical),字符,(Char),元胞,(Cell),结构,(Structure),2025/4/30 周三,15,第一章 Matlab入门,1.4,字符串、元胞和结构,字符串(,P17,例),单引号,(,英文半角输入状态!,),中文字符,不要在,word,中输入后,copy,引号内字符显示应为,淡紫色,字符串拼接,字符串转化,double,char,num2str,str2num,比较:,a=,12,b=double(a),c=str2num(a),Eval,执行字符串书写的指令,(P18,例,),2025/4/30 周三,16,第一章 Matlab入门,1.4,字符串、元胞和结构,元胞和结构(,P18,例),字符矩阵,char,数值与字符混合,元胞,结构,:,域的概念,struct2cell,和,cell2struct,2025/4/30 周三,17,第一章 Matlab入门,习题,P20 ex1,ex2,ex3,ex4,MATLAB,数学实验,第二章,MATLAB,编程与作图,2025/4/30 周三,19,第二章 MATLAB编程与作图,第二章,MATLAB,编程与作图,2.1,程序设计,2.2,作图,2.3,在线帮助和文件管理,2025/4/30 周三,20,第二章 MATLAB编程与作图,2.1,程序设计,循环语句,for,循环变量,=,初值,:,增量,:,终值,语句;,end,while,(条件式),语句;,end,分支语句,if,(条件式),语句,;end,if,(条件式,1),语句,1;elseif,(条件式,2),语句,2;,;else,语句,;end,switch(,分支变量,)case(,值,1),语句,1;case(,值,2),语句,2;,;otherwise,语句,;end,其它:,pause,break,return,error,2025/4/30 周三,21,第二章 MATLAB编程与作图,2.1,程序设计,s=0;for n=1:100,s=s+1/n/n;end,;,s,clear;s=0;n=1;while nm=1000;,str=sum(1./(1:m).2;,eval(str),2025/4/30 周三,26,第二章 MATLAB编程与作图,inline,函数与匿名函数,Inline,函数,(,即将被淘汰,),fun=inline(,函数表达式,自变量,),fname=inline(sum(1./(1:m).2),m),fname(1000),匿名函数,fun=(,自变量,),函数表达式,匿名函数的参数传递更灵活,k=2;fname=(m)sum(1./(1:m).k),fname(1000),2025/4/30 周三,27,第二章 MATLAB编程与作图,2.1,程序设计,注释:,%,开头,对本行后面字符起作用,不参与运算。,对话:,input,,,disp,全程变量与局部变量,nargin,、,nargout,和,varargin,子函数和嵌套函数,提高速度,2025/4/30 周三,28,第二章 MATLAB编程与作图,2.1,程序设计,普通编程,function s=f(m),s=0;,for n=1:m,s=s+1/n/n;,end,向量化编程,function s=f(m),n=1:m;,s=sum(1./n.2);,尽量少用,for,语句,2025/4/30 周三,29,第二章 MATLAB编程与作图,本书配套工具箱的使用,主要内容,教材所有程序;,数学实验常用,Matlab,指令的中文帮助,安装步骤,1.,将,ME.rar,解压缩至,matlabtoolbox;,2.,启动,Matlab,利用,File,菜单中的,Set path,将,matlabtoolboxme,增至,path,中,放在最底部,并保存设置;,3.,回到你的工作目录。现在,ME,已成为一个普通的工具箱了。,2025/4/30 周三,30,第二章 MATLAB编程与作图,2.1,程序设计,例,2.4,编一,M,函数,对任意输入的向量,x,可计算分段函数值构成的向量。,分量方式,eg2_4a,,慢,向量方式,eg2_4b,eg2_4c,快,数组预分配,y=zeros(size(x),2025/4/30 周三,31,第二章 MATLAB编程与作图,2.2,作图,曲线图,plot(x,y),以数据,(x(i),y(i),为节点的折线图,其中,x,y,为同长度的向量,plot(x1,y1,x2,y2,.),多组数据折线图,fplot(fun,a,b),函数,fun,在区间,a,b,上的函数图,plot3(x,y,z),空间曲线图,其中,x,y,z,为同长度的向量,图形导出到,word,线型与标记,P31,表,eg2_5,曲线图,y,=,x,3,-,x,-1,和,y,=|,x,|,0.2,sin(5,x,),2025/4/30 周三,32,第二章 MATLAB编程与作图,2.2,作图,曲面图,x,y=meshgrid(xa,ya),当,xa,ya,分别为,m,维和,n,维行向量,得到,x,和,y,均为,n,行,m,列矩阵。,meshgrid,常用于生成,X-Y,平面上的网格数据。,x,y=ndgrid(xa,ya),与,meshgrid,类似,但得到的,x,和,y,均为,m,行,n,列矩阵,mesh(x,y,z),绘制网面图,是最基本的曲面图形命令,其中,x,y,z,是同阶矩阵,表示曲面三维数据。,surf(x,y,z),绘制曲面图,与,mesh,用法类似。,2025/4/30 周三,33,第二章 MATLAB编程与作图,meshgrid,解释,xa=6:8;ya=1:4;,x,y=meshgrid(xa,ya),%,生成,X-Y,面上网格,z=x.2+y.2,%,计算,XY,面各格点的,z,轴高度,x y z,6 7 8 1 1 1 37 50 65,6 7 8 2 2 2 40 53 68,6 7 8 3 3 3 45 58 73,6 7 8 4 4 4 52 65 80,2025/4/30 周三,34,第二章 MATLAB编程与作图,ngrid,解释,xa=6:8;ya=1:4;,x,y=ngrid(xa,ya),%,生成,X-Y,面上网格,z=x.2+y.2,%,计算,XY,面各格点的,z,轴高度,x y z,6 6 6 6 1 2 3 4 37 40 45 52,7 7 7 7 1 2 3 4 50 53 58 65,8 8 8 8 1 2 3 4 65 68 73 80,eg2_6,二元函数图,z=xexp(-x,2,-y,2,),2025/4/30 周三,35,第二章 MATLAB编程与作图,2025/4/30 周三,36,第二章 MATLAB编程与作图,2.2,作图,图形说明和定制,title,标题说明;,xlabel,,,ylabel,,,zlabel,说明坐标轴,x,y,z;,hold on/hold off,保留,/,释放现有图形,axis(a,b,c,d),确定坐标轴范围,axb,cyGrade,Name,Raw=xlsread(c:grade.xls,Sheet1,a2:d3),Total=Grade(:,1)+Grade(:,2)+Grade(:,3);,xlswrite(c:grade.xls,Total,Sheet1,e2:e3),xlswrite(c:grade.xls,总分,Sheet1,e1),2025/4/30 周三,42,第二章 MATLAB编程与作图,习题,P46 ex2,ex3,ex5,ex6(,单号,),MATLAB,数学实验,第三章,矩阵代数,2025/4/30 周三,44,第三章 矩阵代数,第三章,矩阵代数,3.1,预备知识:线性代数,3.2,矩阵代数的,MATLAB,指令,3.3,计算实验:线性方程组的通解,3.4,建模实验:投入产出分析和基因遗传,2025/4/30 周三,45,第三章 矩阵代数,3.1,预备知识:线性代数,线性方程组,记为,A x=b,2025/4/30 周三,46,第三章 矩阵代数,3.1,预备知识:线性代数,线性方程组,若秩,(A),秩,(A,b),,则无解;,若秩,(A)=,秩,(A,b)=n,存在唯一解;,若秩,(A)=,秩,(A,b)A=1 1/4 0;0 1/2 0;0 1/4 1;P,T=eig(A),AP=PT,P,-1,AP=T,A=PTP,-1,A,n,=,PT,P,-1,P,T,P,-1,P,TP,-1,=PT,n,P,-1,2025/4/30 周三,60,第三章 矩阵代数,3.4,建模实验,设有,n,个经济部门,,x,i,为部门,i,的总产出,,c,ij,为部门,j,单位产品对部门,i,产品的消耗,,d,i,为外部对部门,i,的需求,,f,j,为部门,j,新创造的价值。,分配平衡方程组,(,部门,i,产品,=,内部需求,+,外部需求,),消耗平衡方程组,(,部门,j,产值,=,生产消耗,+,新创造价值,),2025/4/30 周三,61,第三章 矩阵代数,列昂杰夫,Leontief,Nobel,经济学奖,1973,年,W.W.Leontief,was a Russian-American economist notable for his research on how changes in one economic sector may have an effect on other sectors.Leontief won the Nobel Memorial Prize in Economic Sciences in 1973,and three of his doctoral students have also been awarded the prize(Paul Samuelson 1970,Robert Solow 1987,Vernon Smith 2002).,2025/4/30 周三,62,第三章 矩阵代数,投入产出分析,令,C=,(,c,ij,),,X=(,x,1,x,n,),D=(,d,1,d,n,),,,F=(,f,1,f,n,),则,分配平衡方程组,X=CX+D,令,A=E,C,,,E,为单位矩阵,则,AX=D,C,称为,直接消耗矩阵,A,称为,列昂杰夫矩阵,。,2025/4/30 周三,63,第三章 矩阵代数,Y=1,1,1 B,(,B,各列的和),Y,表示各部门的总投入,(,消耗,),。,新创造价值,F=X Y,B=C,B,表示各部门间的投入产出关系,称为,投入产出矩阵,。,注:,b,ij,=c,ij,x,j,2025/4/30 周三,64,第三章 矩阵代数,投入产出关系表,(,行:分配平衡,列:消耗平衡,),消耗部门,外界需求,总产出,1,2,3,生产,部门,1,b11,b12,b13,d1,x1,2,b21,b22,b23,d2,x2,3,b31,b32,b33,d3,x3,新创造价值,f1,f2,f3,总产出,x1,x2,x3,注:,b,ij,=c,ij,x,j,2025/4/30 周三,65,第三章 矩阵代数,投入产出平衡,行:分配平衡,X=B,各行之和,+,外界需求,列:消耗平衡,X=B,各列之和,+,新创造价值,2025/4/30 周三,66,第三章 矩阵代数,投入产出分析,例,3.4,某地有三个产业,一个煤矿,一个发电厂和一条铁路,,开采一元钱的煤,煤矿要支付,0.25,元的电费及,0.25,元的运输费,;,生产一元钱的电力,发电厂要支付,0.65,元的煤费,,0.05,元的电费及,0.05,元的运输费,;,创收一元钱的运输费,铁路要支付,0.55,元的煤费和,0.10,元的电费,,在某一周内煤矿接到外地金额,50000,元定货,发电厂接到外地金额,25000,元定货,外界对地方铁路没有需求。,2025/4/30 周三,67,第三章 矩阵代数,解:这是一个投入产出分析问题。设,x,1,为本周内煤矿总产值,,x,2,为电厂总产值,x,3,为铁路总产值,则,问三个企业间一周内总产值多少才能满足自身及外界需求?三个企业间相互支付多少金额?三个企业各创造多少新价值,?,2025/4/30 周三,68,第三章 矩阵代数,直接消耗矩阵,C=,外界需求向量,D=,产出向量,X=,则原方程为,(E-C)X=D,投入产出矩阵为,B=C*diag(X),总,投入向量,Y=ones(1,3)*B,新创造价值向量,F=X-Y,2025/4/30 周三,69,第三章 矩阵代数,表,3.3,投入产出分析表,(,单位:元,),消耗部门,外界需求,总产出,煤 矿,电 厂,铁 路,生产,部门,煤矿,0,36506,15582,50000,102088,电厂,25522,2808,2833,25000,56163,铁路,25522,2808,0,0,28330,新创造价值,51044,14041,9915,总产出,102088,56163,28330,2025/4/30 周三,70,第三章 矩阵代数,例,5,设金鱼某种遗传病染色体的正常基因为,A,,异常基因为,a,那么,AA,,,Aa,,,aa,分别表示正常金鱼,隐性患者,显性患者。设初始分布为,90%,正常金鱼,,10%,的隐性患者,无显性患者。,考虑下列两种配种方案对后代该遗传病基因型分布的影响,方案一:同类基因结合,均可繁殖;,方案二:显性患者不允许繁殖,隐性患者必须与正常金鱼结合繁殖,2025/4/30 周三,71,第三章 矩阵代数,后代基因型的概率,后代是从父母体的基因对中各继承一个基因,形成自己的基因型。,2025/4/30 周三,72,第三章 矩阵代数,第一种方案,同类基因结合,均可繁殖;,2025/4/30 周三,73,第三章 矩阵代数,第二种方案,显性患者不允许繁殖,隐性患者必须与正常金鱼结合繁殖,2025/4/30 周三,74,第三章 矩阵代数,基因遗传矩阵表示,2025/4/30 周三,75,第三章 矩阵代数,解 设初始分布,X,(1),=(0.9 0.1 0),第,n,代分布为,X,(n),=,方案一:,X,(n),=M,n-1,X,(1),方案二:,X,(n),=N,n-1,X,(1),2025/4/30 周三,76,第三章 矩阵代数,结论,计算方法:取,n,足够大,如,n=20,方案一:,M,n-1,X,(1),0.95,0,0.05,存在,5%,的显性患者,方案二:,N,n-1,X,(1),1,0,0,显性患者和隐性患者都消失,本例说明了杂交的优势,另一计算,方法,:用矩阵相似对角化,2025/4/30 周三,77,第三章 矩阵代数,习题,P65 ex2,ex3,ex4,ex5,ex6,ex10,2025/4/30 周三,78,第三章 矩阵代数,习题,4,转移矩阵表示,2025/4/30 周三,79,第三章 矩阵代数,习题,5,投入产出关系,消耗部门,外界需求,总产出,1,2,3,生产,部门,1,c,11,x,1,c,12,x,2,c,13,x,3,d,1,x,1,2,c,21,x,1,c,22,x,2,c,23,x,3,d,2,x,2,3,c,31,x,1,c,32,x,2,c,33,x,3,d,3,x,3,注:,b,ij,=c,ij,x,j,MATLAB,数学实验,第四章 函数和方程,第四章 函数和方程,4.1,预备知识:零点、极值和最小二乘法,4.2,函数零点、极值和最小二乘拟合的,MATLAB,指令,4.3,计算实验:迭代法,4.4,建模实验:购房贷款的利率,4.1,预备知识:零点,非线性方程,f,(,x,)=0,若对于数,有,f,(,)=0,则称,为方程的,解或根,,也称为函数,f,(,x,),的,零点,非线性方程求解通常用数值方法求近似解,.,非线性方程(组),f,(,x,)=0,,,其中,x,=(,x,1,x,2,x,n,),f,=(,f,1,f,2,f,m,),4.1,预备知识:极值,设,x,为标量或向量,,y,=,f,(,x,),是,x,D,上的标量值函数。,如果对于包含,x=a,的某个邻域,有,f,(,a,),f,(,x,),(,f,(,a,),f,(,x,),对任意,x,成立,则称,a,为,f,(,x,),的一个,局部极小,(,大,),值点。,。,如果对任意,x,D,,有,f,(,a,),f,(,x,),(,f,(,a,),f,(,x,),)成立,,则称,a,为,f,(,x,),在区域,D,上的一个,全局极小,(,大,),值点。,4.1,预备知识:极值,4.1,预备知识:,最小二乘拟合,4.1,预备知识:,最小二乘拟合,成绩,选手,国籍,日期,13,秒,24,米尔布恩,美国,1972,年,9,月,7,日,13,秒,21,卡萨那斯,古巴,1977,年,8,月,21,日,13,秒,16,内赫米亚,美国,1979,年,4,月,14,日,13,秒,00,内赫米亚,美国,1979,年,5,月,6,日,12,秒,93,内赫米亚,美国,1981,年,8,月,19,日,12,秒,92,金多姆,美国,1989,年,8,月,16,日,12,秒,91,杰克逊,英国,1993,年,8,月,20,日,12,秒,88,刘翔,中国,2006,年,7,月,12,日,12,秒,87,罗伯斯,古巴,2008,年,6,月,12,日,12,秒,80,梅里特,美国,2012,年,9,月,7,日,数据:男子,110,米栏记录,问题:估计什么时候突破,12,秒,50,?,4.1,预备知识:,最小二乘拟合,4.1,预备知识:,最小二乘拟合,假设已知经验公式,y=f(c,x)(c,为参数,x,为自变量,),要求根据一批有误差的数据,(x,i,y,i,),i=0,1,n,确定参数,c.,这样的问题称为,数据拟合,。,最小二乘法:求,c,使得平方误差最小化,Q(c)=,4.2,函数零点,MATLAB,指令,多项式,y=polyval(p,x),求得多项式,p,在,x,处的值,y,,,x,可以是一个或多个点,p3=conv(p1,p2),返回多项式,p1,和,p2,的乘积,p3,r=deconv(p1,p2),p3,返回多项式,p1,除以,p2,的商,,r,返回余项,x=roots(p),求得多项式,p,的所有复根,.,p=polyfit(x,y,k),用,k,次多项式拟合向量数据,(x,y),返回多项式的降幂系数,MATLAB,中一个多项式用系数,降幂,排列向量来表示。,例,2.,用,2,次多项式拟合下列数据,.,x,0.1 0.2 0.15 0 -0.2 0.3,y,0.95 0.84 0.86 1.06 1.50 0.72,M,文件,eg4_2.m,例,1.,求多项式,x,3,+2 x,2,-5,的根,p=1 2 0-5;x=roots(p),polyval(p,x),Fun=Mfun,定义一个函数句柄,这里,Mfun,是函数的,M,文件表达方式,Fun=(var)funstr,定义匿名函数,其中,var,是变量名,funstr,是函数的表达式,非线性函数的,MATLAB,表达,x=fzero(Fun,x0),返回一元函数,Fun,的一个零点,.,x0,为标量时,x,返回函数在,x0,附近的零点;,x0,为向量,a,b,时,x,返回在,a,b,中的零点,(,两端函数异号,),4.2,函数零点,MATLAB,指令,x,f,h=fsolve(Fun,x0),x:,返回多元函数,Fun,在,x0,附近的一个零点,其中,x,x0,均为向量,;,f:,返回,Fun,在,零点,的函数值,应该接近,0;,h:,返回值如果大于零,说明计算结果可靠,否则计算结果不可靠。,例,3,求函数,y=xsin(x,2,-x-1),在,(-2,-0.1),内的 零点,fun=(x)x*sin(x2-x-1),fzero(fun,-2-0.1),fplot(fun,-2,-0.1),grid on;,fzero(fun,-2,-1.2),fzero(fun,-1.2,-0.1),fzero(fun,-1.6),fzero(fun,-0.6),例,4,求方程组,在,原点,附近的解,x,x(1),y x(2),function f=eg4_4fun(x),f(1)=4*x(1)-x(2)+exp(x(1)/10-1;,f(2)=-x(1)+4*x(2)+x(1)2/8;,x,f,h=fsolve(eg4_4fun,0 0,),使用函数句柄,%,使用匿名函数,fun=(x)4*x(1)-x(2)+exp(x(1)/10-1,-x(1)+4*x(2)+x(1)2/8;,x,f,h=fsolve(fun,0 0),min(y),返回向量,y,的最小值,max(y),返回向量,y,的最大值,x,f=fminbnd(fun,a,b),x,返回一元函数,fun,在,a,b,内的,局部极小值点,f,返回局部极小值,x,f=fminsearch(fun,x0),x,返回多元函数,fun,在初始值,x0,附近的局部极小值点,f,返回局部极小值,.,x,x0,均为向量,。,4.2,函数极值,MATLAB,指令,例,5.,求二元函数,f(x,y)=5-x,4,-y,4,+4xy,在,原点,附近的极大值。,解:,max f,min(-f),x,x(1),y,x(2),fun=(x)x(1)4+x(2)4-4*x(1)*x(2)-5;x,g=fminsearch(fun,0,0),注:,在使用,fsolve,fminsearch,等指令时,多变量必须合写成一个向量变量,如用,x(1),x(2),。,4.2,最小二乘拟合,MATLAB,指令,假设已知经验公式,y=f(c,x)(c,为参数,x,为自变量,),要求根据一批有误差的数据,(x,i,y,i,),i=0,1,n,确定参数,c.,这样的问题称为,数据拟合,。,最小二乘法就是求,c,使得平方误差最小化,Q(c)=,基本格式,:c=lsqcurvefit(Fun,c0,x,y),这里,Fun(c,x),为两个输入变量的函数句柄或匿名函数,,c0,为参数,c,的预估值,作为迭代初值,,x,y,为数据向量,完整格式:,c,Q=lsqcurvefit(Fun,c0,x,y,lb,ub),lb,和,ub,分别表示,c,的下界和上界。,c,返回参数值,,Q,返回误差平方和。,自变量,x,可以是多变量,这时第三输入参数,x,应为矩阵。,最小二乘拟合,函数类型的选择,根据物理或数学机理,作图看趋势,常用直线、二次函数,指数函数等,参数初始值的选择,根据参数的实际意义,由数据估计,网格化搜索,常用原点,男子,110,栏问题,Matlab,程序,clear;close all;,data=13.24 13.21 13.16 13.00 12.93 12.92 12.91 12.88 12.87 12.80;,year=1972 1977 1979 1979 1981 1989 1993 2006 2008 2012;,plot(year,data,o);,y=data;x=year-1972;,fun=(c,x)c(1)*exp(-c(2)*x);,c=lsqcurvefit(fun,13,(13.24-12.80)/40,x,y),fun2=(x)c(1)*exp(-c(2)*x)-12.5;,x2=fsolve(fun2,50)%,初估,50,年后,,%,计算得,73,年以后,即,2045,年,xx=0:75;yy=fun(c,xx);,figure;,plot(year,data,o,xx+1972,yy);grid on;,男子,110,栏问题的求解,模型估计大约,2045,年突破,12,秒,50,迭,代法是从解的初始近似值,x,0,(,简称初值,),开始,利用某种迭代格式,x,k+1,=g(x,k,),求得一近似值序列,x,1,x,2,x,k,x,k+1,逐步逼近于所求的解,(,称为不动点,),。,最常用的迭代法是牛顿迭代法,其迭代格式为,1,迭代法,4.3,计算实验:迭代法,Newton,法几何意义:切线法,切线代替曲线,牛顿法程序,newton.m,function x=newton(fname,dfname,x0,e),if nargine,x0=x;,x=x0-fname(x0)/dfname(x0);,end,例,6,求方程,x,2,-3 x+e,x,=2,的正根,(,要求精度,=10,-6,),解,令,f(x)=x,2,-3 x+e,x,-2,f(0)=-1,f(2)0,所以根在,0,2,内。,M,文件,eg4_6,先用图解法找初值,,再用牛顿法程序,newton.m,求解。,2,线性化拟合,例,7.,用函数,y=ae,bx,拟合例,2,的数据,方法一:,非线性拟合,记,a,=c(1),b,=c(2),fun=(c,x)c(1)*exp(c(2)*x;,x=;y=;c,Q=lsqcurvefit(fun,0,0,x,y),方法二:,线性化拟合,两边取对数得,z=,ln,y=,ln,a+bx,转化为线性拟合。,M,文件,eg4_7,不难算出,,你向银行总共借了,25.2,万,,30,年内共要还,51.696,万,,这个案例中贷款年利率是多少呢?,例,8.,下面是,新民晚报,2000,年,3,月,30,日上的一则房产广告:,4.4,建模实验:购房贷款的利率,解,设,x,k,为第,k,个月的欠款数,,a,为月还款数,r,为月利率。,x,k+1,=(1+r)x,k,-,a,那么,x,k,=(1+r)x,k-1,-,a,=(1+r),2,x,k-2,(1+r)a a=,=(1+r),k,x,0,a1+(1+r)+(1+r),k-1,=(1+r),k,x,0,a(1+r),k,-1/r,根据,a=0.1436,x,0,=25.2,x,360,=0,得到,25.2(1+r),360,0.1436(1+r),360,-1/r=0,很难用,roots,求解!,常识上,,r,应比当时活期存款月利率略高一些。我们用活期存款月利率,0.0198/12,作为迭代初值,用,fzero,求解,clear;,fun=(r)25.2*(1+r)360-(1+r)360-,1)/r*0.1436;,r=fzero(fun,0.0198/12);,R=12*r,得年利率为,5.53%.,(,你知道最新利率吗?,),分期付款月还款公式,方程,(1+r),N,x,0,a,(1+r),N,-1/r=0,月还款计算,x,0,-,剩余借款额;,N,-,剩余月数;,r,-,月利率,=,年利率,/12,线性迭代,x,k+1,=ax,k,+b,收敛,:当,|a|1,趋于无穷大。,4.4,建模实验:混沌,不收敛的非线性迭代,可能会,趋于无穷大,,趋于一个周期解,,在一个有限区域内杂乱无章地游荡,这类由,确定性运动导致的貌似随机的现象称为,混沌现象,4.4,建模实验:混沌,例(混沌):昆虫数量的,Logistic,模型,x,k+1,=a x,k,(1-x,k,),0,a,4,x,k,表示第,k,代昆虫数量,(1,表示理想资源,环境最大可能昆虫数量,),。,a,为,资源系数,.,0,a,4,保证了,x,k,在区间,(0,1),上封闭。,当,0,a1,在,0,,,1,内有一个不动点,0,,,且由,|g,(0)|=a1,不动点,0,不再稳定,;,当,1a,3,,由,|g,(1-1/a)|=|2-a|3,,,出现两个,周期,2,解,,且,3,a,a,迭代序列几乎杂乱无章,,即所谓,混沌,。,分岔图程序,clear;close;a=0:0.01:4;,M=length(a);K=1000;x=zeros(K,M);x(1,:)=rand(1,M);,for m=1:M,for k=1:K-1,x(k+1,m)=a(m)*x(k,m)*(1-x(k,m);,end,end,for k=1:20,plot(a,x(k,:),.);title(k=,int2str(k);pause(1);,end;,plot(a,x(900:K,:),.);hold off;,分岔图,*,混沌的特征,(i),初值敏感性,:,两个任意近的点出发的两条轨迹,迟早会分得很开,;,蝴蝶效应,(Lorenz 1963),:一只南美热带雨林中的蝴蝶,偶尔扇动几下翅膀,可能在两周后在美国德克萨斯引起一场龙卷风。,(ii),遍历性,:,任意点出发的轨迹总会进入,0,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服