资源描述:
《Koch分形雪花图的面积计算》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Koch分形雪花图的面积计算一、问题叙述分形几何图形最基本的特征是自相似性,这种自相似性是指局部与整体在形态、功能、信息、时间、空间等方面具有统计意义上的相似。在具有自相似性的图形中,图形局部只是整体的缩影,而整体图形则是局部的放大。而本文我们要分析的是Koch分形雪花图,包含以下三个问题:1.描述Koch分形雪花2.证明Koch分形雪花图的边数为3.求Koch分形雪花图的面积(数据),求二、问题分析在分析Koch分形雪花图之前,我们首先介绍Koch分形曲线。Koch分形曲线的绘制原理是:从一条直线段开始,将线段中间的三分之一部分用一个
2、等边三角形的两边代替,形成四条线段的折线,如图2.1所示:图2.1对一条线段进行第一次Koch分形然后,对形成的四条直线段的每一条的中间的三分之一部分用等边三角形的两边代替,形成十六条线段的折线。这种迭代继续进行下去可以形成Koch分形曲线。在迭代过程中,图形中的点数将越来越多,而曲线的最终显示细节的多少将取决于迭代次数和显示系统的分辨率。设P1和P2分别是原始的两个端点,现在需要在直线段的中间依次插入点Q1,Q2,Q3以产生第一次迭代图形。显然,Q1位于P1右端直线段的三分之一处,Q3位于P1点右端直线段的三分之二处,而Q2点的位置可
3、以看作由Q3绕Q1逆时针旋转60度而得到的,故可以处理经过正交变换而得到。算法如下:(1)(2);(3)。在算法中,用正交矩阵A构造正交变换,其功能作用是对向量作旋转,使之成为长度不变的另一向量。在绘制Koch曲线的过程中,取旋转的角度为,则正交矩阵A应取为:1.Koch分形雪花的描述Koch分形雪花的原始图形是等边三角形,它是由三条相等的线段围成的三角形。根据前面介绍的一条线段的Koch分形的原理可知,Koch分形雪花的形成是对等边三角形的三条边进行Koch分形,随着迭代次数的增加,即可形成Koch分形雪花图。2.证明Koch分形雪花
4、图的边数为证:对于一条线段,第1次迭代生成的图形包含4条线段,第2次迭代后生成的共有16条线段,第3次迭代后共有64条线段,以此类推,第n次迭代后共有条线段。所以,第n个图形(即第n-1次迭代)共有条线段。对于该等边三角形,三条线段都进行Koch分形,进行n-1次迭代,生成的雪花图的的直线段数为,也即雪花图边数为:。3.求Koch分形雪花图的面积(1)递推法首先,假设要进行分形的正三角形的边长为a,面积为S,则。设第一个图形为,面积为,则=S;第二个图形为,面积为,则;第三个图形为,面积为,则,以此类推,第n个图形为,面积为,则,依次迭
5、代,将最终表示成的形式为:括号内的和式为等比数列,首项为,公比为,一共(n-1)项,所以==因此,=其中。所以,当迭代次数趋于无穷大时,==(其中,a是正三角形的边长)结论:当时,Koch分形雪花图的面积为初始正三角形面积的1.6倍。(2)格林公式法计算多边形面积法多边形面积算法:令可得区域D的面积计算公式为:,其中是围绕多边形D的逆时针方向的闭合曲线。对进行划分,(j=1,2,…,n)参数方程:==所以,多边形面积公式为:顶点按逆时针排列,且。根据上述原理,我们用MATLAB首先编写Koch分形雪花图形生成程序的编写,然后将生成的所有
6、的点的横纵坐标放在一个数组中(第一列代表点的横坐标,第二列代表点的纵坐标),应用多边形面积算法求解Koch分形雪花的面积。最后验证随着迭代次数的增加,Koch分形雪花的面积是否收敛于1.6S(S代表原始正三角形的面积)。三、MATLAB实验程序及注释程序一:%Koch函数实现一条线段Koch分形function[p1h1]=Koch(a,b,c,f,h)%(a,b),(c,f)表示初始线段的两个端点;h表示迭代次数%p1表示迭代h次后,所有点的坐标;h1表示迭代h次后节点的个数p=[ab;cf];n=2;%与x轴平行的那一条线段顺时针转
7、转60度,其他两条逆时针旋转60度if(a==0)&&(c==10)A=[cos(pi/3)sin(pi/3);-sin(pi/3)cos(pi/3)];elseA=[cos(pi/3)-sin(pi/3);sin(pi/3)cos(pi/3)];endfork=1:h%对指定线段的进行h次迭代d=diff(p)/3;m=4*n-3;q=p(1:n-1,:);p(5:4:m,:)=p(2:n,:);p(2:4:m,:)=q+d;p(3:4:m,:)=q+d+d*A';p(4:4:m,:)=q+2*d;n=m;endp1=p;h1=m;p
8、lot(p(:,1),p(:,2),'b');holdon程序二:%Koch分形雪花图的生成程序function[s,s1,s3,t,h0]=tol(n)%s表示迭代次数趋于无穷大时,Koch分形雪花图的面