数学实验 matlab Koch雪花
数学实验报告——科赫分形雪花

实验报告:科赫分形雪花一、算法描述科赫分形雪花clearn=1;p=[0 0;5,sqrt(75)]; A=[cos(pi/3), -sin(pi/3);sin(pi/3) ,co s(pi/3)];for k=1:3j=1;for i=1:nq1=p(i,:);q2=p(i+1,:);d=(q2-q1)/3;r(j,:)=q1;r(j+1,:)=q1+d;r(j+2,:)=q1+d+d*A'; r(j+3,:)=q1+2*d;j=j+4;endn=4*n;p=[];p=[r;q2];endx=p(:,1);y=p(:,2);plot(x,y)hold on clearm=1;p=[5,sqrt(75);10 ,0];A=[cos(pi/3), -sin(pi/3);sin(pi/3) ,cos(pi/3)];for k=1:3e=1;for i=1:mq1=p(i,:);q2=p(i+1,:);d=(q2-q1)/3;r(e,:)=q1;r(e+1,:)=q1+d;r(e+2,:)=q1+d+d*A';r(e+3,:)=q1+2*d;e=e+4;endm=4*m;p=[];p=[r;q2];endx=p(:,1);y=p(:,2);plot(x,y)hold onclearn=1;p=[0,0;10, 0];A=[cos(pi/3), -sin(pi/3);sin(pi/3) ,cos(pi/3)];for k=1:3j=1;for i=1:nq1=p(i,:);q2=p(i+1,:);d=(q2-q1)/3;r(j,:)=q1;r(j+1,:)=q1+d;r(j+2,:)=q1+d+d*A;r(j+3,:)=q1+2*d;j=j+4;endn=4*n;p=[];p=[r;q2];endx=p(:,1);y=p(:,2);plot(x,y)二、证明科赫分形雪花图 Kn 的边数为:用数学归纳法证明:当n=1时,成立;假设当n=k时成立:L(k)=3X4^(k-1)当n=k+1时;因为雪花的边数增加,每一边将变为四边L(k+1)=4*L(K)将L(k)=3Xn^(k-1)代入上式,得:L(k+1)=3X4^k 满足L(n)=3X4^(n-1)综上所述,对于任意的N>0,且N为正整数的等式均成立。
Koch分形雪花图的面积计算

Koch 分形雪花图的面积计算一、问题叙述分形几何图形最基本的特征是自相似性,这种自相似性是指局部与整体在形态、功能、信息、时间、空间等方面具有统计意义上的相似。
在具有自相似性的图形中,图形局部只是整体的缩影,而整体图形则是局部的放大。
而本文我们要分析的是Koch 分形雪花图,包含以下三个问题:1.描述Koch 分形雪花2.证明Koch 分形雪花图K n 的边数为n 1L 34n -=⨯3.求Koch 分形雪花图的面积(数据),求n n lim A rea (K )→∞二、问题分析在分析Koch 分形雪花图之前,我们首先介绍Koch 分形曲线。
Koch 分形曲线的绘制原理是:从一条直线段开始,将线段中间的三分之一部分用一个等边三角形的两边代替,形成四条线段的折线,如图2.1所示:图2.1 对一条线段进行第一次Koch 分形然后,对形成的四条直线段的每一条的中间的三分之一部分用等边三角形的两边代替,形成十六条线段的折线。
这种迭代继续进行下去可以形成Koch 分形曲线。
在迭代过程中,图形中的点数将越来越多,而曲线的最终显示细节的多少将取决于迭代次数和显示系统的分辨率。
设P1和P2分别是原始的两个端点,现在需要在直线段的中间依次插入点Q1,Q2,Q3以产生第一次迭代图形。
显然,Q1位于P1右端直线段的三分之一处,Q3位于P1点右端直线段的三分之二处,而Q2点的位置可以看作由Q3绕Q1逆时针旋转60度而得到的,故可以处理Q Q 13经过正交变换而得到Q Q 12 。
算法如下: (1)Q1P 1+P P Q P 1+P P /3;←←(2-1)/3;32(2-1)(2)TQ 2Q 1+Q 3-Q A ←⨯(1); (3)P 5P 2P 2Q1P 3Q P Q 3←←←←;;2;4。
在算法中,用正交矩阵A 构造正交变换,其功能作用是对向量作旋转,使之成为长度不变的另一向量。
在绘制Koch 曲线的过程中,取旋转的角度为3π,则正交矩阵A 应取为:c o s ()s in ()33A =s in ()c o s ()33ππππ⎛⎫- ⎪⎪⎪⎪⎝⎭1.Koch 分形雪花的描述Koch 分形雪花的原始图形是等边三角形,它是由三条相等的线段围成的三角形。
雪花中的数学问题

