数学建模期末考试重点.docx
《数学建模期末考试重点.docx》由会员分享,可在线阅读,更多相关《数学建模期末考试重点.docx(14页珍藏版)》请在冰豆网上搜索。
数学建模期末考试重点
数学建模:
一、选择题(5*3'15':
1.Matlab基本知识;
2•数组点乘、点除:
设:
a=[a1,a2,…,an],c=标量
则:
a.*c=[a1*c,a2*c,…,an*c](点乘)
a./c=[a1/c,a2/c,…,an/c](右除)a.\c=[c/a1,c/a2,…,c/an](左除)
3.重积分:
(P9)
在Matlab中可以使用int()函数求解积分问题,其调用的具体格式为int(fun,x,a,b)
其中x为积分变量,a,b分别是积分下限和积分上限•当a,b去取成或inf时,可以计算无穷限非正常积分•对多元函数的重积分,可先经过数学处理将重积分转化为多次积分,每次积分针对积分变量调用int()函数处理。
矩阵的鞍点:
(P80)
二、填空题(15':
1•第一章中Matlab基本知识;
2.产生5阶随机矩阵:
R=rand(m,n)产生6阶单位阵:
E=eye(m,n)
3.多项式的根:
(P58)当f(x)为多项式时可用:
r=roots(c)输入多项式系数c(按降幕排列),输出r为f(x)=0的全部根;c=poly(r)输入f(x)=0的全部根r,输出c为多项式系数(按降幕排列);df=polyder(c)输入多项式系数c(按降幕排列),输出df为多项式的微分系数例求解x3-x+1=0
解输入
c=[1,0,-1,1];
r=roots(c)可得
r=
-1.3247
0.6624+0.5623i
0.6624-0.5623i
例求解x2-ax+b=0
解输入
s=‘xA2-a*x+b';
x=solve(s,'x')
可得
x=
[1/2*a+1/2*(aA2-4*b)A(1/2)]
[1/2*a-1/2*(aA2-4*b)A(1/2)]
..例求非线形方程组
」X=asin(x)+bcos(y)
Y=ccos(x)+dsin(y)先建立m文件myfun.m
functionq=myfun(p,a,b,c,d)x=p
(1);
y=p
(2);
q
(1)=-x+a*sin(x)+b*cos(y);q
(2)=-y+c*cos(x)+d*sin(y);
然后输入
a=0.6;b=0.3;c=0.6;d=-0.3;
xO二[0.5,0.5]';%初始值
[x,fv]=fsolve(@myfun,x0,[],a,b,c,d)或
opt=optimset(‘Maxlter',2);
[x,fv,ef,out,jac]二fsolve(@myfun,x0,opt,a,b,c,d)
4.差分方程的解:
(P157)一阶常系数线性差分方程
(8.4)
Yn1一ay.=f(n)(a=0)(8.3)ynay“=0
迭代法:
设Yo已知,将n=0,1,23依次代入yn1=ayn中,得
Yi=ay°,y2二ay厂a2yo,ay^a3y°,lll
般地,yn=any°(n=0,1,2,3…)
容易验证:
yn=ay。
满足差分方程,因此是差分方程的解.这个解法称为迭代法一般解法:
若~n是(8.3)的一个特解
令Yn_yn-yn
yn二AYn是(8.4)的通解yn二(A为任意常数)是
(8.3)的通解为yn=ynAY
(8.4)的通解
一阶常系数线性非齐次差分方程
f(n)=c二const,y1-ay.=C
迭代法:
设给定初值y。
yi
=ay0c
y2
agic
2
ay0c(1a)
y3
ay2c
a3y0c(1a1
亠亠a2)
n
yn二ay。
c(1
n-1
当a=1时,1a
anJ
yn
n
ay0
1-a
当a=1时,1
an_1
Vac=
c
+
1-a
yn二y。
cn
n=0,1,2,3
-般解法:
设(8.5)具有~n
kns形式的特解从而
k(n1)s
-akns=c
k-ak=c—y
Yn
yn=Aay=
—n1-a
Aan
当a=1时,k=c>y;
cn
yn-A
=>
cnA
二阶常系数线性差分方程
二阶常系数线性齐次差分方程
Yn2
byn
Yn
-a亠ma2-4b
-a-a2-4b
a2-4b0
n
yn=C11C22
a2-4b:
0
a2-4b=0
a
其中
1
a,
2
号J4小2「「
=-b,tg-
.4b-a2
】=r(cos^isin二)‘2=r(cos^-isin二)
yn2
=Zu
f2
y;=rn(C1cosn^C2sinn71)
二阶常系数线性非齐次差分方程
二rncosn:
-isinn^
yn2ayn1byn二C
~n=knsk(n2)sak(nifbkii=cA
s=0c
f(n)二cnk(c二const)yn2ayn1byn二cnk
特解Vn=ns(B°B?
n2Bknk)
1ab=0,取s=0
1ab=0,且a—2,取s=1
1ab=0,且a一2,取s=2
5•微分方程的解:
(P45&P55)欧拉方法、龙格库塔方法三、综合题(70':
y=f(x)]
2.画图:
(P10)
1).plot(x,y):
调用格式:
plot(X,Y,S)
plot(Y)——以元素序号为横坐标,绘制折线图(演示)
plot(X,Y——y和x为同维向量,则以x为横坐标,y为纵坐标绘制实线图plot(X,Y1,S1,X,Y2,S2;…,X,Yn,Sn——同时将多条线画在一起
2).ezplot:
MATLAB提供了一个ezplot函数绘制隐函数图形,下面介绍其用法。
(1)对于函数f=f(x),ezplot函数的调用格式为:
ezplot(f):
在默认区间-2nezplot(f,[a,b]):
在区间a⑵对于隐函数f=f(x,y),ezplot函数的调用格式为:
ezplot(f):
在默认区间-2nezplot(f,[xmin,xmax,ymin,ymax]):
在区间xminvxezplot(f,[a,b]):
在区间a⑶对于参数方程x=x(t)和y=y(t),ezplot函数的调用格式为:
ezplot(x,y):
在默认区间0ezplot(x,y,[tmin,tmax]):
在区间tmin3).subplot:
可以在同一个画面上建立几个坐标系,用subplot命令
subplot函数的调用格式为:
subplot(m,n,p)
把一个画面分割成m*n个图形区域,p代表当前的区域号,再每个区域中分别画一个图。
3.数据处理(检验):
(P103)
1).方差已知,ztest
2).方差未知,ttestt检验应用条件:
1、当样本量较小时,理论上要求样本为来自正态总体的随机样本;
2、当两小样本均数比较时,要求两总体方差相等(方差齐性:
即。
12=(T22)检验的基本步骤:
H。
:
…。
耳:
…。
(一)建立假设
其中卩0为样本所在总体均值.
(二)在无效假设成立的条件下,计算t值.
x-1
其中,n为样本含量,Sx=S/n为样本标准误.
t=°-,df=n-1
S-
x
单样本t检验
h=ttest(x,xO,alpha)
[h,sig,ci]二ttest(x,xO,alpha,tail)
输入:
x为给定数据,x0为总体均数,a为检验水平,通常为0.05,0.01,默认时为
0.05,tail取0,1,-1分别表示备择假设为均值不等于,不大于,不小于x0.(注意
此时的零假设)(缺省时为0).
输出:
h=0不拒绝Ho;h=1拒绝Ho;sig为与t统计量有关的p值,ci为均值真值的1-alpha置信区间.
t检验
两样本均数的t检验
H。
:
亠」2;Ha:
对两个独立同方差(方差未知)正态总体的样本均值差异进行
t"
sx1-
x2
2,df=g-1)(n^1)
-X2
S<1-x>=
5-恼(比-1)£(11)
(口-1)(比-1)nn
Matlab实现:
两样本t检验
函数:
ttest2;调用格式:
建立假设;
计算均数差异标准误、t值和自由度。
h=ttest2(x,y)
[h,significance,ci]二ttest2(x,y,alpha)
[h,significance,ci]=ttest2(x,y,alpha,tail)
输入:
x,y为给定数据,tail取0,1,-1分别表示备择假设为卩严卩y,卩x<卩y,ax》ay.
输出:
h=0,不拒绝Ho;h=1拒绝Ho;sig为P值;ci为置信区间.
4.微分方程数值解:
【编程、绘图】(P45)
1).向前欧拉公式:
而y(xnYn1,y(xnPYn,故上式可写成:
n=0,1,-(3)
yn1ynhf(Xn,yn),
(3)式即为向前欧拉公式。
2).改进欧拉公式:
为简化计算,且能提高精度,将梯形公式中的迭代过程简化为两步:
(1).先用向前欧拉方法求得一个初步的近似值尹曲,称之为预报值。
电儿儿)(io)
(2).用预报值代替梯形公式中右端的再计算得校正值儿小
h-
Ft急几+片[/(5几)+/(兀1**1)],口=。
丄…(U)
(10)科(11)组成了一个预测较正系统,这便是改进的欧拉公式.
在matlab中编制如下的函数文件gjeuler.m将其实现.function[x,y]=gjeuler(fun,xO,xf,yO,h)
n二fix((xf-xO)/h);
y(i)=y0;
x
(1)=x0;
x(n)=0;y(n)=0;
fori=1:
(n-1)
x(i+1)=x0+i*h;
y仁y(i)+h*feval(fun,x(i),y(i));
y2=y(i)+h*feval(fun,x(i+1),y(i));
y(i+1)=(y1+y2)2;
end
例应用改进的欧拉方法求y*一y•xt,y(o)=1
首先建立函数文件fun.m:
functionf二fun(x,y)
f=-y+x+1;
然后在主程序中输入:
[x,y]=gjeuler('fun',0,1,1,0.1)即可.
3).龙格一库塔方法:
龙格—库塔方法的基本思想就是:
在[xn,xn+1]内多取几个点,将它们的导数加权后代替f(x,y(x)),设法构造出精度更高的计算公式。
高阶微分方程需要先降阶为一阶微分方程组:
解析解
desolve('eqi1','eqi2‘,…,,x,)
求常微分方程(组)的解析解。
例3计算y'y+2x,y(0)=1,
2、取t°=0,tf=1,输入命令
[x,y]=ode23('fun1',0,1,1,0)
解:
1、建立m-文件fun1.m如下:
functiondot1=fun1(x,y);
dot1=y+2*x;
注:
1、在解n个未知函数的方程组时,x0和x均为n维向量,m-文件中的待解方程组应以x的分量形式写成,返回的值应为列向量。
2、使用Matlab求数值解时,高阶微分方程必须等价地变换成一阶微分方程组.d^x“工、dx介
例、求解
—十-f1-x*)—+x=0at1dt
x(0)-l;x'(0)=0
解:
令
则微分方程变为一阶微分方程组;
二(1-甘加-卩
|球0)“小⑼“
1、建立m-文件vdp1.m如下:
functiondy=vdp1(t,y)dy=zeros(2,1);dy
(1)=y
(2);
dy
(2)=(1-y
(1)八2)*y
(2)-y
(1);
5.优化问题:
【线性规划】(P129)用MATLAB优化工具箱解线性规划:
1、模型:
minz=cX
s.t.AX乞b
命令:
x=linprog(c,A,b)
2、模型:
minz=cX
s.t.AX乞b
AeqX=beq
命令:
x=linprog(c,A,b,Aeq,beq)
注意:
若没有不等式:
AX"存在,则令A=[],b=[].
3、模型:
minz=cX
s.t.AX乞b
AeqX=beq
VLB命令:
[1]x=linprog(c,A,b,Aeq,beq,VLBVUB)
[2]x=linprog(c,A,b,Aeq,beq,VLBVUB,X0
二次规划(QP)
miDf(x)=+ex
57.Ax
当H为对称阵,称二次规划当H正定时,称凸二次规划
[Xffval,exitflagfoutput,lambda]=
1inprog(cfAlfblfA2fb2fvlfv2fxOfoptions)lambda~lagqange乘子,其维数等于约束条件个数,非零向量对应于起作用约束
lambdaineqlin
lambdaeqlin
lambdaupper
等式约束Ax=b下的Lagrange乘子法
L函数+ex+(Ax—b).2eR1'
lambdalower
最优解方程Hx+c丁+ATA=O
Ax—Z?
=0
解二次规划的有效集方法
堆本思想:
对「不筹式约束的二次规划,亦某口J行点
处将不起作用约束去曲,起作用约束视为等式约束*,
通过求解等式约束的一次规划来改进可行点七絆味为⑴継优鮒则它畝
(2)侦优解
叫他十加+険吋⑴冷畑+肚⑵原理■制
(1)的可礪隔2)的KM冃M曲幼⑴M叮珂E的是的第洌■I■乘子非负’则它魄
(1)僦优他
1、Matlab求解二次规划(QP)
标准型为:
MinZ=丄XtHX+ctX
2
s.t.AX<=bAeqX=beq
VLBwXwVUB
用MATLAB软件求解,其输入格式如下:
1.x=quadprog(H,CAb);
2.x=quadprog(H,C,A,b,Aeq,beq);
3.x=quadprog(H,C,A,b,Aeq,beq,VLB,VUB);
4.x=quadprog(H,C,A,b,Aeq,beq,VLB,VUB,X0);
5.x=quadprog(H,C,A,b,Aeq,beq,VLB,VUB,XO,options);
6.[x,fval]=quaprog(...);
7.[x,fval,exitflag]=quaprog(...);
8.[x,fval,exitflag,output]=quaprog(...);
2、一般非线性规划
标准型为:
minF(X)
s.tAX<=bG(X)
Ceq(X)=OVLBXVUB
其中X为n维变元向量,G(X)与Ceq(X均匀为非线性函数组成的向量,其它变量的含义与线性规划、二次规划中相同•用Matlab求解上述问题,基本步骤分三步:
1.首先建立M文件fun.m,定义目标函数F(X):
functionf二fun(X);
f=F(X);
2.若约束条件中有非线性约束:
G(X)<0或Ceq(X)=0,
则建立M文件nonlcon.m定义函数G(X)与Ceq(X):
function[G,Ceq]二nonlcon(X)
G=...
Ceq=...
3.建立主程序.非线性规划求解的函数是fmincon,命令的基本格式如下:
(1)x=fmincon(‘fun',X0,A,b)
(2)x=fmincon(‘fun',X0,A,b,Aeq,beq)
(3)x=fmincon(‘fun',X0,A,b,Aeq,beq,VLB,VUB)
⑷x=fmincon(‘fun',X0,A,b,Aeq,beq,VLB,VUB,nonlcon')
(5)x=fmincon(‘fun',X0,A,b,Aeqbeq,VLB,VUB,'nonIcon',options)
(6)[x,fval]=fmincon(...)
(7)[x,fval,exitflag]=fmincon(...)
(8)[x,fval,exitflag,output]=fmincon(...)
6.拟合:
(P100)
多项式拟合、线性拟合、输出函数:
ployfit
例:
求y=aebx时,Iny=Ina+bx,lny与x成线性
x=[…••]•;y=[];z=Iny;c=ployfit(x,z,1)
则a=ec⑴,b=c
(2)
7.层次分析:
(P66)
成对比较矩阵,看出哪个因素最重要