實驗四-多元函數(shù)的極值課件_第1頁
實驗四-多元函數(shù)的極值課件_第2頁
實驗四-多元函數(shù)的極值課件_第3頁
實驗四-多元函數(shù)的極值課件_第4頁
實驗四-多元函數(shù)的極值課件_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

實驗4多元函數(shù)的極值實驗4多元函數(shù)的極值1實驗?zāi)康?/p>

了解多元函數(shù)偏導(dǎo)數(shù)的求法了解多元函數(shù)極值的求法了解多元函數(shù)條件極值的求法了解多元函數(shù)插值的方法學(xué)習(xí)、掌握MATLAB軟件有關(guān)的命令實驗?zāi)康?實驗內(nèi)容1、求函數(shù)的極值點和極值。2、求函數(shù)在條件下的極值。3、已知曲面上一些點(2,2,80),(3,2,82),(4,2,84)(0,3,79),(2,3,61),(3,3,65),(0,4,84),(1,4,84),(4,4,86),將這些點用二元函數(shù)插值的方法畫出完整的曲面。4、求圖像的極值點,并通過這些極值點對圖像進(jìn)行插值。實驗內(nèi)容1、求函數(shù)3實驗準(zhǔn)備1、計算多元函數(shù)的極值對于多元函數(shù)的極值問題,根據(jù)多元函數(shù)極值的必要條件和充分條件,可分為以下幾個步驟:(2)求解正規(guī)方程得到駐點;(1)定義多元函數(shù);實驗準(zhǔn)備1、計算多元函數(shù)的極值(2)求解正規(guī)方程4實驗四-多元函數(shù)的極值課件5

2.計算二元函數(shù)在區(qū)域D內(nèi)的最大值和最小值

設(shè)函數(shù)z=f(x,y)在有界區(qū)域D上連續(xù),則f(x,y)在D上必定有最大值和最小值。求f(x,y)在D上的最大值和最小值的一般步驟為:計算f(x,y)在D內(nèi)所有駐點處的函數(shù)值;b)計算f(x,y)在D的各個邊界線上的最大值和最小值;c)將上述各函數(shù)值進(jìn)行比較,最終確定出在D內(nèi)的最大值和最小值。2.計算二元函數(shù)在區(qū)域D內(nèi)的最大值和最小值6求函數(shù)偏導(dǎo)數(shù)的MATLAB命令

MATLAB中主要用diff求函數(shù)的偏導(dǎo)數(shù)。diff(f,x,n)求函數(shù)f關(guān)于自變量x的n階導(dǎo)數(shù)。實驗方法與步驟練習(xí)1、求函數(shù)的極值點和極值。MATLAB中主要用diff求函數(shù)的偏導(dǎo)數(shù)。diff7練習(xí)1、求函數(shù)的極值點和極值。clear;symsxyzxzy;z=x^4-8*x*y+2*y^2-3;zx=diff(z,x);zy=diff(z,y);首先用diff命令求z關(guān)于x,y的偏導(dǎo)數(shù)Ex4_1結(jié)果為zx=4*x^3-8*y,zy=-8*x+4*y練習(xí)1、求函數(shù)8其次,求解正規(guī)方程,得到駐點的坐標(biāo)一般方程組的符號解用solve命令,當(dāng)方程組不存在符號解時,solve將給出數(shù)值解。求解正規(guī)方程的matlab代碼為:clear;[x1,y1]=solve('4*x^3-8*y=0','-8*x+4*y=0','x','y');Ex4_2得到三個駐點,分別為(-2,-4),(0,0),(2,4)其次,求解正規(guī)方程,得到駐點的坐標(biāo)一般方程組的符號解用sol9下面再求判別式中的二階偏導(dǎo)數(shù):clear;symsxy;z=x^4-8*x*y+2*y^2-3;A=diff(z,x,2)B=diff(diff(z,x),y)C=diff(z,y,2)運行結(jié)果為:A=12*x^2B=-8C=4Ex4_3下面再求判別式中的二階偏導(dǎo)數(shù):clear;運行結(jié)果為:A=110最后,對于點(-2,-4),(0,0)和(2,4)分別判別是否是極值點Ex4_4clear;N=input('pleaseinputpointsnumber,N=');fori=1:Nx=input('x=');y=input('y=');A=12*x^2;B=-8;C=4;p=A*C-B*B;最后,對于點(-2,-4),(0,0)和(2,4)分別判別是11

