数学实验matlabKh雪花.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数学实验matlabKh雪花.doc

《数学实验》报告3分形实例 电气二班陆展辉201430222325 (51) 问题描述 对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形阁称为Koch 雪花。编制程序绘制出它的图形,并计算Koch雪花的面积,以及它的分形维数。 2、 对一条横向线段,先将其等分成4段,然后再将第二段向上移,将第三段向下 移,再将第四段的相邻端点连接起来,迭代一次后变成阁3-21.继续迭代得到的 分形图,称为Minkowski香肠。编制程序绘制出它的图形,并计算它的分形维数。 图3-21 M i nkows k i香肠一次迭代 问题分析与实验过程 实验过程.? 1.仿照Koch曲线代码对三角形的每条边进行Koch曲线化, 函数的输入参数有三角形的边长R和迭代次数k,输出Koch 雪花图形以及雪花所围面积 (1)代码如下: function xuehua(k) % k为迭代次数 forj=0:2 %依次对3条边进行Koch曲线运算 ifj==O; p=[0,0;10,0]; elseif j==l; p=[5,-5*sqrt(3);O,O]; else j==2; p=[10,0;5,-5*$qrt(3)]; end n=l; %存放线段的数量,初始值为1 A=[cos(pi/3),-sin(pi/3);sin(pi/3),cos(pi/3)]; % 用于计算新的结点 for s=l:k j二0; % j为行数 for i=l:n ql=p(i,:); % S前线段的起点坐标 q2=p(i+l,:); % A前线段的终点坐标 d=(q2-ql)/3; j=j+l;r(j,:)=ql; %原起点存入 r j=j+l;r(j,:)=ql+d; %新 1 点存入 r j=j+l;r(j,:)=ql+d+d*A,; %新 2 点存入 r j=j+l;r(j,:)=ql+2*d; %新 3 点存入 r end n=4*n; %全部线段迭代一次后,线段数量乘4 clear p %清空p,注意:最后一个终点q2不在r中 p=lr;q2J; 条边的全部结点 clear r end plot(p(:,l),p(:,2)) % 连接各个结点 hold on; axis equal end 不同k对应不同的图像如下: k=l 么2k=l 时 S= 么2 k=l 时 S= 4 + 12 k=2 时 S= 4 + 12 +27 (2) Koch雪花面积推导如下所示: k=0 时 S= 4 TOC \o 1-5 \h \z V3 , 73 , 73 2 4^3 , 厂* 厂- 广 厂- k=3 时 S=4 +12 + 27 + 243 nk=n n k=n 时 S= 4 + 12 + 每一次迭加,所产生的新三角形的边长变为上一次的3,数量为上一次的4倍. 73 9 73 ——厂細 —— S= 4 + 4 1、2 (3* (i) +……+3* 4-) * (士)2 ) _ _ n 1 V|r2 £[3*4(/-°*(-)2] =4 + 4 “=i 3 曲线总面积无穷大。 (3)综上所述可得Koch雪花的分形维数为: 根据迭代的规律得到: 相似形个数:m=6边长放大倍数:c=3, d = In m + In c. = In 6 + In 3 = i 631 2、绘制Minkowski香肠 (i)编辑实现题目迭代的函数 在Matlab中,编制一个函数来绘制Minkowski香肠的阁形。具体代码如下: function Minkowski (k) % 显示迭代k次后的Minkowski曲线图 p=[0, 0; 10, 0] ; %存放结点坐标,每行一个点,初始值为两结点的坐 n=l ;A=[0, 1;-1 n=l ; A=[0, 1;-1,0]; for s=l:k j=0; for i=l:n; %实现迭代过程,计算所有的结点的坐标 ql=P (i,:); %目前线段的起点坐标 q2=p (i+1,:); %目前线段的终点坐标 d=(q2-ql)/4; J-j+1 (j,:)=ql; % 原起点存入r j=j+l;r (j,:)=ql+d; % 新1 点存入r j=j+l;r (j, :)=ql+d+d*A; % 新2点存入r j=j+l;r (j, :)=ql+2*d+d*A; % 新3点存入r j=j+l;r (j, :)=ql+2*d+d*A,; % 新4点存入r j=j+l;r (j, :)=ql+3*d+d*A’ ; % 新5点存入r j=j+l;r (j,:)=ql+3*d; % 新6点存入r end %原终点作为下条线段的起点,在迭代下条线段时存入 n=n*7; %全部线段迭代一次后,线段数量乘7 clear p %清空p,注意:最后一

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档