数据分析与方程求解_第1页
数据分析与方程求解_第2页
数据分析与方程求解_第3页
数据分析与方程求解_第4页
数据分析与方程求解_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据分析主要内容q一、多项式计算一、多项式计算q二、数据的导入与导出二、数据的导入与导出q三、数据的统计分析三、数据的统计分析q四、插值和拟合四、插值和拟合q五、五、Mathematica插值插值q六、六、Mathematica拟合拟合 一、多项式计算q多项式可看做是符号表达式多项式可看做是符号表达式,利用符号运算可进行处理利用符号运算可进行处理q多项式的向量表示多项式的向量表示n 设有多项式设有多项式n 表示为表示为:(1)多项式的加法多项式的加法n对应系数的加减运算对应系数的加减运算 (2)多项式的乘法多项式的乘法 :conv(P1,P2) (3)多项式除法:多项式除法:Q,r=decon

2、v(P1,P2) n其中其中Q返回相除的商,返回相除的商,r返回余式。返回余式。Q和和r仍是多项式的系数向量仍是多项式的系数向量 (4)代数多项式求值代数多项式求值 :Y=polyval(P,x)n若若x为一数值,则求多项式为一数值,则求多项式P在该点的值;在该点的值;n若若x为向量或矩阵,则对向量或矩阵中的每个元素求多项式为向量或矩阵,则对向量或矩阵中的每个元素求多项式P的值的值 (5)矩阵多项式求值矩阵多项式求值 :Y=polyvalm(P,X) nX为向方阵,结果为矩阵为向方阵,结果为矩阵X的乘与和的乘与和(6)多项式的求根多项式的求根 :x=roots(P) n在复数范围内求多项式在复

