数学实验 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 分形雪花图的面积计算一、问题叙述分形几何图形最基本的特征是自相似性,这种自相似性是指局部与整体在形态、功能、信息、时间、空间等方面具有统计意义上的相似。

在具有自相似性的图形中,图形局部只是整体的缩影,而整体图形则是局部的放大。

而本文我们要分析的是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 分形雪花图的面积计算一、问题叙述分形几何图形最基本的特征是自相似性,这种自相似性是指局部与整体在形态、功能、信息、时间、空间等方面具有统计意义上的相似。

在具有自相似性的图形中,图形局部只是整体的缩影,而整体图形则是局部的放大。

而本文我们要分析的是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雪花的分形算法实现

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雪花。

编制程序绘制出它的图形,并计算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 -=∑曲线总面积无穷大。

koch雪花的自相似维数

koch雪花的自相似维数

koch雪花的自相似维数
Koch雪花是一种基于分形几何学的图形,具有自相似性。

自相似性是指图形的部分与整体相似,即缩放后可以得到相似的图形。

而自相似维数则是用于描述自相似性的一个数学概念。

Koch雪花的自相似维数可以通过计算其分形维数来得到。

分形维数是一种用于描述分形对象大小的指标,它可以帮助我们理解自相似图形的特征。

在计算Koch雪花的自相似维数时,我们可以先将其分解成一系列相似的子图形,然后通过计算每个子图形被缩小的比例来得到分形维数。

具体计算方法为:
1. 将Koch雪花分解成四个相似的子雪花;
2. 计算每个子雪花相对于原始图形的缩放比例,即为1/3;
3. 用公式D=log(N)/log(r)来计算分形维数,其中N为子雪花的数量,r为缩放比例;
4. 将四个子雪花的分形维数加起来并除以4,即为Koch雪花的自相似维数。

通过计算,我们可以得到Koch雪花的自相似维数为log(4)/log(3),即约为1.2619。

这意味着Koch雪花的自相似性非常强,每个部分都是整体的缩小版本,并且可以无限缩小下去。

科勒雪花 分形维度

科勒雪花 分形维度

科勒雪花是一种分形图形,也被称为科赫曲线或科赫雪花曲线。

它是由瑞典数学家海尔曼·冯·科赫于1904年提出的。

科勒雪花的分形维度是多少呢?分形维度是用来描述分形图形复杂程度的一个数值。

对于科勒雪花曲线,它的分形维度是1.2618。

为了计算科勒雪花的分形维度,可以使用分形维度的计算方法之一——盒计数法。

这种方法涉及将图形覆盖在一个网格中,并计算所需的网格数量来完全覆盖图形。

然后,通过缩小网格的大小,可以计算出分形维度。

科勒雪花的分形维度为1.2618说明它具有一定的复杂性和自相似性,即无论如何放大或缩小,都可以看到相似的结构。

这也是分形图形的一个特征。

python学习笔记 第五章(科赫雪花与科赫曲线)

python学习笔记 第五章(科赫雪花与科赫曲线)

python学习笔记第五章(科赫雪花与科赫曲线)科赫曲线,也叫做雪花曲线。

是一种分形几何,分形几何是一种迭代的几何图形,广泛存在于自然界中。

科赫曲线是一种迭代的图形,所以我们是可以利用python中的迭代法来绘制。

我们先考虑如何实现迭代。

首先我们确定递归的基例,考虑最基本的情况,就是直接绘制一条曲线,没有任何的改变,即0阶的科赫曲线。

if n==0:turtle.fd(size)这里的size指的是长度。

然后我们来确定递归的链条。

else:for angle in [0,60,-120,60]:turtle.left(angle)kehe(size/3,n-1)我们观察每一条线,对每一个三分之一处进行一次转向,角度依次为0、60、-120、60,单位为度。

然后我们加入定义主函数,用来绘制一个科赫曲线。

#科赫曲线import turtledef kehe(size,n):ifn==0:turtle.fd(size)else:for angle in [0,60,-120,60]:turtle.left(angle)kehe(size/3,n-1)defmain():turtle.setup(800,400)turtle.penup()turtle.goto(-300,-50)turtle.pendown()turtle.pensize(2)kehe(600,3)#三阶科赫曲线turtle.hideturtle()main()turtle.hideturtle()用来最后将画笔隐藏。

最终画出的效果如下:而我们希望得到的科赫雪花这是三个上面这样的图形组成而成,这时我们就需要在绘制上面图像的结束时转变角度,然后继续绘制。

代码如下:#科赫雪花import turtledef kehe(size,n):ifn==0:turtle.fd(size)else:for angle in [0,60,-120,60]:turtle.left(angle)kehe(size/3,n-1)defmain():turtle.setup(600,600)turtle.penup()turtle.goto(-200,100)turtle.pendown()turtle.pensize(2)level=3#三阶科赫雪花kehe(400,level)turtle.right(120)kehe(400,level)turtle.right(120)kehe(400,level)turtle.hideturtle()main()我们最终可以得到如下图形:这里可以通过改变参数得到我们需要的高阶图形,也可以通过加快画笔的速度来缩短绘制时间。

