數(shù)學(xué)實(shí)驗(yàn)課件:迭代與分形_第1頁(yè)
數(shù)學(xué)實(shí)驗(yàn)課件:迭代與分形_第2頁(yè)
數(shù)學(xué)實(shí)驗(yàn)課件:迭代與分形_第3頁(yè)
數(shù)學(xué)實(shí)驗(yàn)課件:迭代與分形_第4頁(yè)
數(shù)學(xué)實(shí)驗(yàn)課件:迭代與分形_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

迭代與分形

在我們所處的世界里,存在著許多極不規(guī)則的復(fù)雜現(xiàn)象,比如:彎彎曲曲的海岸線(xiàn)、變化的云朵、宇宙中星系的分布、金融市場(chǎng)上價(jià)格的起伏圖等,為了獲得解釋這些極端復(fù)雜現(xiàn)象的數(shù)學(xué)模型,我們需要認(rèn)識(shí)其中蘊(yùn)涵的特性,構(gòu)造出相應(yīng)的數(shù)學(xué)規(guī)則.曼德?tīng)柌剂_特(Mandelbrot)在研究英國(guó)的海岸線(xiàn)形狀等問(wèn)題時(shí),總結(jié)出自然界中很多現(xiàn)象從標(biāo)度變換角度表現(xiàn)出對(duì)稱(chēng)性.

Mandelbrot將這類(lèi)幾何形體稱(chēng)為分形(fractal),意思就是不規(guī)則的、分?jǐn)?shù)的、支離破碎的,并對(duì)它們進(jìn)行了系統(tǒng)的研究,創(chuàng)立了分形幾何這一新的數(shù)學(xué)分支.Mandelbrot認(rèn)為海岸、山巒、云彩和其他很多自然現(xiàn)象都具有分形的特性,因此可以說(shuō):分形是大自然的幾何學(xué).

分形幾何體一般來(lái)說(shuō)都具有無(wú)限精細(xì)的自相似的層次結(jié)構(gòu),即局部與整體的相似性,圖形的每一個(gè)局部都可以被看作是整體圖形的一個(gè)縮小的復(fù)本.

早在19世紀(jì)就已經(jīng)出現(xiàn)了一些具有自相似特性的分形圖形,比如:瑞典數(shù)學(xué)家科赫(vonKoch)設(shè)計(jì)的類(lèi)似雪花和島嶼邊緣的一類(lèi)曲線(xiàn),即Koch曲線(xiàn)(見(jiàn)圖14-1);圖14-1Koch曲線(xiàn)

英國(guó)植物學(xué)家布朗通過(guò)觀察懸浮在水中的花粉的運(yùn)動(dòng)軌跡,提出來(lái)的布朗運(yùn)動(dòng)軌跡(見(jiàn)圖14-2).

分形幾何把自然形態(tài)看作是具有無(wú)限嵌套的層次結(jié)構(gòu),并且在不同尺度下保持某種相似的屬性,于是,簡(jiǎn)單的迭代過(guò)程,就是描述復(fù)雜的自然形態(tài)的有效方法.圖14-2布朗運(yùn)動(dòng)軌跡

本章簡(jiǎn)單介紹迭代和分形的基礎(chǔ)知識(shí),利用MATLAB繪制Koch曲線(xiàn)、Sierpinski地毯、Mandelbrot集和分形樹(shù)枝,通過(guò)觀察這些圖形來(lái)了解數(shù)學(xué)之美.CONTENTS14.1迭代14.2.分形10.3MATLAB求解14.1迭代

迭代法是常用的一種數(shù)學(xué)方法,就是將一種規(guī)則反復(fù)作用在某個(gè)對(duì)象上,它可以產(chǎn)生非常復(fù)雜的行為.我們這里介紹圖形迭代和函數(shù)迭代兩種方式.

(1)圖形迭代.給定初始圖形F0,以及一個(gè)替換規(guī)則R,

將R反復(fù)作用在初始圖形F0上,產(chǎn)生一個(gè)圖形序列:

R(F0)=F1,R(F1)=F2,R(F2)=F3,…

科赫(Koch)曲線(xiàn)是通過(guò)圖形迭代的方式產(chǎn)生的,其迭代規(guī)則是:對(duì)一條線(xiàn)段,首先將它分成三等份,然后將中間的一份替換成以此為底邊的等邊三角形的另外兩條邊.

無(wú)限次迭代下去,最終形成的曲線(xiàn)就是Koch曲線(xiàn)(見(jiàn)圖14-3).a)迭代1次c)迭代5次b)迭代2次圖14-3Koch曲線(xiàn)

Sierpinski地毯也是通過(guò)圖形迭代的方式產(chǎn)生的,其迭代規(guī)則是:對(duì)一個(gè)正方形,首先將它分成九個(gè)小正方形,然后挖掉中間的一個(gè).

無(wú)限次迭代下去,最終形成的圖形就是Sierpinski地毯(見(jiàn)圖14-4).a)迭代1次c)迭代4次b)迭代2次圖14-4Sierpinski地毯