ifp==0disp('無法判別')elseifand(p>0,A>0)disp('極小值點,極小值是')fmin=x^4-8*x*y+2*y^2-3elseifand(p>0,A<0)disp('極大值點,極大值是')fmax=x^4-8*x*y+2*y^2-3elseif(p<0)disp('不是極值點')endend由判別法可知(-2,-4)和(2,4)都是函數(shù)的極小值點,而點(0,0)不是極值點。由判別法可知(-2,-4)和(2,4)都是函數(shù)的極小12練習(xí)2、求函數(shù)在條件下的極大值。構(gòu)造Lagrange函數(shù)求Lagrange函數(shù)的極值。先求關(guān)于的一階偏導(dǎo)數(shù),相應(yīng)的matlab代碼為Ex4_5練習(xí)2、求函數(shù)在條件13clear;symsxyk;L=x*y+k*(x+y-1);Lx=diff(L,x)Ly=diff(L,y)Lk=diff(L,k)運行得到Lx=y+kLy=x+kLk=x+y-1解正規(guī)方程,clear;[x1,y1,k1]=solve(‘y+k=0’,’x+k=0’,’x+y-1=0’,’x’,’y’,’k’);

所以,極大值點為(1/2,1/2),極大值點為1/4clear;運行得到Lx=y+k解正規(guī)方程,clear;所14練習(xí)3拋物面被平面截成了一個橢圓,求這個橢圓到原點的最長距離與最短距離。