雪花中的数学问题雪花中的数学问题主要是与雪花曲线(也称为科赫曲线)有关。
雪花曲线是由一组连续的三角形构成,每个三角形都以一个点为中心,向外延伸出三个分支,每个分支又继续向外延伸出三个分支,如此不断重复。
这种曲线的形状类似于雪花,因此得名。
在雪花曲线中,有一个重要的数学概念叫做“迭代函数系统”(Iterated Function Systems,简称IFS)。
迭代函数系统是由一组函数构成,每个函数都会将输入的图像变换成另一幅图像。
在雪花曲线的生成过程中,每个三角形都可以看作是一个迭代函数,通过不断应用这些函数,最终生成了雪花曲线的形状。
此外,雪花曲线还与分形几何有关。
分形几何是一种研究形状和结构的数学分支,它的特点是可以通过不断迭代来生成复杂的形状。
雪花曲线是一种典型的分形几何图形,其形状和结构可以通过迭代函数系统和分形几何的理论来描述和分析。
除了在自然界中发现的美丽分形结构,雪花曲线还与计算机图形学和数据压缩等领域有着紧密的联系。
在计算机图形学中,雪花曲线可以作为一种生成复杂形状和图案的有效方法。
而在数据压缩领域,雪花曲线因其独特的形状和结构也被用作一种高效的数据压缩算法。
此外,雪花曲线还被应用于图像处理和模式识别等领域。
通过利用雪花曲线的特性和算法,可以实现对图像的高效处理和识别。
例如,在图像处理中,可以使用雪花曲线来分割图像中的不同区域,从而实现图像的分割和识别。
总之,雪花曲线作为一种独特的数学概念和分形几何图形,不仅在自然界中有着广泛的应用,还在计算机科学、数据压缩、图像处理和模式识别等领域发挥着重要的作用。
通过深入研究和探索雪花曲线背后的数学原理和算法,我们可以不断发现新的应用场景并推动相关领域的发展。
Koch分形雪花图地面积计算