matlab数学实验.doc

matlab数学实验.doc

matlab 数学实验《管理数学实验》实验报告班级姓名实验 1:MATLAB的数值运算【实验目的】(1)掌握 MATLAB 变量的使用(2)掌握 MATLAB 数组的创建,(3)掌握 MA TLAB 数组和矩阵的运算。

(4)熟悉 MATLAB 多项式的运用【实验原理】矩阵运算和数组运算在MA TLAB中属于两种不同类型的运算,数组的运算是从数组元素出发,针对每个元素进行运算,矩阵的运算是从矩阵的整体出发,依照线性代数的运算规则进行。

【实验步骤】(1)使用冒号生成法和定数线性采样法生成一维数组。

(2)使用 MA TLAB 提供的库函数 reshape,将一维数组转换为二维和三维数组。

(3)使用逐个元素输入法生成给定变量,并对变量进行指定的算术运算、关系运算、逻辑运算。

(4)使用 MA TLAB绘制指定函数的曲线图,将所有输入的指令保存为M 文件。

【实验内容】( 1)在 [0,2*pi] 上产生 50 个等距采样数据的一维数组,用两种不同的指令实现。

0:(2*pi-0)/(50-1):2*pi或linspace(0,2*pi,50)( 2)将一维数组A=1:18 ,转换为2×9 数组和 2× 3× 3 数组。

reshape(A,2,9)ans =Columns 1 through 713 5 24 6 789111012131415171618reshape(A,2,3,3) ans(:,:,1) =1 3 52 4 6 ans(:,:,2) =7 9 118 10 12 ans(:,:,3) =13 15 1714 16 18matlab 数学实验( 3)A=[0 2 3 4 ;1 3 5 0],B=[1 0 5 3;1 5 0 5] ,计算数组 A、 B 乘积,计算 A&B,A|B,~A,A==B,A>B 。

A.*Bans=0 0 15 121 15 0 0A&Bans =0 0 1 11 1 0 0A|Bans =1 1 1 11 1 1 1~Aans =1 0 0 00 0 0 1A==Bans =0 0 0 01 0 0 0A>=Bans =0 1 0 11 0 1 0t t ( 4)绘制 y= 0.5 e3 -t*t*sin(t),t=[0,pi] 并标注峰值和峰值时间,添加标题 y= 0.5 e3 -t*t*sint ,将所有输入的指令保存为M 文件。

科赫雪花分形维数

科赫雪花分形维数

科赫雪花分形维数科赫雪花分形维数引言科赫雪花是一种经典的分形图形,它由一个等边三角形开始,不断地将其每条边等分为三段,并在中间一段上构造一个等边三角形,如此反复迭代。

这个过程可以无限进行下去,得到越来越复杂的图形。

科赫雪花具有许多有趣的性质,其中之一是它的维数。

什么是分形维数?在介绍科赫雪花分形维数之前,我们需要先了解什么是分形维数。

传统的几何图形都具有整数维度,例如线段的维度为1,正方形和圆的维度为2。

而分形图形则不同,它们具有非整数维度。

这是因为它们在任意尺度下都具有相似性质,即自相似性。

自相似性指的是一个物体在各个尺度上都具有相似的结构和性质。

例如,在科赫雪花中,每个小三角形都与整个图像类似,并且可以通过缩放和旋转来重叠到原始图像上。

由于分形图像具有自相似性,在计算其维数时需要考虑每个尺度的贡献。

因此,分形维数通常是通过一种称为盒计数法的方法来计算的。

盒计数法盒计数法是一种用于测量分形图像维度的方法。

其基本思想是将图像覆盖在一个网格上,并计算不同大小的正方形网格中图像所占的面积或长度。

然后,根据不同尺度下图像所占比例与网格大小之比来计算分形维数。

例如,在科赫雪花中,我们可以将整个图像覆盖在一个正方形网格上,并计算每个尺度下图像所占比例与网格大小之比。

假设我们用N表示网格中正方形的数量,L表示正方形边长,则可以得到以下公式:D = log(N) / log(1/L)其中D表示分形维数。

在科赫雪花中,由于每个小三角形都可以被分成四个相似的小三角形,因此我们可以得到以下公式:N = 4^nL = 3^(-n)其中n表示迭代次数。

科赫雪花分形维数通过盒计数法,我们可以得到科赫雪花的分形维数。

首先,在第一次迭代后,我们得到了四个等边三角形。

因此,N = 4,L = 1/3。

代入公式中可以得到:D = log(4) / log(3) ≈ 1.26这意味着科赫雪花具有介于1和2之间的分数维度。

在每次迭代后,我们将图像分成四个相似的小三角形,并且每个小三角形都比原来的三角形小1/3倍。

电子科技大学数学实验实验报告(含详细程序和实验数据)-Koch分形雪花,计算瑞典国土,计算我国海岸线长度

电子科技大学数学实验实验报告(含详细程序和实验数据)-Koch分形雪花,计算瑞典国土,计算我国海岸线长度

Koch 分形雪花面积计算的数学实验报告2012年4月6日绘制Koch 分形雪花,分析其边数及面积规律实验内容取周长为10的正三角形为初始元。