在條件及下的最大值和最小值。構(gòu)造Lagrange函數(shù)求Lagrange函數(shù)的極值。先求關(guān)于的一階偏導(dǎo)數(shù),相應(yīng)的matlab代碼為這個問題實際上就是求函數(shù)Ex4_6練習(xí)3拋物面被平15clear;symsxyzuv;l=x^2+y^2+z^2+u*(x^2+y^2-z)+v*(x+y+z-1);diff(l,x)diff(l,y)diff(l,z)diff(l,u)diff(l,v)再解正規(guī)方程得Ex4_7clear;得Ex4_716即得Lagrange函數(shù)的駐點,所求的條件極值點必在其中得到。由于所求問題存在最大值與最小值(因為函數(shù)f在有界閉集上連續(xù),從而存在最大值與最小值),故由可得橢圓到原點的最長距離為,最短距離為。得即得Lagrange函數(shù)的駐點,所求的條件極值點必在其中得到17練習(xí)4已知曲面上一些點(2,2,80),(3,2,82),(4,2,84)(0,3,79),(2,3,61),(3,3,65),(0,4,84),(1,4,84),(4,4,86),將這些點用二元函數(shù)插值的方法畫出完整的曲面。首先看這些原始數(shù)據(jù)的柄圖數(shù)據(jù)是殘缺不全的,需要用插值的方法畫出完整的曲面練習(xí)4已知曲面上一些點(2,2,80),(3,2,818clear;x=[2,3,4,0,2,3,0,1,4];y=[2,2,2,3,3,3,4,4,4];z=[80,82,84,79,61,65,84,84,86];stem3(x,y,z);%畫柄圖命令title('Rawdata');xlabel('x'),ylabel('y'),zlabel('z')Ex4_8畫柄圖的MATLAB命令clear;Ex4_8畫柄圖的MATLAB命令19插值的MATLAB命令interp1(x,y,xi,’method’)或interp1(x,y,xi)是一維插值函數(shù),其中x,y是已存在的數(shù)據(jù),xi是要插入其中的數(shù)據(jù)點。method是:nearnest(最近點插值)、linear(線性插值)、cubic(三次分段插值)、spline(三次樣條插值),缺省是linear。插值的MATLAB命令interp1(x,y,xi,’met20interp2(x,y,z,xi,yi,’method’)或interp1(x,y,z,xi,yi)是二維插值函數(shù),其中x,y是已有二維數(shù)據(jù),z是由x,y決定的數(shù)值,xi,yi是已知的一對數(shù)值,通過插值來找到相應(yīng)的zi值。參數(shù)method有:nearest、bilinear、bicubic、spline。griddata(x,y,z,xi,yi,’method’)或griddata(x,y,z,xi,yi)也是二維插值函數(shù),與interp2相似,不同之處在于:Interp2嚴(yán)格要求x,y單調(diào);而griddate可以處理不規(guī)則數(shù)據(jù)interp2(x,y,z,xi,yi,’method’)21

對上面數(shù)據(jù)用插值的方法畫出完整的曲面,相應(yīng)的matlab程序代碼如下:xi=0:0.2:3;yi=2:0.2:4;%選定x,y的范圍[X,Y]=meshgrid(xi,yi);%產(chǎn)生網(wǎng)格向量X,YZ=griddata(x,y,z,X,Y,'cubic');%'cubic'采用三角形三次插值mesh(X,Y,Z);title('Griddata');xlabel('x'),ylabel('y'),zlabel('z')Ex4_9對上面數(shù)據(jù)用插值的方法畫出完整的曲面,相應(yīng)的22實驗四-多元函數(shù)的極值課件23練習(xí)5求圖像的極值點,并通過這些極值點對圖像進(jìn)行插值。B=imregionalmax(A),求A的所有局部極大值點,B是二值圖像B=imregionalmin(A),求A的所有局部極小值點,B是二值圖像問題:為什么要求圖像的極值點?Ex4_12練習(xí)5求圖像的極值點,并通過這些極值點對圖像進(jìn)行插值。24clearall;I=imread('horseriding.bmp');I=double(I);[row,col]=size(I);t1=clock;%*****************************************Imax=imregionalmax(I);Imin=imregionalmin(I);Imax=double(Imax);Imin=double(Imin);clearall;25[Nmax,xmax,ymax,zmax]=extremanum(I,Imax);[Nmin,xmin,ymin,zmin]=extremanum(I,Imin);%**********************************************xr=1:row;yr=1:col;[x1,y1]=meshgrid(xr,yr);u=griddata(xmax',ymax',zmax',x1',y1','cubic');v=griddata(xmin',ymin',zmin',x1',y1','cubic');

[Nmax,xmax,ymax,zmax]=extreman26%-------------------display----------------------figure(1);subplot(221);imshow(uint8(I));axisoffsubplot(222);imshow(uint8(u));axisoffsubplot(223);imshow(uint8(v));axisoff

%********************************************t=etime(clock,t1)%-------------------display---27function[Num,x,y,z]=extremanum(I,Ima)width=size(Ima,2);height=size(Ima,1);k=1;forh=1:heightforw=1:width

ifIma(h,w)==1x(k)=h;y(k)=w;z(k)=I(h,w);k=k+1;endendendNum=k-1;function[Num,x,y,z]=extreman28實驗四-多元函數(shù)的極值課件29動畫效果動畫生成的步驟創(chuàng)建幀矩陣—————moviein對動畫中的每一幀生成圖形,并把它們放到幀矩陣中————getframe從幀矩陣中回放動畫動畫效果動畫生成的步驟30moviein、getframe、movie指令x=-8:0.5:8;[XX,YY]=meshgrid(x);r=sqrt(XX.^2+YY.^2)+eps;Z=sin(r)./r;surf(Z);%畫出禎theAxes=axis;%保存坐標(biāo)值,使得所有幀都在同一坐標(biāo)系中moviein、getframe、movie指令31fmat=moviein(20);%創(chuàng)建動畫矩陣,保存20禎forj=1:20;%循環(huán)創(chuàng)建動畫數(shù)據(jù)surf(sin(2*pi*j/20)*Z,Z)%畫出每一步的曲面axis(theAxes)%使用相同的坐標(biāo)系fmat(:,j)=getframe;%拷貝禎到矩陣fmat中endmovie(fmat,10)%演示動畫10次fmat=moviein(20);%創(chuàng)建動畫矩陣,保存2032數(shù)學(xué)實驗的大門剛剛打開,里面的世界很精彩,愿你在這個五彩繽紛的世界里獲得知識、獲得愉悅、獲得對數(shù)學(xué)學(xué)科的新的認(rèn)識!數(shù)學(xué)實驗的大門剛剛打開,里面的世界很精彩,愿你在這個五彩繽紛33上機(jī)練習(xí)求的極值,并對圖形進(jìn)行觀察。求出球面上與點(3,1,-1)距離最近和最遠(yuǎn)點。上機(jī)練習(xí)求的極343.在一丘陵地帶測量高程,x和y方向每隔100米測一個點,得高程見表4-2,試擬合一曲面,確定合適的模型,并由此找出最高點和該點的高程。表4-2高程數(shù)據(jù)yx1002003004001002003004006366986806626977126746266246305985524784784123343.在一丘陵地帶測量高程,x和y方向每隔100米測一個點,35實驗4多元函數(shù)的極值實驗4多元函數(shù)的極值36實驗?zāi)康?/p>

了解多元函數(shù)偏導(dǎo)數(shù)的求法了解多元函數(shù)極值的求法了解多元函數(shù)條件極值的求法了解多元函數(shù)插值的方法學(xué)習(xí)、掌握MATLAB軟件有關(guān)的命令實驗?zāi)康?7實驗內(nèi)容1、求函數(shù)的極值點和極值。2、求函數(shù)在條件下的極值。3、已知曲面上一些點(2,2,80),(3,2,82),(4,2,84)(0,3,79),(2,3,61),(3,3,65),(0,4,84),(1,4,84),(4,4,86),將這些點用二元函數(shù)插值的方法畫出完整的曲面。4、求圖像的極值點,并通過這些極值點對圖像進(jìn)行插值。實驗內(nèi)容1、求函數(shù)38實驗準(zhǔn)備1、計算多元函數(shù)的極值對于多元函數(shù)的極值問題,根據(jù)多元函數(shù)極值的必要條件和充分條件,可分為以下幾個步驟:(2)求解正規(guī)方程得到駐點;(1)定義多元函數(shù);實驗準(zhǔn)備1、計算多元函數(shù)的極值(2)求解正規(guī)方程39實驗四-多元函數(shù)的極值課件40