Koch 分形雪花图的面积计算一、问题叙述分形几何图形最基本的特征是自相似性,这种自相似性是指局部与整体在形态、功能、信息、时间、空间等方面具有统计意义上的相似。
在具有自相似性的图形中,图形局部只是整体的缩影,而整体图形则是局部的放大。
而本文我们要分析的是Koch 分形雪花图,包含以下三个问题:1.描述Koch 分形雪花2.证明Koch 分形雪花图K n 的边数为n 1L 34n -=⨯3.求Koch 分形雪花图的面积(数据),求n n lim Area(K )→∞二、问题分析在分析Koch 分形雪花图之前,我们首先介绍Koch 分形曲线。
Koch 分形曲线的绘制原理是:从一条直线段开始,将线段中间的三分之一部分用一个等边三角形的两边代替,形成四条线段的折线,如图2.1所示:图2.1 对一条线段进行第一次Koch 分形然后,对形成的四条直线段的每一条的中间的三分之一部分用等边三角形的两边代替,形成十六条线段的折线。
这种迭代继续进行下去可以形成Koch 分形曲线。
在迭代过程中,图形中的点数将越来越多,而曲线的最终显示细节的多少将取决于迭代次数和显示系统的分辨率。
设P1和P2分别是原始的两个端点,现在需要在直线段的中间依次插入点Q1,Q2,Q3以产生第一次迭代图形。
显然,Q1位于P1右端直线段的三分之一处,Q3位于P1点右端直线段的三分之二处,而Q2点的位置可以看作由Q3绕Q1逆时针旋转60度而得到的,故可以处理Q Q 13经过正交变换而得到Q Q 12 。
算法如下: (1)Q1P1+P P Q P1+P P /3;←←(2-1)/3;32(2-1)(2)T Q2Q1+Q3-Q A ←⨯(1); (3)P5P2P2Q 1P3Q P Q3←←←←;;2;4。
在算法中,用正交矩阵A 构造正交变换,其功能作用是对向量作旋转,使之成为长度不变的另一向量。
在绘制Koch 曲线的过程中,取旋转的角度为3π,则正交矩阵A 应取为: cos()sin()33A=sin()cos()33ππππ⎛⎫- ⎪⎪ ⎪ ⎪⎝⎭ 1.Koch 分形雪花的描述Koch 分形雪花的原始图形是等边三角形,它是由三条相等的线段围成的三角形。
用几何画板画科赫雪花

用几何画板画科赫雪花摘要:科赫曲线是瑞典人科赫于1904年提出了著名分形曲线。
形状形似雪花,也叫雪花曲线。
具有处处连续但却处处不可导的性质。
本文应用几何画板软件在科赫曲线的基础上给出科赫雪花的几种画法。
关键词:几何画板科赫曲线科赫雪花画法一:画科赫曲线1.新建参数n:表示迭代次数2.画初元:画水平线段AB,将线段AB三等分,以中间1/3线段CD为边作等边△CDE(图1)。
3.得到生成元:保留折线段ACEDB,其余线段隐藏(图2)。
4.生成曲线:顺次选中A,B两点和参数n,按住sifit键深度迭代。
将AB按照箭头所指方向,依次迭代到AC,CE,ED,DB上。
得到科赫曲线。
保留含参数n的科赫曲线AB。
其余线段及点隐藏,改变参数n,可以看到不同迭代次数的科赫曲线(图3)。
二:正三角形法画科赫雪花1.含参数n的科赫曲线AB,按ctrl+A全选,再按自定义工具,创建工具(图1)。
2.另外画一个正△FGH。
按自定义工具或点击参数n,依次点击FH,HG,GF。
得到科赫雪花(图2)。
3.生成雪花:保留科赫雪花和参数n,其余点和线段隐藏。
改变参数n,可以看到不同迭代次数的科赫雪花(图3)。
三:正六边形法画科赫雪花1.新建参数n,表示迭代次数。
2.画初元:画水平线段AB,将线段AB三等分,以中间1/3线段CD为边,作正六边形CDEFGH(图1)。
3.画生成元:保留正六边形CDEFGH和A,B两点,其余线段隐藏(图2)。
4.生成雪花:顺次选中A,B两点和参数n,按sifit键进行深度迭代,按照箭头所指方向,将AB依次迭代到DC,ED,FE,GF,HG,CH,CE上,得到科赫雪花。
保留科赫雪花和参数n,其余隐藏。
改变参数n,看到不同迭代次数的科赫雪花(图3)。
四:正六角星法画科赫雪花1.新建参数n,表示迭代次数。
2.画初元:画水平线段AB,以AB为边,画正△ABC,中心为O点。
以O点为旋转中心,将△ABC旋转180°得到对应△DEF,两个三角形的交点依次标记为G,H,I,J,K,L(图1)。
计算机图形学_Koch雪花的分形算法实现

