数学建模MATLAB教案

发布 2023-05-18 00:56:28 阅读 9002

1.三种插值方法。

拉格朗日多项式插值。

构造基函数。

插值多项式。

分段线性插值。

将每两个相邻的节点用直线连起来,即在每个小区间上是线性函数。有现成命令。

三次样条插值。

一根有弹性的细长木条固定在节点上,其他地方自然弯曲,如此称为样条曲线。普遍使用的样条函数是分段三次多项式:在每个小区间上是三次多项式,在大区间上二阶导数连续,通过全部节点。

有现成命令。

例子。对,用11个等分节点作上述三种插值,用21个等分插值点作图。比较结果,spline插值最好。

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.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',)

cfun=fit(x,y,f)

xi=0:.1:20;

yi=cfun(xi);

plot(x,y,'r*',xi,yi,'b-')

补充:三维图形。

例子。作曲面的图形,

作螺旋线。练习。

矩阵运算:+加法;-减法;'转置;*乘法;^乘幂;\左除;/右除。

*乘法;.^乘幂;.\左除;./右除。

矩阵函数:zeros;ones;eye;rand;randn。

图形:线型:-实线;:

点线;-.虚点线;--波折线;.圆点;+加号;*星号;x x形;。

小圆。颜色:y黄;r红;g绿;b蓝;w白;k黑;m紫;c青。

例子。车灯光源投影区域的绘制(cumcm2002a)

3.数值积分。

矩形公式。梯形公式(相当于将两矩阵公式平均,也相当于用分段线性插值函数作为近似)

辛普森公式(抛物线法)

例子。例子。

卫星轨道长度。

人造地球卫星轨道可视为平面上的椭圆。我国第一颗人造地球卫星近地点距地球表面439km,远地点距地球表面2384km,地球半径为6371km,求该卫星的轨道长度。

4.数值微分。

前差公式。后差公式。

中心差商。前差形式数值微分,现成命令:diff(x)。输入x是n维数组,输出为n-1维数组。

5.常微分方程数值解。

设,其中f适当光滑,对y满足lipschitz条件,以保证解存在且唯一。

在一系列离散点上求的近似值,通常取等步长,即。

向前欧拉公式。

在小区间上用差商代替方程左端的导数,方程右端中的取小区间的左端点,可得。

从出发,由初值,得到的近似值为(以下用代替)

再以作为的近似值,得到的近似值为。

继续下去,一般地。

龙格库塔方法。

按照微分中值定理有。

注意到方程就有。

记,称为区间上的平均斜率。

向前欧拉公式简单地取为,精度很低。

龙格库塔方法的基本思想:在区间内多取几个点,将它们的斜率加权平均作为。

取2个点,2阶龙格库塔公式。取4个点,4阶龙格库塔公式。

有现成的命令:

t,x]=ode23('f',ts,x0,options)

t,x]=ode45('f',ts,x0,options)

其中,f是由待解方程写成的m文件名;ts为自变量的取值;x0为函数的初值;options用于设定误差限(可以缺省,缺省时设定为相对误差,绝对误差),设定命令:options=odeset('reltol',rt,'abstol',at),rt,at分别为设定的相对误差和绝对误差。t,x为输出的自变量和函数值。

例子。单摆运动。

方程,初始条件。

在不大的条件下,可将方程中的近似为,于是得到线性常系数微分方程,容易算出其在初始条件下的解为。

当较大时,若仍用近似,误差太大了。试用数值方法在等于和两种情况下求解(设),画出的图形,并与近似解的结果比较。

先将它化为方程组。令,则方程化为,初始条件为,其中,,为弧度和弧度两种情况。

对于近似解,周期。

可以看出,初始角度为时精确(数值)解与近似解相差不大,而初始角度为时,随着时间的增加二者差别就很大了。

食饵-捕食者模型。

食饵甲和捕食者乙在时刻的数量分别记作和。

当甲独立生存时它的(相对)增长率为,即,而乙的存在使甲的增长率减小,设减小的程度与乙的数量成正比,于是满足,比例系数反映捕食者掠取食饵的能力。

捕食者离开食饵无法生存,设乙独自存在时死亡率为,即,而甲的存在使乙的死亡率降低,设这个作用与甲的数量成正比,于是满足,比例系数反映食饵对捕食者的供养能力。

设初始数量分别为。

设,求数值解,画出函数和的图形以及相图。

6.线性规划。

linprog linear programming

x=linprog(f,a,b) solves the linear programming problem:

min f'*x subject to: a*x <=b x例子。

c=[2;3;1];

a=[1,4,2;3,2,0];

b=[8;6];

x,y]=linprog(c,-a,-b,zeros(3,1))

c=[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'*x

7.优化工具箱。

help optim查看优化工具箱的帮助信息。

基本程序名:

fmin,fminu,fmins,leastsq,curvefit,constr,lp,qp,minimax,nnls,conls,fzero,fsolve等。

例子。求解,

本题精确结果为x=y=0)

用下面一组数据拟合中的系数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,函数计算次数。

例子, 将解和函数值的精度提高到,给出迭代次数及结果的函数值。

8.灰色**算法实现。

其他算法的实现。

数学建模matlab作业

数统应数 20121323003 王妍。数统应数 20121323022 胡可旺。1 生成5阶矩阵,使其元素满足均值为1,方差为4的正态分布 y 1 sqrt 4 randn 5 结果 2,生成一个20行5列矩阵a,其元素分别以概率 2取自 这三个整数,然后将 删除a的全零行 之后的结果赋给矩阵b ...

数学建模Matlab练习

matlab练习四。1.绘制两个一元函数的曲线图 例如y sin x y cos x 加上标注说明,包括坐标 抬头 曲线说明等。x 0 pi 30 2 pi y sin x plot x,y,ob markersize 10 hold on y1 cos x plot x,y1,markersize...

matlab数学建模应用

matlab对于数学建模用处是非常大的,编程可以不用matlab,但是matlab自带的那些数学分析程序非常厉害,下面是几点必学的数学建模中的matlab知识,主要都是数值分析中的东西 几个重要算法。线性规划与非线性规划。matlab作图 二维,三维都要,图画的漂亮对于数学建模很重要的哦。分为 1 ...