第一步(N=1):将边长三等分,并以中间的一份为底边构造正三角形,去掉该三角形的底边,将两腰与剩下的两份相连,得到生成元。

原三角形每条边都用生成元替换,得到具有6个凸顶点的12边形。

第二步(N=2):对第1步得到的图形,同样将其边长三等分,并以中间的一份构造正三角形,去掉该三角形的底边,将两腰与两边的两份相连,得到生成元。

原12边形的每条边都用生成元替换,得到24个凸顶点的48边形。

如此方法,一直做下去,当∞→N 时便得到了Koch 分形雪花。

实验目的1.算法描述Koch 分形雪花2.证明Koch 分形雪花图Kn 的边数为143-⨯=n n L3.求Koch 分形雪花图Kn 的面积)(lim n N K area ∞→实验原理1. Koch 分形雪花的绘制过程与Koch 曲线的构造过程类似。

事实上,Koch 分形雪花是由三条三次Koch 曲线组成的。

Koch 曲线的构造:由一条线段产生四条线段,由n 条线段迭代一次后将产生4n 条线段,算法针对每一条线段逐步进行,将计算新的三个点。

第一个点位于线段的三分之一处,第三个点位于线段的三分之二处,第二个点以第一个点为轴心,将第一和第三个点形成的向量正向旋转ο60而得,正向旋转由正交矩阵⎪⎭⎪⎬⎫⎪⎩⎪⎨⎧-3cos 3sin 3sin3cos ππππ完成。

三条三条三次Koch 曲线由初始向量P 构造。

流程图如下:⑴)/3P -2(P + P ←Q )/3;P -(P + P ← Q 121 31211 ⑵;A ×)Q -(Q + Q ← Q T1312 ⑶.Q ← P ;Q ← P ;Q ← P ;P ← P 342312252.由于Koch分形雪花是封闭的凸多边形,所以边数=顶点数=P矩阵的行数-1。

科赫雪花python代码

科赫雪花python代码

科赫雪花python代码科赫雪花是一种经典的分形图形,它由三条长度相等的线段组成一个等边三角形,并在每条边上重复执行以下过程:将线段分成三等份,去掉中间段,然后在剩余两段之间画出一个新的等边三角形。

这个过程可以无限重复下去,直到达到所需的精度。

Python是一种广泛应用于科学计算、数据分析和人工智能领域的编程语言。

在Python中实现科赫雪花可以通过递归函数来完成。

下面将介绍如何使用Python代码实现科赫雪花。

1. 导入必要的库在Python中,我们需要导入turtle库来绘制图形。

turtle库是Python自带的绘图库,可以通过简单的命令来控制海龟绘制图形。

import turtle2. 定义递归函数接下来我们需要定义一个递归函数来生成科赫雪花。

该函数需要接受三个参数:线段长度、阶数和海龟对象。

def koch(length, order, t):if order == 0:t.forward(length)else:for angle in [60, -120, 60, 0]:koch(length / 3, order - 1, t)t.left(angle)3. 绘制科赫雪花最后,我们需要定义一个主函数来调用递归函数并绘制科赫雪花。

在这个主函数中,我们首先创建一个海龟对象,并设置它的初始位置和朝向。

然后,我们调用递归函数来生成科赫雪花,并使用turtle.done()命令来保持窗口不关闭。

def main():t = turtle.Turtle()t.speed(0)t.penup()t.goto(-150, 90)t.pendown()for i in range(3):t.right(120)turtle.done()完整代码如下:import turtledef koch(length, order, t):if order == 0:t.forward(length)else:for angle in [60, -120, 60, 0]: koch(length / 3, order - 1, t) t.left(angle)def main():t = turtle.Turtle()t.speed(0)t.penup()t.goto(-150, 90)t.pendown()for i in range(3):t.right(120)turtle.done()if __name__ == '__main__':main()总结通过以上Python代码,我们可以轻松地生成科赫雪花。

matlab科赫曲线程序实现

matlab科赫曲线程序实现

matlab科赫曲线程序实现
Matlab科赫曲线是指由矢量曲线围成的闭合的几何图形,这些曲线被称为Koch曲线。

Matlab科赫曲线可以用数学方法表达,也可以用matlab脚本实现。

本文将简要介绍Matlab科赫曲线的编程实现。

Matlab科赫曲线的编程实现主要共分三步:首先,定义科赫曲线函数等参数;其次,定义并初始化最终图形数据;第三步,编写循环绘制代码。

首先,定义科赫曲线函数和参数:科赫曲线函数f,数值n(n为迭代次数);其次,根据科赫曲线的迭代规律,定义并初始化最终图形数据;第三步,编写循环绘制代码,使用for循环将每个迭代计算出来的曲线数据绘制出来,完成绘图。

综上所述,matlab科赫曲线实现比较简单,主要就是定义函数及参数、定义并初始化最终图形曲线数据,再循环绘制函数的曲线将科赫曲线绘制出来。

绘制的科赫曲线越多,曲线间的联系越密切,图形外观效果也会越好。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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。

相关文档
最新文档