Koch雪花的分形算法实现1.内容介绍分形指具有多重自相似的对象,它可以是自然存在的,也可以是人造的,树木、山川、云朵、脑电图、材料断口等都是典型的分形。
分形是图形学中一门重要的理论,是最近20多年发展起来的新学科,其中Koch雪花则是分形曲线的典型代表。
本文通过对Koch雪花算法实现的详细论述与具体代码,进而分析分形的基本思想、实现方法以及实际应用等。
2.设计思想Koch雪花的实际结构为三条Koch曲线的拼接,这三条Koch曲线分别构成正三角形的三条边即可。
因此,在此详细论述Koch曲线的设计思想。
首先绘制一条线段,假设线段长度为L,则在线段L/3处至2L/3处以L/3为边长做一个正三角形,并去掉底边。
此时该图形变为四条线段,同理对每条线段继续上述步骤即可绘制出Koch曲线。
设计中的难点在于每条线段的端点坐标较难确定,根据已知的初始线段两个端点坐标,我们通过几何三角计算出每次迭代的端点坐标并进行递归即可。
如图1所示,每点的迭代算式为(x1,y1) (x3,y3)(x5,y5)(x4,y4)(x2,y2) α60°第 1 页共9 页图1 端点坐标推导计算32113211533321215333212111()()331c o s (60)31(c o s 60c o s s in 60s in )31[())]61c o s (60)31(s in 60c o s c o s 60s in )31)()]6x x x x y y y y x x L x L x x x y y y y L y L y x x y y αααααα=-+=-+=+︒+=+︒-︒=+---=+︒+=+︒+︒=+-+-在推导出每点的坐标计算后,即可通过编程实现Koch 雪花。
在程序中,首先通过初始化定义正三角形底边的两个端点坐标,然后通过计算得出顶点坐标。
对每一条边进行Koch 曲线递归绘制,最终就可以得到Koch 雪花。
分形曲线与面积计算-精品

sinx1 cos x2
cos sin
Asin
cos
(1, 0)
1
0
cos sin
(0, 1)
0 sin
1
cos
5/11
MATLAB代码
function koch0(P,N)
end
plot(P(:,1),P(:,2)),axis off axis image
6/11
Kn的边数: Kn的周长:
Sn 4n
Ln
1 3n
4n
L0
Kn的维数: Dnln4/ln31.2618
Dn
lnN
/
ln
1
相邻两次的边数比和边长比
参考资料: 分形论——奇异 性探索,作者:林鸿溢
第 k 条边: x y((tt)) ((1 1 tt))x yk k ttyx kk 11,t(0,1)
1
L kyd 0 x [1 ( t)yk tk y 1](x k 1x k)dt
1 2(xk1xk)(ykyk1)
x L k
9/11
面积计算的数学实验报告(三选一,或题材自选)
一、 Koch分形雪花 1.算法描述Koch分形雪花
2.证明Koch分形雪花图 Kn 的边数为
Ln 34n1
3.求Koch分形雪花图 Kn 的面积
ln im Are(aKn)
10/11
二、竞赛题的实验设 (第一届全国大学生数学夏令营第6题 )
课外作业:完成面积计算的 数学实验报告(电子文档)
数学实验报告Koch雪花。

