《数学建模MATLAB教案.pdf》由会员分享,可在线阅读,更多相关《数学建模MATLAB教案.pdf(7页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、1.三种插值方法拉格朗日多项式插值构造基函数li(x)(x x0)(x xi1)(x xi1)(x xn)(xi x0)(xi xi1)(xi xi1)(xi xn)插值多项式Ln(x)yili(x)i0n分段线性插值将每两个相邻的节点用直线连起来,即在每个小区间上是线性函数。有现成命令。三次样条插值一根有弹性的细长木条固定在节点上,其他地方自然弯曲,如此称为样条曲线。普遍使用的样条函数是分段三次多项式:在每个小区间上是三次多项式,在大区间上二阶导数连续,通过全部节点。有现成命令。例子1对y,5 x 5,用 11 个等分节点作上述三种插值,用 21 个等分插值点1 x2作图。比较结果,spli
2、ne 插值最好。2.数据拟合2.1 多项式拟合指令方法x=1 2 3 4 5 6 7 8 9;y=9 7 6 3-1 2 5 7 20;P=polyfit(x,y,3);xi=0:.2:10;yi=polyval(P,xi);plot(xi,yi,x,y,r*);图形窗口方法x=1 2 3 4 5 6 7 8 9;y=9 7 6 3-1 2 5 7 20;plot(x,y,r*);2.2 指定函数类型拟合例子某次阻尼振荡实验中测得数据点x=0;0.4;1.2;2;2.8;3.6;4.4;5.2;6;7.2;8;9.2;10.4;11.6;12.4;13.6;14.4;15;y=1;0.85;0
3、.29;-0.27;-0.53;-0.4;-0.12;0.17;0.28;0.15;-0.03;-0.15;-0.071;0.059;0.08;0.032;-0.015;-0.02;f=fittype(a*cos(k*t)*exp(w*t),independent,t,coefficients,a,k,w);cfun=fit(x,y,f)xi=0:.1:20;yi=cfun(xi);plot(x,y,r*,xi,yi,b-);补充:三维图形例子作曲面z f(x,y)的图形,z sinx2 y2x y22,7.5 x 7.5,7.5 y 7.5作螺旋线x sint,y cost,z t练习矩阵运
4、算:+加法;-减法;转置;*乘法;乘幂;左除;/右除。.*乘法;.乘幂;.左除;./右除。矩阵函数:zeros;ones;eye;rand;randn。图形:线型:-实线;:点线;-.虚点线;-波折线;.圆点;+加号;*星号;x x 形;。小圆。颜色:y 黄;r 红;g 绿;b 蓝;w 白;k 黑;m 紫;c 青。例子车灯光源投影区域的绘制(CUMCM2002A)3.数值积分矩形公式Ln hfk,h k0nn1banbanRn hfk,h k1梯形公式(相当于将两矩阵公式平均,也相当于用分段线性插值函数作为近似)hbaTn hfk(f0+fn),h 2nk1n1辛普森公式(抛物线法)m1m1h
5、baSn(f0+f2m4f2k12f2k),h 32mk0k1例子20sin xdx例子卫星轨道长度人造地球卫星轨道可视为平面上的椭圆。我国第一颗人造地球卫星近地点距地球表面 439km,远地点距地球表面 2384km,地球半径为 6371km,求该卫星的轨道长度。4.数值微分f(ah)f(a)前差公式f(a)hf(a)f(ah)后差公式f(a)hf(ah)f(ah)中心差商f(a)2h前差形式数值微分,现成命令:diff(x)。输入 x 是 n 维数组,输出为 n-1 维数组x2 x1,x3 x2,xn xn1。5.常微分方程数值解设y f(x,y),y(x0)y0,其中 f 适当光滑,对
6、y 满足 Lipschitz 条件,以保证解存在且唯一。在一系列离散点x0 x1 x2 xn上求y(xn)的近似值yn(n 1,2,),通常取等步长h,即xn x0nh(n 1,2,)。向前欧拉公式在小区间xn,xn1上用差商y(xn1)y(xn)代替方程左端的导数,方程右端f(x,y)h中的x取小区间xn,xn1的左端点xn,可得y(xn1)y(xn)hf(xn,y(xn)从x0出发,由初值y(x0)y0,得到y(x1)的近似值y1为(以下用代替)y1 y0hf(x0,y0)再以y1作为y(x1)的近似值,得到y(x2)的近似值y2为y2 y1 hf(x1,y1)继续下去,一般地yn1 yn
7、hf(xn,yn),n 0,1,龙格库塔方法按照微分中值定理有y(xn1)y(xn)y(xnh),0 1h注意到方程y f(x,y)就有y(xn1)y(xn)hf(xnh,y(xnh)记K f(xnh,y(xnh),称为区间xn,xn1上的平均斜率。向前欧拉公式简单地取f(xn,yn)为K,精度很低。龙格库塔方法的基本思想:在区间xn,xn1内多取几个点,将它们的斜率加权平均作为K。取 2 个点,2 阶龙格库塔公式。取 4 个点,4 阶龙格库塔公式。有现成的命令:t,x=ode23(f,ts,x0,options)t,x=ode45(f,ts,x0,options)其中,f 是由待解方程写成的
8、 m 文件名;ts 为自变量的取值;x0 为函数的初值;options 用于设定误差限(可以缺省,缺省时设定为相对误差103,绝对误差106),设定命令:options=odeset(reltol,rt,abstol,at),rt,at 分别为设定的相对误差和绝对误差。t,x 为输出的自变量和函数值。例子单摆运动方程ml mgsin,初始条件(0)0,(0)0在0不大的条件下,可将方程中的sin近似为,于是得到线性常系数微分方程 0,容易算出其在初始条件下的解为(t)0cost,glg。l当0较大时,若仍用近似sin,误差太大了。试用数值方法在0等于10和30两种情况下求解(设l 25cm),
9、画出(t)的图形,并与近似解的结果比较。先将它化为方程组。令x1,x2,则方程化为x1 x2,x2 gsin x1,初始条l件 为x1(0)x10,x2(0)0,其 中g 9.8,l 25,x10为10 0.1745弧 度和30 0.5236弧度两种情况。对于近似解,周期T 2l25 210(s)g9.8可以看出,初始角度为10时精确(数值)解与近似解相差不大,而初始角度为30时,随着时间的增加二者差别就很大了。食饵-捕食者模型食饵甲和捕食者乙在时刻t的数量分别记作x(t)和y(t)。当甲独立生存时它的(相对)增长率为r,即x rx,而乙的存在使甲的增长率减小,设减小的程度与乙的数量成正比,于
10、是x(t)满足x x(r ay)rxaxy,比例系数a反映捕食者掠取食饵的能力。捕食者离开食饵无法生存,设乙独自存在时死亡率为d,即y dy,而甲的存在使乙的死亡率降低,设这个作用与甲的数量成正比,于是y(t)满足y y(d bx)dy bxy,比例系数b反映食饵对捕食者的供养能力。设初始数量分别为x(0)x0,y(0)y0。设r 1,d 0.5,a 0.1,b 0.02,x0 25,y0 2,求数值解,画出函数x(t)和y(t)的图形以及相图(x,y)。6.线性规划LINPROGLinear programming.X=LINPROG(f,A,b)solves the linear prog
11、ramming problem:min f*xsubject to:A*x=bx例子min z 2x13x2 x3x14x22x38s.t3x12x2 6x,x,x 0123c=2;3;1;a=1,4,2;3,2,0;b=8;6;x,y=linprog(c,-a,-b,zeros(3,1)max z 2x13x25x3 x1 x2 x3 7s.t2x15x2 x310 x,x,x 0123c=2;3;-5;a=-2,5,-1;b=-10;aeq=1,1,1;beq=7;x=linprog(-c,a,b,aeq,beq,zeros(3,1)value=c*x7.优化工具箱help optim 查
12、看优化工具箱的帮助信息基本程序名:fmin,fminu,fmins,leastsq,curvefit,constr,lp,qp,minimax,nnls,conls,fzero,fsolve 等。例子x2y2求解min,a b 2ab(本题精确结果为 x=y=0)用下面一组数据拟合c(t)rekt中的系数 r 和 k。(也可以用指定函数类型拟合)t=0.25 0.5 1 1.5 2 3 4 6 8;c=19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01;控制参数 options 的设置18 个参数1,输出形式,1 表示有中间结果输出,0 表示无中间结果输出2,解的精度3,函数的精度4,约束的精度,8,函数值输出,10,函数计算次数例子x2y2min,a 10,b 1ab将解和函数值的精度提高到108,给出迭代次数及结果的函数值。8.灰色预测算法实现其他算法的实现