計(jì)算Sierpinski地毯的面積:

初始面積為1;迭代一次后減少的面積為

,剩余

;以后每次迭代,面積減少

,剩余面積是原來(lái)的

倍;故經(jīng)過(guò)

n

次迭代后,剩余面積為

.

故Sierpinski地毯面積趨于零..

(2)函數(shù)迭代

給定初始值x0,以及一個(gè)函數(shù)f(x),將f(x)反復(fù)作用在初始值x0上,產(chǎn)生一個(gè)數(shù)列:

f(x0)=x1,f(x1)=x2,f(x2)=x3,…稱(chēng)為迭代序列.

設(shè)迭代關(guān)系為zk+1=zk2+c,其中zk(k=0,1,2,...)、c為復(fù)數(shù).給定初值z(mì)0和c可得復(fù)數(shù)迭代列{zk},(k=0,1,2,...).若固定,可得Julia集;固定z0,可得Mandelbrot集.14.2分形

分形幾何的概念是美籍法國(guó)數(shù)學(xué)家曼德?tīng)柌剂_特(Mandelbrot)于1975年首先提出的,但最早的工作可追朔到1875年,德國(guó)數(shù)學(xué)家維爾斯特拉斯(Weierestrass)構(gòu)造了處處連續(xù)但處處不可微的函數(shù),集合論創(chuàng)始人康托爾(Cantor,德國(guó)數(shù)學(xué)家)構(gòu)造了有許多奇異性質(zhì)的康托爾三分集.

1890年,意大利數(shù)學(xué)家皮亞諾(Peano)構(gòu)造了填充空間的曲線(xiàn).1915年,波蘭數(shù)學(xué)家謝爾賓斯基(Sierpinski)設(shè)計(jì)了像地毯和海綿一樣的幾何圖形.這些都是為解決分析與拓?fù)鋵W(xué)中的問(wèn)題而提出的反例,但它們正是分形幾何思想的源泉.

分形樹(shù)枝是為了模擬自然界中樹(shù)木花草的形狀,其迭代方式與前面兩個(gè)問(wèn)題不同,主要原理是設(shè)定基本的繪圖規(guī)則,然后讓計(jì)算機(jī)根據(jù)這些規(guī)則進(jìn)行反復(fù)迭代,最終生成分形圖.

下面介紹一種迭代規(guī)則:對(duì)一條線(xiàn)段進(jìn)行三等分,得到內(nèi)部?jī)蓚€(gè)分點(diǎn),在這兩個(gè)分點(diǎn)處(以分點(diǎn)為起點(diǎn))分別以旋轉(zhuǎn)角

左右生長(zhǎng)出新線(xiàn)段(新線(xiàn)段長(zhǎng)度可以為等分后線(xiàn)段的長(zhǎng)度).

無(wú)限次迭代下去,最終形成的圖形就像一棵樹(shù).14.3MATLAB求解例14.1

利用MATLAB繪制科赫(Koch)曲線(xiàn).解

以下的代碼是繪制迭代k次的Koch曲線(xiàn)圖形的函數(shù):functionplotkoch(k)%顯示迭代k次后的Koch曲線(xiàn)圖p=[00;100];%存放結(jié)點(diǎn)坐標(biāo),每行一個(gè)點(diǎn),初始值為兩結(jié)點(diǎn)的坐標(biāo)n=1;%存放線(xiàn)段的數(shù)量,初始值為1A=[cos(pi/3)-sin(pi/3);sin(pi/3)cos(pi/3)];%旋轉(zhuǎn)矩陣,用于計(jì)算新的結(jié)點(diǎn)fors=1:k%實(shí)現(xiàn)迭代過(guò)程,計(jì)算所有的結(jié)點(diǎn)的坐標(biāo)j=0;%以下根據(jù)線(xiàn)段兩個(gè)結(jié)點(diǎn)的坐標(biāo),計(jì)算迭代后它們之間增加的三個(gè)%結(jié)點(diǎn)的坐標(biāo),并且將這些點(diǎn)的坐標(biāo)按次序存暫時(shí)放到r中fori=1:n%每條邊計(jì)算一次

q1=p(i,:);%目前線(xiàn)段的起點(diǎn)坐標(biāo)q2=p(i+1,:);%目前線(xiàn)段的終點(diǎn)坐標(biāo)d=(q2-q1)/3;j=j+1;r(j,:)=q1;%原起點(diǎn)存入rj=j+1;r(j,:)=q1+d;%新1點(diǎn)存入rj=j+1;r(j,:)=q1+d+d*A';%新2點(diǎn)存入rj=j+1;r(j,:)=q1+2*d;%新3點(diǎn)存入rend%原終點(diǎn)作為下條線(xiàn)段的起點(diǎn),在迭代下條線(xiàn)段時(shí)存入rn=4*n;%全部線(xiàn)段迭代一次后,線(xiàn)段數(shù)量乘4