数学实验报告试验二迭代与分形练习一实验目的与要求对一个等边三角形,每条边按照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)]; %用于计算新的结点for 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; %原起点存入rj=j+1;b(j,:)=q1+d; %新1点存入rj=j+1;b(j,:)=q1+d+d*A'; %新2点存入rj=j+1;b(j,:)=q1+2*d; %新3点存入rend %原终点作为下条线段的起点,在迭代下条线段时存入rn=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; %%以下根据线段两个结点的坐标,计算迭代后它们之间增加的三个%结点的坐标,并且将这些点的坐标按次序存暂时放到r中for i=1:n %每条边计算一次q1=p(i,:); %目前线段的起点坐标q2=p(i+1,:); %目前线段的终点坐标d=(q2-q1)/3; %j=j+1;z(j,:)=q1; %原起点存入rj=j+1;z(j,:)=q1+d; %新1点存入rj=j+1;z(j,:)=q1+d+d*A; %新2点存入rj=j+1;z(j,:)=q1+2*d; %新3点存入rend %原终点作为下条线段的起点,在迭代下条线段时存入rn=4*n; %全部线段迭代一次后,线段数量乘4clear 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; %%以下根据线段两个结点的坐标,计算迭代后它们之间增加的三个%结点的坐标,并且将这些点的坐标按次序存暂时放到r中for i=1:n %每条边计算一次q1=p(i,:); %目前线段的起点坐标q2=p(i+1,:); %目前线段的终点坐标d=(q2-q1)/3; %j=j+1;a(j,:)=q1; %原起点存入rj=j+1;a(j,:)=q1+d; %新1点存入rj=j+1;a(j,:)=q1+d+d*A'; %新2点存入rj=j+1;a(j,:)=q1+2*d; %新3点存入rend %原终点作为下条线段的起点,在迭代下条线段时存入rn=4*n; %全部线段迭代一次后,线段数量乘4clear p %清空p ,注意:最后一个终点q2不在r中p=[a;q2]; %重新装载本次迭代后的全部结点endplot(p(:,1),p(:,2)) %显示各结点的连线图hold on; %保存图像axis equal %各坐标轴同比例运行得到图像如下:k=1 k=5k=0时23 k=1时 S=234r +2312r k=2时 S=234r +2312r + 2327r k=3时 S=234r +2312r + 2327r + 243243r k=n 时 S=234r +2312r + …2(1)12133*4*()3n n r ---+2(1)233*4*()43n n r r - 每一次迭加,所产生的新三角形的边长变为上一次的13,数量为上一次的4倍. S=234+234*(3*21()3+12*221()3+……+3*(1)4n -*21()3n )2323*(1)211[3*4*()]3n i i i -=∑曲线总面积无穷大。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作业二
实验内容:
对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形图称为Koch雪花。
编制程序绘制出它的图形,并计算Koch雪花的面积,以及它的分形维数。
实验过程:
1、代码如下:
function xuehua(k)
for j=0:2
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;
A=[cos(pi/3),-sin(pi/3);sin(pi/3),cos(pi/3)];
for s=1:k
j=0;
for i=1:n
q1=p(i,:);
q2=p(i+1,:);
d=(q2-q1)/3;
j=j+1;r(j,:)=q1;
j=j+1;r(j,:)=q1+d;
j=j+1;r(j,:)=q1+d+d*A';
j=j+1;r(j,:)=q1+2*d;
end
n=4*n;
clear p
p=[r;q2];
clear r
end
plot(p(:,1),p(:,2))
hold on;
axis equal
end
不同n对应不同的图像如下:
k=1 k=3
总结分析:
Koch雪花的面积:
k=0时
S=
2
4
r
k=1时
S=
2
4
r
+
2
12
r
k=2时
S=
2
r
+
2
+
2
k=3时
S=
2
r
+
2
+
2
+
2
k=n时
S=
2
+
2
+ …
+
2(1)12
1
*4*()
43
n
n
r
r--
-
+
2(1)2
*4*()
43
n
n
r
r-
每一次迭加,所产生的新三角形的边长变为上一次的1
3,数量为上一次的4倍.
S=2
+
2
*(3*
2
1
()
3+12*
2
2
1
()
3+……+3*(1)
4n-*
2
1
()
3n)
=
2
4
r
+
2
4
r
*
(1)2
1
1
[3*4*()]
3
n
i
i
i
-
=
∑
曲线总面积无穷大。
分形维数:
根据迭代的规律得到:相似形个数:m=6 边长放大倍数:c=3,ln ln ln6ln3
d m c
=÷=÷=1.631。