2.計算二元函數(shù)在區(qū)域D內(nèi)的最大值和最小值

設(shè)函數(shù)z=f(x,y)在有界區(qū)域D上連續(xù),則f(x,y)在D上必定有最大值和最小值。求f(x,y)在D上的最大值和最小值的一般步驟為:計算f(x,y)在D內(nèi)所有駐點處的函數(shù)值;b)計算f(x,y)在D的各個邊界線上的最大值和最小值;c)將上述各函數(shù)值進(jìn)行比較,最終確定出在D內(nèi)的最大值和最小值。2.計算二元函數(shù)在區(qū)域D內(nèi)的最大值和最小值41求函數(shù)偏導(dǎo)數(shù)的MATLAB命令

MATLAB中主要用diff求函數(shù)的偏導(dǎo)數(shù)。diff(f,x,n)求函數(shù)f關(guān)于自變量x的n階導(dǎo)數(shù)。實驗方法與步驟練習(xí)1、求函數(shù)的極值點和極值。MATLAB中主要用diff求函數(shù)的偏導(dǎo)數(shù)。diff42練習(xí)1、求函數(shù)的極值點和極值。clear;symsxyzxzy;z=x^4-8*x*y+2*y^2-3;zx=diff(z,x);zy=diff(z,y);首先用diff命令求z關(guān)于x,y的偏導(dǎo)數(shù)Ex4_1結(jié)果為zx=4*x^3-8*y,zy=-8*x+4*y練習(xí)1、求函數(shù)43其次,求解正規(guī)方程,得到駐點的坐標(biāo)一般方程組的符號解用solve命令,當(dāng)方程組不存在符號解時,solve將給出數(shù)值解。求解正規(guī)方程的matlab代碼為:clear;[x1,y1]=solve('4*x^3-8*y=0','-8*x+4*y=0','x','y');Ex4_2得到三個駐點,分別為(-2,-4),(0,0),(2,4)其次,求解正規(guī)方程,得到駐點的坐標(biāo)一般方程組的符號解用sol44下面再求判別式中的二階偏導(dǎo)數(shù):clear;symsxy;z=x^4-8*x*y+2*y^2-3;A=diff(z,x,2)B=diff(diff(z,x),y)C=diff(z,y,2)運行結(jié)果為:A=12*x^2B=-8C=4Ex4_3下面再求判別式中的二階偏導(dǎo)數(shù):clear;運行結(jié)果為:A=145最后,對于點(-2,-4),(0,0)和(2,4)分別判別是否是極值點Ex4_4clear;N=input('pleaseinputpointsnumber,N=');fori=1:Nx=input('x=');y=input('y=');A=12*x^2;B=-8;C=4;p=A*C-B*B;最后,對于點(-2,-4),(0,0)和(2,4)分別判別是46

