《数学实验》报告3 分形实例 电气二班 陆展辉 2 0 1 4 3 0 2 2 2 3 2 5 (5 1 ) 问题描述 1. 对一个等边三角形,每条边按照Koch 曲线的方式进行迭代,产生的分形图称为Koch雪花。编制程序绘制出它的图形,并计算Koch 雪花的面积,以及它的分形维数。 2、对一条横向线段,先将其等分成4段,然后再将第二段向上移,将第三段向下移,再将第四段的相邻端点连接起来,迭代一次后变成图3-21.继续迭代得到的分形图,称为Minkowski香肠。编制程序绘制出它的图形,并计算它的分形维数。 图3-21 Minkowski 香肠一次迭代 问题分析与实验过程 实验过程: 1.仿照Koch曲线代码对三角形的每条边进行Koch曲线化,函数的输入参数有三角形的边长 R 和迭代次数k,输出Koch雪花图形以及雪花所围面积S. (1)代码如下: fu nction x u ehu a(k) % k为迭代次数 for j=0:2 %依次对3条边进行Koch曲线运算 if j==0; p=[0,0;10,0]; elseif j==1; p=[5,-5*sqrt(3);0,0]; else j==2; p=[10,0;5,-5*sqrt(3)]; end n=1; %存放线段的数量,初始值为1 A=[cos(pi/3),-sin(pi/3);sin(pi/3),cos(pi/3)]; %用于计算新的结点 for s=1:k j=0; % j 为行数 for i=1:n q1=p(i,:); %目前线段的起点坐标 q2=p(i+1,:); %目前线段的终点坐标 d=(q2-q1)/3; j=j+1;r(j,:)=q1; %原起点存入r j=j+1;r(j,:)=q1+d; %新1 点存入r j=j+1;r(j,:)=q1+d+d*A'; %新2 点存入r j=j+1;r(j,:)=q1+2*d; %新3 点存入r end n=4*n; %全部线段迭代一次后,线段数量乘 4 clear p %清空 p ,注意:最后一个终点q2 不在 r 中 p=[r;q2]; %一条边的全部结点 clear r end plot(p(:,1),p(:,2)) %连接各个结点 hold on; ax is equ al end 不同 k 对应不同的图像如下: k=1 k=2 k=3 (2)Koch雪花面积推导如下所示: k=0 时 S=234 r k=1 时 S=234 r+2312 r k=2 时 S=234 r+2312 r+ 2327 r k=3 时 S=234 r+2312 r+ 2327 r+ 24 3243 r k=n 时 S=234 r+2312 r+ …+2(1) 1213 3*4*()43nnrr+2(1)23 3*4*()43nnrr 每一次迭加,所产生的新三角形的边长变为上一次的13 ,数量为上一次的 4 倍. S=234 r+234 r*(3*21( )3+12*221()3+……+3*(1)4 n*21()3n)=234 r+234 r*(1)211[3*4*() ]3niii 曲线总面积无穷大。 (3)综上所述可得Koch 雪花的分形维...