clearp%清空p,注意:最后一個(gè)終點(diǎn)q2不在r中p=[r;q2];%重新裝載本次迭代后的全部結(jié)點(diǎn)endplot(p(:,1);p(:,2))%顯示各結(jié)點(diǎn)的連線(xiàn)圖axisequal%各坐標(biāo)軸同比例

在命令行窗口調(diào)用plotkoch(1),圖像為圖14-3a;調(diào)用plotkoch(2),圖像為圖14-3b;調(diào)用plotkoch(5),圖像為圖14-3c.例14.2利用MATLAB繪制謝爾賓斯基(Sierpinski)地毯.解以下的代碼是繪制迭代n次的Sierpinski地毯圖形的函數(shù):functionplotSierpinski(x,y,d,n)%x為正方形的頂點(diǎn)的橫坐標(biāo),可取0(一個(gè)頂點(diǎn)代表一個(gè)小正方形)%y為正方形的頂點(diǎn)的縱坐標(biāo),可取0%d為初始正方形邊長(zhǎng),可取1%n為迭代次數(shù),可取4forp=1:n;%實(shí)現(xiàn)迭代過(guò)程,計(jì)算所有的頂點(diǎn)坐標(biāo)a1=[];%保存迭代后所有頂點(diǎn)的x坐標(biāo)b1=[];%保存迭代后所有頂點(diǎn)的y坐標(biāo)%根據(jù)小正方形的頂點(diǎn)坐標(biāo),%計(jì)算迭代后形成的8個(gè)新的小正方形的頂點(diǎn)坐標(biāo)forq=1:length(x);%每個(gè)小正方形計(jì)算一次x1=x(q)+[0,d/3,2*d/3,0,2*d/3,0,d/3,2*d/3];%新的x坐標(biāo)y1=y(q)+[0,0,0,d/3,d/3,2*d/3,2*d/3,2*d/3];%新的y坐標(biāo)

a1=[a1,x1];%所有頂點(diǎn)x坐標(biāo)存入a1b1=[b1,y1];%所有頂點(diǎn)y坐標(biāo)存入b1endd=d/3;%迭代一次,邊長(zhǎng)縮小x=a1;%全部的x坐標(biāo)重新放入xy=b1;%全部的y坐標(biāo)重新放入yendholdon%在同一個(gè)圖形窗口顯示forq=1:length(x);%用藍(lán)色注滿(mǎn)多邊形區(qū)域fill(x(q)+[0,d,d,0,0],y(q)+[0,0,d,d,0],'b')endholdoffaxisoff%不要坐標(biāo)軸axisequal%各坐標(biāo)軸同比例%不顯示這些正方形的邊界set(findobj(gcf,'type','patch'),'edgecolor','none')

在命令行窗口調(diào)用plotSierpinski(0,0,1,1),圖像為圖14-4a;調(diào)用plotSierpinski(0,0,1,2),圖像為圖14-4b;調(diào)用plotSierpinski(0,0,1,4),圖像為圖14-4c.例14.3繪制分形——Mandelbrot集.解首先編寫(xiě)函數(shù)文件Mandelbrot.m.MATLAB代碼如下:functionMandelbrot(a,b,M,n,cx,cy,zm)%b*a為圖像網(wǎng)格,M為閾值,n是迭代次數(shù),(cx,cy)是圖像中心,zm是放縮倍數(shù)delta=2/zm;xl=cx-delta;xr=cx+delta;yd=cy-delta;yu=cy+delta;x=linspace(xl,xr,a);y=linspace(yd,yu,b);[X,Y]=meshgrid(x,y);Z=X+Y*i;P=zeros(b,a);C=Z;fork=1:nZ=Z.^2+C;P(abs(Z)>M)=k;Z(abs(Z)>M)=0;C(abs(Z)>M)=0;endimshow(P,[])在命令行窗口調(diào)用Mandelbrot(500,500,4,200,0,0,1),可得圖形如圖14-5所示.圖14-5Mandelbrot集例14.4利用MATLAB繪制分形樹(shù)枝.解首先編寫(xiě)函數(shù)文件plottree.m.MATLAB代碼如下:functionplottree(p,theta,n)m=2;plot(p(:,1),p(:,2),'k')holdonA=[cos(theta)sin(theta);-sin(theta)cos(theta)];%變換矩陣fork=1:ni=1;forj=1:2:mp1=p(j,:);p2=p(j+1,:);d=(p2-p1)/3;w(i,:)=p1;i=i+1;q1=p1+d;w(i,:)=q1;i=i+1;w(i,:)=q1;i=i+1;q2=q1+d*A;w(i,:)=q2;i=i+1;w(i,:)=q1;i=i+1;q3=p1+2*d;w(i,:)=q3;i=i+1;w(i,:)=q3;i=i+1;q4=q3+d*A';w(i,:)=q4;i=i+1;w(i,:)=q3;i=i+1;w(i,:)=p2;i=i+1;point=[q1;q2];plot(point(:,1),point(:,2),'k');point=[q3;q4];plot(point(:,1),

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論