3、数范围内求多项式P的全部根的全部根 1121)(mmmmaxaxaxaxp121,ma aa+二、数据的导入与导出qMatlab支持的数据文件支持的数据文件nMatlab特制的数据文件:特制的数据文件:.mat文件文件n通用数据文件:文本文件、通用数据文件:文本文件、EXCEL文件、数据库文件文件、数据库文件 等等q特制数据文件的打开与保存特制数据文件的打开与保存n保存保存n右击需保存的变量,通过菜单操作右击需保存的变量,通过菜单操作nsave命令保存变量到数据文件命令保存变量到数据文件n打开打开n通过菜单通过菜单“File|open”nload 命令命令q通用数据文件通用数据文件n通过通过“

4、File|Import Data”打开导入向导打开导入向导三、数据的统计分析q求最大值和最小值(求最大值和最小值(max和和min) nY,U=max(A)nA为向量为向量,将将A的最大值存入的最大值存入U,最大值序号存入最大值序号存入UnA为矩阵为矩阵,Y表示每列的最大值表示每列的最大值,U记录每列最大值的行号记录每列最大值的行号 nU=max(A,B)n由由A和和B中对应元素的较大者组成矩阵中对应元素的较大者组成矩阵U。q求和、积、均值、中值、累加和、累乘求和、积、均值、中值、累加和、累乘nsum和和prod、mean和和median、cumsum和和cumprod n例:例:x=1,on

5、es(1,10)*2; y=cumprod(x); sum(y) n求得求得1+2+22+210q排序排序nY,I=sort(A,dim,mode)nY是排序后的矩阵是排序后的矩阵,I记录记录Y中的元素在中的元素在A中的位置中的位置.ndim取取1(对对列列排序排序);取取2(对对行行排序排序);默认列排序默认列排序.nmode的取值的取值ascend(升序升序); descend(降序降序);默认升序默认升序. 四、插值与拟合q引例引例1:在一天在一天24小时内小时内,从零点开始每间隔从零点开始每间隔2小时测得的环小时测得的环境温度数据分别为境温度数据分别为(度度) 12,9,9,10,18

6、,24,28,27,25,20,18,15,13.请推测中午请推测中午1点(即点(即13点)时的温度。点)时的温度。q引例引例2:在化学反应中在化学反应中,为研究某化合物的浓度随时间的变化为研究某化合物的浓度随时间的变化规律规律,测得一组数据如下:测得一组数据如下:q请给出变化规律请给出变化规律,由此推测由此推测t为为1、1.5、2、2.5、10、10.5、11分钟时的值分钟时的值.q利用已给出的值利用已给出的值,计算相关的值计算相关的值q设有一组实验观测数据设有一组实验观测数据(xi,yi),i=0,1,n, 如何揭示自变量如何揭示自变量x与因变量与因变量y之间的关系?之间的关系?q寻找寻找

7、近似的函数关系表达式近似的函数关系表达式y=f(x)q常用的方法常用的方法:插值插值与与拟合拟合t(分分)12345678910y46.48.08.49.289.59.79.8610.010.21、插值q设测得的设测得的n个点的数据为个点的数据为(xi,yi) (i=1,2,n) ,构造一个函数构造一个函数y=g(x),使得在使得在xi(i=1,2,n)有有g(xi)=yi。g(x)称为插值函数。称为插值函数。 n插值函数插值函数自变量的个数自变量的个数:一维插值、二维插值、多维插值等:一维插值、二维插值、多维插值等n构造插值函数方法构造插值函数方法:线性插值、多项式插值、样条插值等线性插值、

8、多项式插值、样条插值等q一维数据的插值一维数据的插值nY1=interpl(X,Y,X1,mothod)n根据根据X和和Y的值插值,并求插值函数在的值插值,并求插值函数在X1处的值处的值nY是与是与X等长的向量等长的向量,Y1是插值函数在是插值函数在X1处的值处的值nY是矩阵是矩阵,X与与Y的每一列分别插值,并分别在的每一列分别插值,并分别在X1的值的值nX1是向量或标量是向量或标量,若若X1中的元素不在中的元素不在X的范围内的范围内,则插值结果为则插值结果为NaNnmethod的取值的取值n nearest:最近插值、:最近插值、 linear:线性插值:线性插值 nspline:三次样条插

9、值、:三次样条插值、cubic:三次插值:三次插值 q二维数据插值二维数据插值 nZ1=interp2(X,Y,Z,X1,Y1,method)n根据根据X、Y和和Z的值插值,并求插值函数在的值插值,并求插值函数在X1、Y1处的值处的值nX、Y是向量是向量(X:行行,Y:列列),Z为函数值为函数值(size(Z)=length(Y)length(X)nX、Y、Z是矩阵是矩阵,X与与Y同维同维, Z(i,j)是在点是在点(X(i,j),Y(i,j)处的值处的值 引例1的求解q在一天在一天24小时内小时内,从零点开始每间隔从零点开始每间隔2小时测得的环境温度小时测得的环境温度分别为分别为(度度) 1

10、2,9,9,10,18,24,28,27,25,20,18,15,13. 请推测中午请推测中午1点(即点(即13点)时的温度。点)时的温度。q解:解: (1)构造数据构造数据nh=0:2:24;nT=12,9,9,10,18,24,28,27,25,20,18,15,13; (2)了解数据的分布了解数据的分布n绘出数据的图形:绘出数据的图形:plot(h,T,*) (3)选取适当插值方法,计算结果选取适当插值方法,计算结果ninterp1(h,T,13,spline)ninterp1(h,T,13,cubic)q插值函数的评价插值函数的评价nX=0:24; %选取更多的数据选取更多的数据nY1

11、=interp1(h,T,X,spline);nY2=interp1(h,T,X,cubic);nsubplot(2,1,1);plot(h,T,:,X,Y1);title(spline)nsubplot(2,1,2);plot(h,T,:,X,Y2,r);title(cubic)q例:某实验对一根长为例:某实验对一根长为10米的钢轨进行热源的温度传播测试。米的钢轨进行热源的温度传播测试。如下表,其中如下表,其中x表示测量点,表示测量点,h表示测量时间,表示测量时间,T表示测得的温表示测得的温度。试用线性插值求出在一分钟内每隔度。试用线性插值求出在一分钟内每隔20秒、钢轨每隔秒、钢轨每隔1米处

12、的米处的温度。温度。q解:解:x=0:2.5:10;h=0,30,60;T=95,14,0,0,0;88,48,32,12,6;67,64,54,48,41;x1=0:10;h1=0:20:60;T1=interp2(x,h,T,x1,h1)q等价于等价于X,H=meshgrid(0:2.5:10,0:30:60);T=95,14,0,0,0;88,48,32,12,6;67,64,54,48,41;X1,H1=meshgrid(0:10,0:20:60);T1=interp2(X,H,T,X1,H1) xTh 02.557.5100951400030884832126606764544841

13、2、拟合q根据一组数据根据一组数据(xi,yi) (i=1,2,n) ,要求确定一个函数,要求确定一个函数y=f(x),使这些数据点与曲线,使这些数据点与曲线y=f(x)总体来说尽量接近,总体来说尽量接近,称为称为曲线拟合曲线拟合。q拟合的原理:拟合的原理:n最小二乘法最小二乘法 最小最小q若拟合函数若拟合函数f(x)是一个多项式是一个多项式,称为称为多项式拟合多项式拟合.qMatlab中多项式拟合命令:中多项式拟合命令:nP=polyfit(X,Y,m)n求数据求数据X与与Y的的m阶拟合多项式阶拟合多项式nP为拟合多项式的系数为拟合多项式的系数,长为长为m+1的向量的向量nX与与Y是等长的向

14、量是等长的向量q通过通过polyval求拟合函数在自变量处的值求拟合函数在自变量处的值21( ( )niiif xy=-引例2的求解q引例引例2:在化学反应中在化学反应中,为研究某化合物的浓度随时间的变化规律为研究某化合物的浓度随时间的变化规律,测得一测得一组数据如下:组数据如下:q请给出变化规律请给出变化规律,推测推测t为为1、1.5、2、2.5、10、10.5、11分钟时的值分钟时的值.q解:解:(1)构造数据构造数据qt=1:10;qy=4, 6.4, 8, 8.4,9.28,9.5,9.7, 9.86, 10, 10.2;(2)选取拟合多项式的阶选取拟合多项式的阶qplot(t,y,o

15、)(3)构造拟合多项式构造拟合多项式q p=polyfit(t,y,2)qp =q -0.1109 1.7922 2.9467(4)计算相关的值计算相关的值q t1=1:0.5:11; y1=polyval(p,t1);t(分分)12345678910y46.48.08.49.289.59.79.8610.010.2q拟合函数的评价拟合函数的评价n选取不同的阶做拟合选取不同的阶做拟合n根据散点图直观判断根据散点图直观判断n计算最小二乘指标计算最小二乘指标q例例nt=1:10;ny=4, 6.4, 8, 8.4,9.28,9.5,9.7, 9.86, 10, 10.2;np=polyfit(t,

16、y,2); ny2=polyval(p,t);nplot(t,y,:o,t,y2,-*)nsum(y-y2).2)q类似做类似做3次、次、4次次多项式拟合,从中进行比较多项式拟合,从中进行比较q例:在彩色显影中,由经验得知,形成染料的光学密度与析出银的光学密例:在彩色显影中,由经验得知,形成染料的光学密度与析出银的光学密度由公式度由公式q确定,试验测得如下一批数据:确定,试验测得如下一批数据:q求求y关于关于x的拟合函数。的拟合函数。q解:由给定的经验公式来求拟合函数,无法直接用解:由给定的经验公式来求拟合函数,无法直接用polyfit函数,我们换一种函数,我们换一种思路,将经验公式两边取对数

17、,得思路,将经验公式两边取对数,得 q令令Y=lny,X=1/xq只需求只需求Y关于关于X的线性拟合的线性拟合qx=0.05,0.06,0.07,0.10,0.14,0.20,0.25,0.31,0.38,0.43,0.47;qy=0.10,0.14,0.23,0.37,0.59,0.79,1.00,1.12,1.19,1.25,1.29;qX=1./x;qY=log(y)qP=polyfit(X,Y,1)qP =q -0.1459 0.5476则则Y=-0.1459X+0.5476y=exp(Y)=exp(0.5476)e(-0.1459X)=exp(0.5476)e(-0.1459/x),

18、整理即可整理即可x0.050.060.070.100.140.200.250.310.380.430.47y0.100.140.230.370.590.791.001.121.191.251.29,(0)bxyaeb=nq功能:功能:n对数据对数据data进行插值进行插值,并可设置插值多项式的次数并可设置插值多项式的次数n, 默认默认值为值为3。q注注:n生成一个生成一个InterpolatingFunction插值范围,插值范围,目标目标n所得目标为近似函数所得目标为近似函数,不显示所构造的函数。不显示所构造的函数。n数据表示:数据表示:x0,f0,x1,f1,xn,fn (平面点的坐标平面

19、点的坐标)q引例引例1求解解:求解解:ndata=0,12,2,9,4,9,6,10,8,18,10,24,12,28,14,27,16,25,18,20,20,18,22,15,24,13nListPlotdatanf=Interpolationdatanf(13)六、Mathematica拟合q格式:格式:nFit数据,拟合函数的基,变量数据,拟合函数的基,变量q功能:功能:n用数据用数据data,按给定的变量和拟合函数的基构造拟合函数。,按给定的变量和拟合函数的基构造拟合函数。q常用的几种格式:常用的几种格式:nFitdata,1,x,xn用数据用数据data作线性拟合函数作线性拟合函数

20、a+bxnFitdata,Tablexi,i,0,n,xn作作n次多项式拟合次多项式拟合q引例引例2的求解:的求解:q构建数据表:构建数据表:ndata=1,4,2,6.4,3,8.0,4,8.4,5,9.28,6,9.5,7,9.7,8,9.86,9,10,10,10.2q选取拟合的基。选取拟合的基。n画图,分别作画图,分别作3次、次、4次、次、5次、次、6次多项式拟合,求出其误差,比次多项式拟合,求出其误差,比较、判断几次拟合较为合适。较、判断几次拟合较为合适。q插值与拟合插值与拟合n插值插值要求函数在每一个观测点处一定要满足要求函数在每一个观测点处一定要满足yi=f(xi).n拟合拟合主

21、要考虑到观测数据受随机误差的影响主要考虑到观测数据受随机误差的影响,寻求寻求整体整体误误差最小、较好反映观测数据的近似函数差最小、较好反映观测数据的近似函数.q插值与拟合一般过程:插值与拟合一般过程:n构造数据构造数据n确定插值多项式的阶(可采用经验公式或画图)确定插值多项式的阶(可采用经验公式或画图)n选取命令插值选取命令插值n求出并分析所得结果求出并分析所得结果q数据拟合的一般过程:数据拟合的一般过程:n考察数据来源考察数据来源,确定有无经验公式;确定有无经验公式;n若有经验公式若有经验公式,则可直接进行拟合(必要时可对数据作些变换则可直接进行拟合(必要时可对数据作些变换处理)处理);n若

22、无经验公式若无经验公式,选择拟合函数的类型(画图)选择拟合函数的类型(画图)n求出拟合函数求出拟合函数n从数据、图形等途径对拟合结果分析从数据、图形等途径对拟合结果分析;n确定结果或调整拟合函数确定结果或调整拟合函数方程求解主要内容q符号方程的求解符号方程的求解 n符号代数方程求解符号代数方程求解 n符号常微分方程求解符号常微分方程求解 q线性方程组求解线性方程组求解 n利用左除运算符利用左除运算符 n利用矩阵的分解利用矩阵的分解 q非线性方程求解非线性方程求解 n单个自变量的非线性方程求解单个自变量的非线性方程求解 n非线性方程组求解非线性方程组求解 q微分方程求解微分方程求解 qMathe

23、matica方程的求解方程的求解一、符号方程的求解q符号代数方程求解符号代数方程求解 n代数方程是指未涉及微积分运算的方程代数方程是指未涉及微积分运算的方程 q求解命令求解命令qsolve(s)n求解符号代数方程,求解变量是默认变量。求解符号代数方程,求解变量是默认变量。qsolve(s1,s2,.,sn,v1,v2,.,vn)n求解符号表达式求解符号表达式s1,s2,.,sn所组成的代数方程组的解,求解变量分所组成的代数方程组的解,求解变量分别为别为v1,v2,.,vn。 q例:例:nsolve (x2-a*x-b=0) nsolve (x2-a*x-b)nsolve (x2-a*x-b=0

24、 , x )nsyms x a bn f=x2-a*x-b; solve(f,x); solve(f) n syms x y zn x y z=solve(x+2*y-z=27,x+z=3,x2+3*y2=12,x,y,z) n f=x5-a*x-b=0;solve(f,x) %无法求出解析解无法求出解析解 n f=x5-x-3;solve(f) %求近似解求近似解q符号常微分方程求解符号常微分方程求解q方程的表示:方程的表示:nDy表示表示y,D2y表示表示y q求解命令求解命令qdsolve(e,c,v)n求解微分方程求解微分方程e在初始条件在初始条件c下的特解下的特解,参数参数v描述方程

25、中描述方程中的自变量的自变量. q例:例:(1)求求 当当y(0)=1时的特解。时的特解。n y=dsolve(Dy=2*y*y2,y(0)=1,x) (2)求求 的通解。的通解。n x,y=dsolve(Dx=4*x-2*y,Dy=2*x-y,t) 22xydxdyyxdtdyyxdtdx224二、线性方程组求解q若有线性方程组若有线性方程组q利用左除运算符利用左除运算符nA=2,1,-1,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4;nb=13,-9,6,0; nx=Ab q利用矩阵的分解利用矩阵的分解nLU分解分解:将矩阵表示为一个下三角矩阵与一个上三角矩阵的乘积。:将矩阵

26、表示为一个下三角矩阵与一个上三角矩阵的乘积。nL,U=lu(X): 产生产生L和和U ,使得使得X=LU。n A=2,1,-1,1;1,-5,0,7;0,2,1,-1;1,6,-1,-4;n b=13,-9,6,0;n L,U=lu(A);n x=U(Lb) nQR分解分解:是将矩阵分解为一个正交矩阵和一个上三角矩阵的乘积是将矩阵分解为一个正交矩阵和一个上三角矩阵的乘积. :nQ,R=qr(X): 产生产生Q和和R,使得使得X=QR。1234124234123421 357926640 xxxxxxxxxxxxxx+-+=-+=+-=+-=三、非线性方程求解(近似解)q例:考察函数例:考察函数

27、n作图观察其根的分布作图观察其根的分布n尝试用尝试用solve求解求解q单个自变量的非线性方程求解单个自变量的非线性方程求解 nz=fzero(fun, x0) nz=fzero(fname,x0)n在在x0附近寻找函数附近寻找函数fun的近似根的近似根(fname是待求根的函数名是待求根的函数名)q求上述函数在区间求上述函数在区间-3,1内的根内的根(1)画图确定根的范围)画图确定根的范围n f=abs(x*sin(x)-exp(x)-1;nfplot(f,-3,1)n观察图形得出在观察图形得出在x=0、-1.2、-2.6附近有根附近有根(2)调用)调用fzero函数分别求出其根函数分别求出

28、其根n fzero(f,0)n fzero(f,-1.2)n fzero(f,-2.6)1)sin(xexxyq上述问题也可这样求解上述问题也可这样求解(1)定义函数文件定义函数文件 funx.m,nfunction y=funx(x)ny=abs(x.*sin(x)-exp(x)-1;(2)画图确定根的位置画图确定根的位置n fplot(funx,-3,1) %funx为函数为函数funx的句炳的句炳n观察图形得到出在观察图形得到出在x=0、-1.2、-2.6附近有根附近有根(3)调用调用fzero函数分别求出其根函数分别求出其根n fzero(funx,0)n fzero(funx,-1.

29、2)n fzero(funx,-2.6)q上述问题还可这样求解上述问题还可这样求解(1)定义内联(匿名)函数定义内联(匿名)函数nff=(x)abs(x.*sin(x)-exp(x)-1;(2)画图确定根的位置画图确定根的位置n fplot(ff,-3,1)(3)调用调用fzero函数分别求出其根函数分别求出其根n fzero(ff,-2.5)n fzero(ff,-1.5)n fzero(ff,0)非线性方程组求解q求解方程组求解方程组 初始值为初始值为-5,5qMATLAB的优化工具箱(的优化工具箱(Optimization Toolbox) q对于非线性方程组对于非线性方程组F(x)=0

30、,求解命令为:求解命令为:qX = fsolve(fname, X0, options)q解解q(1)定义函数文件定义函数文件myfun.m function f = myFun(x) f(1) = 2*x(1) - x(2) - exp(-x(1); f(2)= -x(1) + 2*x(2) - exp(-x(2);q(2) 提交给求解方程的函数提交给求解方程的函数 -5,-5 %初始值初始值 op=optimset(display,off); %修改参数选项修改参数选项,中间结果不显示中间结果不显示 x=fsolve(myfun, x0, op) x = 0.5671 0.56711212

31、1222xxxxexxe-=-+=四、微分方程求解 q求解微分方程:求解微分方程:qMATLAB提供了多个求常微分方程数值解的函数提供了多个求常微分方程数值解的函数,格式为格式为:qt,y=solver(fname,tspan,y0)qsolver为求常微分方程数值解的函数为求常微分方程数值解的函数qt和和y分别给出时间向量和相应的状态向量。分别给出时间向量和相应的状态向量。qfname是定义是定义f(t,y)的函数文件名,该函数文件必须返回一个列向量。的函数文件名,该函数文件必须返回一个列向量。qtspan为求解区间形式为为求解区间形式为t0,tf,y0是初始状态列向量。是初始状态列向量。q

32、解:解:q建立函数文件建立函数文件funt.mfunction yp=funt(t,y)yp=(y2-t-2)/4/(t+1);q求解微分方程求解微分方程t,y=ode23(funt,0,10,2); %求数值解求数值解求解函数采用方法适用场合ode232-3阶龙格-库塔算法,低精度非刚性ode454-5阶龙格-库塔算法,中精度非刚性ode113Adms算法,精度可达到10-310-6非刚性,计算速度比ode45快ode23t梯形算法适度刚性22, 0104(1)(0)2ytytty- -=+=五、Mathematica方程的求解q方程的表示方程的表示n方程中的等号(方程中的等号(=)应用逻辑

33、等号()应用逻辑等号(= =)n根的表示:逻辑量、转换规则根的表示:逻辑量、转换规则q多项式方程求解多项式方程求解nSolve方程或方程组方程或方程组,变量列表变量列表nNSolve方程或方程组方程或方程组,变量列表变量列表q注:注:nSolve主要是主要是处理多项式方程处理多项式方程,尽可能给出精确解,若,尽可能给出精确解,若给不出显示公式解,给出隐式公式解。给不出显示公式解,给出隐式公式解。n例:求方程例:求方程x5-x+11=0的根。的根。nNSolve求出的是求出的是近似数值解近似数值解(可求任意多项式方程可求任意多项式方程)q方程组的表示:方程组的表示:n方式方式1:lhs1= =r

34、hs1, lhs2= =rhs2n方式方式2:lhs1= =rhs1 & lhs2= =rhs2 &n方式方式3:lhs1,lhs2,= = rhs1,rhs2.Mathematica方程的求解q一般方程的求解一般方程的求解nFindRoot方程方程,变量变量,初值初值nFindRoot方程方程,变量变量,min,maxq在初值附近或区间内找方程的根,一次只在初值附近或区间内找方程的根,一次只能算出一个能算出一个近似数值解近似数值解。q求求y=|x*sin(x)-ex|-1在区间在区间-3,1内的根。内的根。最优化问题求解主要内容一、无约束问题求解(求极值、求最值)一、无约束问

35、题求解(求极值、求最值)n模型模型: minxf(x)n求一组求一组x( x=x1,x2,xnT)使得目标函数使得目标函数f(x)为最小为最小二、有约束问题求解二、有约束问题求解n模型:模型:n求一组求一组x ( x=x1,x2,xnT)使得目标函数使得目标函数f(x)为最小为最小,且且x满足约束条件满足约束条件G(x)0.n约束条件可表示为:约束条件可表示为:线性不等式约束:线性不等式约束:Ax b线性等式约束:线性等式约束:Aeqx =beq非线性不等式约束:非线性不等式约束:Cx b非线性等式约束:非线性等式约束: Ceqx =0X的上界和下界:的上界和下界:Lbnd x Ubng 三、

36、线性规划问题求解三、线性规划问题求解n线性约束条件下线性目标函数的极值问题线性约束条件下线性目标函数的极值问题( ) 0min( )x st G xf x一、无约束问题求解(求极值、最值)q若函数可导若函数可导,换转为求导数为零的点。换转为求导数为零的点。q例例:求求y=x*sin(x)-ex在区间在区间-3,2内的极值点。内的极值点。q解解: fplot(x*sin(x)-exp(x),-3,2) %图形显示在图形显示在x=-2附近有一极大值点附近有一极大值点 syms x f=x*sin(x)-exp(x); g=diff(f) %求导函数求导函数 sin(x)+x*cos(x)-exp(

37、x) fzero(sin(x)+x*cos(x)-exp(x),-2)结果:结果: -2.0745故在故在x-2.0745处函数取得极大值。处函数取得极大值。q上述问题也求解如下:上述问题也求解如下:n syms xn f=x*sin(x)-exp(x);n fplot(char(f),-3,2); %将符号表达式转换为字符串将符号表达式转换为字符串n x0=fzero(char(diff(f),-2);n y0=subs(f,x,x0); %将符号表达式将符号表达式f中的中的x替换为替换为x0,求得极大值求得极大值. nx0,y0 -2.0745,1.6912 qMatlab专门提供了求极小

38、值的函数,格式为:专门提供了求极小值的函数,格式为:(1) x,fval=fminbnd(fname,x1,x2,option)n求一元函数在区间求一元函数在区间(x1,x2)中的极小值点中的极小值点x和极小值。和极小值。(2) x,fval=fminsearch(fname,x0,option)n用单纯形法求多元函数在用单纯形法求多元函数在x0附近的极小值点附近的极小值点x和极小值和极小值.(3) x,fval=fminunc(fname,x0,option)n用拟牛顿法求多元函数在用拟牛顿法求多元函数在x0附近的极小值点附近的极小值点x和极小值和极小值.q例例:求求y=x*sin(x)-e

39、x在区间在区间-3,2内的极值点。内的极值点。n(1)建立函数文件建立函数文件myfin.m,命令如下:命令如下: function y=myfin(x) y=-(x.*sin(x)-exp(x); n(2)调用调用fminbnd函数求极大值函数求极大值,命令如下:命令如下: x,fval=fminbnd(myfin,-3,-1.5)n结果:结果:x = -2.0745,fval = -1.6912ny=x*sin(x)-ex在在x = -2.0745处取得极大值处取得极大值1.6912。q等价于等价于nf=(x)-(x*sin(x)-exp(x);nx,fval=fminbnd(f,-3,-1.5)二、有约束问题求解q模型:模型:q求一组求一组x ( x=x1,x2,xnT)使得目标函数使得目标函数f(x)为最小为最小,且且x满足约束条件满足约束条件G(x)0.q约束条件可表示为:约束条件可表示为:n线性不等式约束:线性

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论