ifp==0disp('無法判別')elseifand(p>0,A>0)disp('極小值點,極小值是')fmin=x^4-8*x*y+2*y^2-3elseifand(p>0,A<0)disp('極大值點,極大值是')fmax=x^4-8*x*y+2*y^2-3elseif(p<0)disp('不是極值點')endend由判別法可知(-2,-4)和(2,4)都是函數(shù)的極小值點,而點(0,0)不是極值點。由判別法可知(-2,-4)和(2,4)都是函數(shù)的極小47練習(xí)2、求函數(shù)在條件下的極大值。構(gòu)造Lagrange函數(shù)求Lagrange函數(shù)的極值。先求關(guān)于的一階偏導(dǎo)數(shù),相應(yīng)的matlab代碼為Ex4_5練習(xí)2、求函數(shù)在條件48clear;symsxyk;L=x*y+k*(x+y-1);Lx=diff(L,x)Ly=diff(L,y)Lk=diff(L,k)運行得到Lx=y+kLy=x+kLk=x+y-1解正規(guī)方程,clear;[x1,y1,k1]=solve(‘y+k=0’,’x+k=0’,’x+y-1=0’,’x’,’y’,’k’);

所以,極大值點為(1/2,1/2),極大值點為1/4clear;運行得到Lx=y+k解正規(guī)方程,clear;所49練習(xí)3拋物面被平面截成了一個橢圓,求這個橢圓到原點的最長距離與最短距離。

