数学实验报告Koch雪花

上传人:飞****9 文档编号:140214680 上传时间:2020-07-28 格式:DOC 页数:5 大小:198.50KB
返回 下载 相关 举报
数学实验报告Koch雪花_第1页
第1页 / 共5页
数学实验报告Koch雪花_第2页
第2页 / 共5页
数学实验报告Koch雪花_第3页
第3页 / 共5页
数学实验报告Koch雪花_第4页
第4页 / 共5页
数学实验报告Koch雪花_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《数学实验报告Koch雪花》由会员分享,可在线阅读,更多相关《数学实验报告Koch雪花(5页珍藏版)》请在金锄头文库上搜索。

1、数学实验报告 试验二 迭代与分形练习一实验目的与要求对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形图称为Koch雪花。编制程序绘制出它的图形,并计算Koch雪花的面积,以及它的分形维数。实验过程具体的代码如下:function plotkoch(r,k) %显示等边三角形迭代k次后的曲线图 r代表边长 默认(0 0)为起点p=(r/2) r*sin(pi/3);r 0; %存放结点坐标,每行一个点,初始值为两结点的坐标 代表边1n=1; %存放线段的数量,初始值为1A=cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3); %用于计算新的结点fo

2、r s=1:k %实现迭代过程,计算所有的结点的坐标 j=0; %以下根据线段两个结点的坐标,计算迭代后它们之间增加的三个%结点的坐标,并且将这些点的坐标按次序存暂时放到r中 for i=1:n %每条边计算一次 q1=p(i,:); %目前线段的起点坐标 q2=p(i+1,:); %目前线段的终点坐标 d=(q2-q1)/3; % j=j+1;b(j,:)=q1; %原起点存入r j=j+1;b(j,:)=q1+d; %新1点存入r j=j+1;b(j,:)=q1+d+d*A; %新2点存入r j=j+1;b(j,:)=q1+2*d; %新3点存入r end %原终点作为下条线段的起点,在迭

3、代下条线段时存入r n=4*n; %全部线段迭代一次后,线段数量乘4clear p %清空p ,注意:最后一个终点q2不在r中 p=b;q2; %重新装载本次迭代后的全部结点endplot(p(:,1),p(:,2) %显示各结点的连线图hold on; %保存图像axis equal %各坐标轴同比例p=0 0;r 0; %存放结点坐标,每行一个点,初始值为两结点的坐标 代表边2n=1; %存放线段的数量,初始值为1A=cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3); %用于计算新的结点for s=1:k %实现迭代过程,计算所有的结点的坐标 j=0; %以

4、下根据线段两个结点的坐标,计算迭代后它们之间增加的三个%结点的坐标,并且将这些点的坐标按次序存暂时放到r中 for i=1:n %每条边计算一次 q1=p(i,:); %目前线段的起点坐标 q2=p(i+1,:); %目前线段的终点坐标 d=(q2-q1)/3; % j=j+1;z(j,:)=q1; %原起点存入r j=j+1;z(j,:)=q1+d; %新1点存入r j=j+1;z(j,:)=q1+d+d*A; %新2点存入r j=j+1;z(j,:)=q1+2*d; %新3点存入r end %原终点作为下条线段的起点,在迭代下条线段时存入r n=4*n; %全部线段迭代一次后,线段数量乘4

5、clear p %清空p ,注意:最后一个终点q2不在r中 p=z;q2; %重新装载本次迭代后的全部结点endplot(p(:,1),p(:,2) %显示各结点的连线图 hold on; %保存图像axis equal %各坐标轴同比例p=0 0;(r/2) r*sin(pi/3); %存放结点坐标,每行一个点,初始值为两结点的坐标 代表边3n=1; %存放线段的数量,初始值为1A=cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3); %用于计算新的结点for s=1:k %实现迭代过程,计算所有的结点的坐标 j=0; %以下根据线段两个结点的坐标,计算迭代后它

6、们之间增加的三个%结点的坐标,并且将这些点的坐标按次序存暂时放到r中 for i=1:n %每条边计算一次 q1=p(i,:); %目前线段的起点坐标 q2=p(i+1,:); %目前线段的终点坐标 d=(q2-q1)/3; % j=j+1;a(j,:)=q1; %原起点存入r j=j+1;a(j,:)=q1+d; %新1点存入r j=j+1;a(j,:)=q1+d+d*A; %新2点存入r j=j+1;a(j,:)=q1+2*d; %新3点存入r end %原终点作为下条线段的起点,在迭代下条线段时存入r n=4*n; %全部线段迭代一次后,线段数量乘4clear p %清空p ,注意:最后

7、一个终点q2不在r中 p=a;q2; %重新装载本次迭代后的全部结点endplot(p(:,1),p(:,2) %显示各结点的连线图 hold on; %保存图像axis equal %各坐标轴同比例运行得到图像如下: k=1 k=5k=0时 S=k=1时 S=+k=2时 S=+ k=3时 S=+ + k=n时 S=+ +每一次迭加,所产生的新三角形的边长变为上一次的,数量为上一次的4倍.S=+*(3*+12*+3*)=+*曲线总面积无穷大。根据迭代的规律得到:相似形个数:m=6 边长放大倍数:c=3,1.631function vortex(n) z=spiral(n); x,y=meshgrid(1:n,n:-1:1); p=x+y*i; p=reshape(p,1,prod(size(p); z=reshape(z,1,prod(size(z); z,k=sort(z); p=p(k); plot(p); axis equal

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 总结/报告

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号