在條件及下的最大值和最小值。構(gòu)造Lagrange函數(shù)求Lagrange函數(shù)的極值。先求關(guān)于的一階偏導(dǎo)數(shù),相應(yīng)的matlab代碼為這個問題實際上就是求函數(shù)Ex4_6練習(xí)3拋物面被平50clear;symsxyzuv;l=x^2+y^2+z^2+u*(x^2+y^2-z)+v*(x+y+z-1);diff(l,x)diff(l,y)diff(l,z)diff(l,u)diff(l,v)再解正規(guī)方程得Ex4_7clear;得Ex4_751即得Lagrange函數(shù)的駐點,所求的條件極值點必在其中得到。由于所求問題存在最大值與最小值(因為函數(shù)f在有界閉集上連續(xù),從而存在最大值與最小值),故由可得橢圓到原點的最長距離為,最短距離為。得即得Lagrange函數(shù)的駐點,所求的條件極值點必在其中得到52練習(xí)4已知曲面上一些點(2,2,80),(3,2,82),(4,2,84)(0,3,79),(2,3,61),(3,3,65),(0,4,84),(1,4,84),(4,4,86),將這些點用二元函數(shù)插值的方法畫出完整的曲面。首先看這些原始數(shù)據(jù)的柄圖數(shù)據(jù)是殘缺不全的,需要用插值的方法畫出完整的曲面練習(xí)4已知曲面上一些點(2,2,80),(3,2,853clear;x=[2,3,4,0,2,3,0,1,4];y=[2,2,2,3,3,3,4,4,4];z=[80,82,84,79,61,65,84,84,86];stem3(x,y,z);%畫柄圖命令title('Rawdata');xlabel('x'),ylabel('y'),zlabel('z')Ex4_8畫柄圖的MATLAB命令clear;Ex4_8畫柄圖的MATLAB命令54插值的MATLAB命令interp1(x,y,xi,’method’)或interp1(x,y,xi)是一維插值函數(shù),其中x,y是已存在的數(shù)據(jù),xi是要插入其中的數(shù)據(jù)點。method是:nearnest(最近點插值)、linear(線性插值)、cubic(三次分段插值)、spline(三次樣條插值),缺省是linear。插值的MATLAB命令interp1(x,y,xi,’met55interp2(x,y,z,xi,yi,’method’)或interp1(x,y,z,xi,yi)是二維插值函數(shù),其中x,y是已有二維數(shù)據(jù),z是由x,y決定的數(shù)值,xi,yi是已知的一對數(shù)值,通過插值來找到相應(yīng)的zi值。參數(shù)method有:nearest、bilinear、bicubic、spline。griddata(x,y,z,xi,yi,’method’)或griddata(x,y,z,xi,yi)也是二維插值函數(shù),與interp2相似,不同之處在于:Interp2嚴(yán)格要求x,y單調(diào);而griddate可以處理不規(guī)則數(shù)據(jù)interp2(x,y,z,xi,yi,’method’)56

對上面數(shù)據(jù)用插值的方法畫出完整的曲面,相應(yīng)的matlab程序代碼如下:xi=0:0.2:3;yi=2:0.2:4;%選定x,y的范圍[X,Y]=meshgrid(xi,yi);%產(chǎn)生網(wǎng)格向量X,YZ=griddata(x,y,z,X,Y,'cubic');%'cubic'采用三角形三次插值mesh(X,Y,Z);title('Griddata');xlabel('x'),ylabel('y'),zlabel('z')Ex4_9對上面數(shù)據(jù)用插值的方法畫出完整的曲面,相應(yīng)的57實驗四-多元函數(shù)的極值課件58練習(xí)5求圖像的極值點,并通過這些極值點對圖像進(jìn)行插值。B=imregionalmax(A),求A的所有局部極大值點,B是二值圖像B=imregionalmin(A),求A的所有局部極小值點,B是二值圖像問題:為什么要求圖像的極值點?Ex4_12練習(xí)5求圖像的極值點,并通過這些極值點對圖像進(jìn)行插值。59clearall;I=imread('horseriding.bmp');I=double(I);[row,col]=size(I);t1=clock;%*****************************************Imax=imregionalmax(I);Imin=imregionalmin(I);Imax=double(Imax);Imin=double(Imin);clearall;60[Nmax,xmax,ymax,zmax]=extremanum(I,Imax);[Nmin,xmin,ymin,zmin]=extremanum(I,Imin);%**********************************************xr=1:row;yr=1:col;[x1,y1]=meshgrid(xr,yr);u=griddata(xmax',ymax',zmax',x1',y1','cubic');v=griddata(xmin',ymin',zmin',x1',y1','cubic');

[Nmax,xmax,ymax,zmax]=extreman61%-------------------display----------------------figure(1);subplot(221);imshow(uint8(I));axisoffsubplot(222);imshow(uint8(u));axisoffsubplot(223);imshow(uint8(v));axisoff

%********************************************t=etime(clock,t1)%-------------------displa

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論