数学实验 实验十二 迭代 (2) --分形
迭代与分形
实验名称:迭代与分形专业:信息工程班级:09级四班姓名:序号:29,38提交日期:2011年4月29日一、实验目的与要求1.认识Fibonacci数列,体验发现其通项公式的过程;2.了解matlab软件中进行数据显示与数据拟合的方式;3.掌握matlab软件中plot, polyfit等函数的基本用法;4.提高对数据进行分析与处理的能力。
二、问题描述几何学研究的对象是客观世界中物体的形状。
传统欧氏几何学的研究对象,都是规则并且光滑的,比如:直线、曲线、曲面等。
但客观世界中物体的形状,并不完全具有规则光滑等性质,因此只能近似当作欧氏几何的对象,比如:将凹凸不平的地球表面近似为椭球面。
虽然多数情况下通过这样的近似处理后,能够得到符合实际情况的结果,但是对于极不规则的形态,比如:云朵、烟雾、树木等,传统的几何学就无能为力了。
如何描述这些复杂的自然形态?如何分析其内在的机理?这些就是分形几何学所面对和解决的问题。
三、问题解决(1)对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形图称为Koch雪花。
编制程序绘制出它的图形,并计算Koch雪花的面积,以及它的分形维数。
(2)自己构造生成元(要有创意),按照图形迭代的方式产生分形图,用计算机编制程序绘制出它的图形,并计算其分形维数。
1、程序如下:function plottrkoch(a,k)%函数,a为迭代0次的三角形的边长,k为迭代次数p=[0 0;a 0;a/2 a/2*sqrt(3);0 0];n=3;A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)];for s=1:kj=0;for i=1:nq1=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;endn=4*n;clear pp=[r;q2];endmianji=sqrt(3)*(1+3*(1-(4/9)^k)/5)/4*a^2%计算迭代k次后的面积大小weishuD=log(4)/log(3)%计算维数plot(p(:,1),p(:,2))axis equal当k=1时当k=3时当k=5时因为是Koch曲线,所以维数d=ln4÷ln3=1.2619计算面积:假设最初的正三角形边长为1,则其周长为,面积为。
迭代·混沌·分形
迭代·混沌·分形柴文斌(四川省遂宁中学校629000)一、课例背景在20世纪下半叶,计算机的“魔杖”不断制造出新的数学分支,它最拿手的迭代计算引出了“混沌学”,接着又导致了分形几何的产生. 分形的思想和方法在模式识别,自然图象的模拟,信息讯号的处理,以及金融模型,艺术的制作等领域都取得了极大的成功.二、教学目标①本课例按《新课标》的要求,通过分形为载体,引起学生深厚的兴趣,在探究过程中,浅介数学新思想、新发展,同时让学生发现数学美,激发他们勇敢地追求美,主动地创造美,从而陶冶他们的情操,培养他们创新的精神.②总结平常练习过的从迭代、分形为背景数学试题,让他们用联系、发展的眼光,体会“背景深刻,方法独到”高考压轴题设计意图,明白“基础扎实,能力到位”明确要求.三、教学重点①应用计算机让学生感受分形图之美妙及形成数学原理.②分析分形为背景数学试题,形成高观点下审视数学问题.四、教学难点①迭代、混沌、分形定义度的把握.②Julia集、Mandelbrot集及其特征.五、教学过程(一)美丽的分形图形运用多媒体展放《孔雀开屏》等11幅分形艺术作品.师:这些美丽图形自然而优美,纷繁而有序,放射出诱人的色彩,在绚丽的色彩变化背后有几分神秘,似乎没有人会对这些图形无动于衷,你们相信,这些美妙的图形是运用数学知识,通过计算机构造出来的吗?是如何构造的呢?我们还得从函数迭代说起!(二)函数的迭代问题1:计算:①x n n sin lim ∞→ ②=∞→x n n cos lim 问题2:211n n x x +=-11=x轨道:1,0,-1,0,-1,……5.02=x轨道:0.5,―0.75,―0.4375,―0.80859,…―1,0,―1,0,-1问题3:①有没有这样一个初态把它代入211-+=n n x x ,结果不变吗?· ·A B251- 251+ ②618.11=x 写出系统轨道③619.11=x 写出系统轨道问题4:二次函数2)(z z f =进行迭代 ①i z 211=,写出系统轨道 ②i z +=11,写出系统轨道问题5:2)(z z f =且1||0<z求证:1|)(|0<z f证明:i y x z 000+=且1||0<z|2||)(|0020200i y x y x z F +-=20022020)2()(y x y x +-=22020)(y x +=20||z = 因此,在区域1||00<<z 中,1|||)(|00<<z z F ,这就意味着2)(z z F =的每一次迭代,即21n n z z =+都会使z 向靠近0的方向移动,我们说z 向0收敛,或是z 的吸引号,若1||0>z 近似于上面的结论,会发现,经过迭代z 会趋向于∞.若1||0=z ,很明显,z 是平面上单位圆上的点. 于是我们发现复平面上可分为两个区域,一个区域便落在其中的点向0吸引与逼近,而另一个区域便落在其中的点∞逃逸,它们分界线便是1)(0=z F 的单位圆,就是Julia 集.(三)混沌①C z z f +=2)(,0≠C 时,其吸引子不再是0,而是一个区域被吸进去的点会遍整个区域,我们称这个区域为混沌区. 同时,分界线不再是1|)(|0=z F 的单位圆,它是一个不规则不光滑的分界线,就像一个孤岛的海岸线一样.②《三五历经》中说:“天地混沌如鸡子,盘古生其中,万人千岁,天地开辟,阳清为天,阴浊为地,盘古在其中,一日九变;神于天,圣于地. 天月高一丈,地日厚一丈,盘古月长一丈,如此万人千岁,天数极高,地数极深,盘古极长.”③宇宙起源的问题.(四)分形不使系统发散的那么初态的集合组成“内集”,其他的“初态”组成“外集”,内集与外集的边界叫做Julia 集.问题6:运用多媒体展示:i z z f 12.0765.0)(2+-=(一个完全不连通)i z z f +=2)((连通) 特点:处处不光滑,自相似性、精细结构②Mandelbrot 集我们看到,当C 在复平面变化时它的Julia 集也在复平面内变化,而且这些集合可以分成连通与不连通两类. 如果参数C 所对应的Julia 集是连通的,我们就将这个C 染成黑色,否则染上白色,这样得到的黑色集就叫做以参数C 为元素的Mandelbrot 集.问题7:运用多媒体展示Mandelbrot 集,可以看出它有非常复杂的结构,这一结构的明显特征是一个主要心形图与一系列圆盘形的“芽苞”连接在一起,并且,每一个芽苞又被一细节更细小的“芽苞”所环绕,以至无穷. 同时,这些精细的芽苞分支都带有与整体曼德布罗特集相似的微型拷贝.(五)试题研究问题8:将一个单位正三角形一分为四,且挖去中间一个小正三角形,然后再上面三个小三角形中重复上面的步骤. 设初始三角形的面积为1. C n 、S n 分别表示第n 次操作各图形的周长和面积.①求C n 、S n 的表达式.②n 趋于无穷时,C n 、S n 趋于什么?问题9:记P 0表示面积为1的等边三角形,P k+1是对P k 进行如下操作得到:将P k 的每条边三等份,以每边中间部分的线段为边,向外作等边三角形,再将它中间部分的线段去掉,记S n 为曲线P n 所围成图形的面积.①求数列S n 的通项公式.②n n S ∞→lim 问题10:一种树形图为:第一层是一条与水平线垂直的线段长度为1,第二层与第一层线段的前端作两条与线段都成135°角的线段,长度为其一半,第三层按第二层的方法滚动,在第二层线段前端生成两条线段,重复前面的作法,作图到第n 层,称水平线到第n 层最高点的距离为到树形图的第n 层高度,试求:①树形图的第三层及第四层总高度②树形图的第n 层总高度h n③n n h ∞→lim问题11:⎪⎩⎪⎨⎧-+)1(221)(x x x f 121210≤<≤≤x x 定义 *∈=N n x f f f x f n ))(()(①求)152(2007f ②]}1,0[,)(|{15∈==x x x f x B求证:B 中至少含有9个元素问题12:如右图是某计算机的程序框图.(I)求打印出来的x 的值;(II)求打印出来的z 的值;(III)若将程序框图中的语句(9)“n=2007?”改为“94≥z ?”,则张三同学说这是死循环(即一直无限算下去而没有结果),而李四说不会是死循环,你认为哪个同学说的正确?并说出你的理由.问题13:用牛顿迭代法求根.17世纪,牛顿创立了一种依靠简单计算求解方程根的方法.假设你知道某一方程0)(=x f 的近似解为0x ,此0x 接近于你还不知道的真正解x ,从而可以计算出相应的0)(=x f 及其导数0)(0=x f 的值. 由于0x 接近于x ,所以导数)(0x f '可近似写成00)()(x x x f x f --. 又因为0)(=x f 所以此导数为:000)()(x x x f x f --='] 于是有 )()(000x f x f x x '-=-则修正一次后的近似解为)()(001x f x f x x '-= 重复这个过程得到序列数n x ,它会从极快的速度收敛于此方程的真正解.请你用上述方法 81)(3-=x x f 6.00=x 时①求2x ,3x ,4x . ②100001|21|<-n x 时,n 的范围. 问题14:用多媒体展示基于牛顿迭代法的01=-n z 迭代图形.问题15:(角谷猜想) 任给一个自然数,若它是偶数则将它除以2;若它是奇数,则将它乘3再加1,反复这样运算,经有限步之后其结果必为1. 问题16:分形几何上物理学是怎样?六、课例设计反思:1.数学≠数学题. 数学教育,我想不仅要让学生认识到数学是一门科学,数学是工具,数学是技术,而且应当让他们认识到:作为人类精神、智慧与理性的最高代表之一,数学不仅是文化的重要组成部分,还在文化发展中占据着举足轻重的地位,数学是美的,数学是有意思的.2.Shirley(1986)提出,数学分为形式和非形式,应用和纯粹的,我们平常看到多数中小学讲授的数学知识是形式纯数学,这对学生形成完善的数学的文化观有缺陷,新课标模块设计也充分考虑到这一缺陷,本课例对非形式化教学,研究性学习作些探讨.。
数学实验综合实验报告
一、实验目的:1、初步认识迭代,体会迭代思想的重要性。
2、通过在mathematica 环境下编写程序,利用迭代的方法求解方程的根、线性方程组的解、非线性方程组的解。
3、了解分形的的基本特性及利用mathematica 编程生成分形图形的基本方法, 在欣赏由mathematica 生成的美丽的分形图案的同时对分形几何这门学科有一个直观的了解。
从哲理的高度理解这门学科诞生的必然性,激发读者探寻科学真理的兴趣。
4、从一个简单的二次函数的迭代出发,利用mathematica 认识混沌现象及其所 蕴涵的规律。
5、.进一步熟悉Mathematic 软件的使用,复习总结Mathematic 在数学作图中的应用,为便于研究数学图像问题提供方便,使我们从一个新的视角去理解数学问题以及问题的实际意义。
6、在学习和运用迭代法求解过程中,体会各种迭代方法在解决问题的收敛速度上的异同点。
二、实验的环境:学校机房,mathematica4环境三、实验的基本理论和方法:1、迭代(一)—方程求解函数的迭代法思想:给定实数域上光滑的实值函数)(x f 以及初值0x 定义数列1()n n x f x +=, ,3,2,1,0=n , (1)n x , ,3,2,1,0=n ,称为)(x f 的一个迭代序列。
(1)方程求根给定迭代函数)(x f 以及初值0x 利用(1)迭代得到数列n x , ,3,2,1,0=n .如果数列收敛到某个*x ,则有)(**x f x =. (2)即*x 是方程)(x f x =的解。
由此启发我们用如下的方法求方程0)(=x g 的近似解。
将方程0)(=x g 改写为等价的方程)(x f x =, (3) 然后选取一初值利用(1)做迭代。
迭代数列n x 收敛的极限就是方程0)(=x g 的解。
为了使得迭代序列收敛并尽快收敛到方程0)(=x g 的某一解的条件是迭代函数)(x f 在解的附近的导数将的绝对值尽量小,因此迭代方程修订成x x f x h x )1()()(λλ-+== (4) 选取λ使得|)(|x h '在解的附近尽量小. 为此, 我们可以令,01)()(=-+'='λλx f x h得)(11x f '-=λ. 于是 1)()()(-'--=x f x x f x x h . 特别地,如果取x x g x f +=)()(, 则可得到迭代公式 .,1,0,)()(1 ='-=+n x g x g x x n n n n (5) (2)线性方程组的数值解的迭代求解理论与矩阵理论给定一个n 元线性方程组⎪⎩⎪⎨⎧=++=++,,1111111n n nn n n n b x a x a b x a x a (6)或写成矩阵的形式,b Ax = (7) 其中)(ij a A =是n 阶方阵,T n x x x x ),,(21 =及T n b b b b ),,,(21 =均为n 维列向量.熟知,当矩阵A 的行列式非零时,以上的方程组有唯一解.如何有效,快速地寻求大型的线性方程组的数值解释科学工程计算中非常重要的任务.而迭代法常常是求解这些问题的有效方法之一。
分形、混沌与迭代
试验十二 分形、混沌——迭代一、试验目的:1、Koch 曲线、Sierpinski 三角形、Cantor 集的计算机实现2、掌握用迭代、递归生成分形3、用Matlab 观察分岔与混沌现象二、分形相关程序:1、从一条直线段开始,将线段中间的三分之一部分用一个等边三角形的两边代替,形成山丘形图形如下在新的图形中,又将图中每一直线段中间的三分之一部分都用一个等边三角形的两条边代替,再次形成新的图形如此迭代,形成Koch 分形曲线。
算法分析:考虑由直线段(2个点)产生第一个图形(5个点)的过程。
图1中,设1P 和5P 分别为原始直线段的两个端点,现需要在直线段的中间依次插入三个点2P ,3P ,4P 。
显然2P 位于线段三分之一处,4P 位于线段三分之二处,3P 点的位置可看成是由4P 点以2P 点为轴心,逆时针旋转600而得。
旋转由正交矩阵 ⎪⎪⎪⎪⎭⎫ ⎝⎛-=)3cos()3sin()3sin()3cos(ππππA 实现。
算法根据初始数据(1P 和5P 点的坐标),产生图1中5个结点的坐标。
结点的坐标数组形成一个25⨯矩阵,矩阵的第一行为1P 的坐标,第二行为2P 的坐标……,第五行为5P 的坐标。
矩阵的第一列元素分别为5个结点的x 坐标,第二列元素分别为5个结点的y 坐标。
进一步考虑Koch 曲线形成过程中结点数目的变化规律。
设第k 次迭代产生的结点数为k n ,第1+k 次迭代产生的结点数为1+k n ,则k n 和1+k n 中间的递推关系为341-=+k k n n 。
实验程序及注释:p=[0 0;10 0]; %P 为初始两个点的坐标,第一列为x 坐标,第二列为y 坐标 n=2; %n 为结点数A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)]; %旋转矩阵for k=1:4d=diff(p)/3; %diff 计算相邻两个点的坐标之差,得到相邻两点确定的向量%则d 就计算出每个向量长度的三分之一,与题中将线段三等分对应m=4*n-3; %迭代公式q=p(1:n-1,:); %以原点为起点,前n-1个点的坐标为终点形成向量p(5:4:m,:)=p(2:n,:); %迭代后处于4k+1位置上的点的坐标为迭代前的相应坐标p(2:4:m,:)=q+d; %用向量方法计算迭代后处于4k+2位置上的点的坐标p(3:4:m,:)=q+d+d*A'; %用向量方法计算迭代后处于4k+3位置上的点的坐标p(4:4:m,:)=q+2*d; %用向量方法计算迭代后处于4k 位置上的点的坐标 n=m; %迭代后新的结点数目endplot(p(:,1),p(:,2)) %绘出每相邻两个点的连线axis([0 10 0 10])实验数据记录:由上面的程序,可得到如下的Koch 分形曲线:2、由四边形的四个初始点出发,对于四边形的每条边,生成元如下:可得到火焰般的图形。
3-迭代与分形
试验二迭代与分形一、实验目的与要求1.了解分形几何的基本情况;2.了解通过迭代方式,产生分形图的方法;3.了解matlab软件中简单的程序结构;4.掌握matlab软件中plot, fill等函数的基本用法;二、问题描述几何学研究的对象是客观世界中物体的形状。
传统欧氏几何学的研究对象,都是规则并且光滑的,比如:直线、曲线、曲面等。
但客观世界中物体的形状,并不完全具有规则光滑等性质,因此只能近似当作欧氏几何的对象,比如:将凹凸不平的地球表面近似为椭球面。
虽然多数情况下通过这样的近似处理后,能够得到符合实际情况的结果,但是对于极不规则的形态,比如:云朵、烟雾、树木等,传统的几何学就无能为力了。
如何描述这些复杂的自然形态?如何分析其内在的机理?这些就是分形几何学所面对和解决的问题。
三、问题分析在我们的世界上,存在着许多极不规则的复杂现象,比如:弯弯曲曲的海岸线、变化的云朵、宇宙中星系的分布、金融市场上价格的起伏图等,为了获得解释这些极端复杂现象的数学模型,我们需要认识其中蕴涵的特性,构造出相应的数学规则。
曼德尔布罗特(Mandelbrot)在研究英国的海岸线形状等问题时,总结出自然界中很多现象从标度变换角度表现出对称性,他将这类集合称作自相似集,他发现维数是尺度变换下的不变量,主张用维数来刻划这类集合。
Mandelbrot 将这类几何形体称为分形(fractal),意思就是不规则的、分数的、支离破碎的,并对它们进行了系统的研究,创立了分形几何这一新的数学分支。
Mandelbrot 认为海岸、山峦、云彩和其他很多自然现象都具有分形的特性,因此可以说:分形是大自然的几何学。
分形几何体一般来说都具有无限精细的自相似的层次结构,即局部与整体的相似性,图形的每一个局部都可以被看作是整体图形的一个缩小的复本。
早在19世纪就已经出现了一些具有自相似特性的分形图形,比如:瑞典数学家科赫(von Koch)设计的类似雪花和岛屿边缘的一类曲线,即Koch曲线;英国植物学家布朗通过观察悬浮在水中的花粉的运动轨迹,提出来的布朗运动轨迹。
分形
k
即是所谓的Koch曲线 Koch曲线的修改规则R是将每一条直线段F0用一 条折线F1替代,称F1为该分形的生成元。分形图形的 基本特性完全由生成元决定。
分形树 分形树的生成方法是:将一条线段三等分,在 等分点上各画一条长度为原线段长度三分之一的线 段,该线段与元线段成固定的夹角。
尽管分形几何的提出只有三十年左右的时间, 但它已经在自然科学的各个领域如数学、物理、化 学、地理、天文、材料、生命乃至经济、社会、艺 术等极其广泛的领域有着广泛的应用。 该实验的目的是以迭代的观点介绍分形的基本 特性以及生成分形图形的基本方法。
生成元产生的分形图形 由IFS(迭代函数系)所生成的分形图形
Sierpinski垫 w a 1 0.5 2 0.5 3 0.5 b 0 0 0 c 0 0 0 d e f P 0.5 0 0 0.333 0.5 0.25 0.433 0.333 0.5 0.5 0 0.333
用IFS迭代绘制分形图形的方法如下: 首先设定迭代的可视区域为 V {( x , y ) | x min x x max , y min y y max } 再按分辨率大小的要求将V分成a*b的网格 网格点为 ( x i , y i )
1 生成元
由生成元产生的分形是一种规则分形,是数学 家按一定规则构造出来的,相当于物理中的模型。 这类图形的构造方式都有一个共同的特点:
最终图形F都是按照一定的规则R通过 对初始图形F0不断修改得到的。
最具代表性的图形有Koch雪花 曲线、分形树
Koch曲线的构造方式是: 给定一条直线段F0,将该直线三等分,并将中间 的一段用以该线段为边的等边三角形的另外两边代替, 得到图形F1,然后,再对图形F1中的每一小段都按上 述方式修改,以至无穷。则最后得到的极限曲线
数学实验迭代:分形
迭代:分形姓名:学号:班级:数学与应用数学4班实验报告实验目的:以迭代的观点介绍分形的基本特性以及生成分形图形的基本方法,使读者在欣赏美丽的分形图案的同时对分形几何这门学科有一个直观的了解,并从哲理的高度理解这门学科诞生的必然,激发读者探寻科学真理的兴趣。
实验环境:Mathematica软件实验基本理论和方法:在19世纪末及20世纪初,一些数学家就构造出一些边界形状极不光滑的图形,而这类图形的构造方式都有一个共同的特点,即最终图形F都是按照一定的规则R通过对初始图形不断修改得到的。
其中最有代表性的图形是Koch曲线,Koch曲线的构造方式是:给定一条直线段,将该直线段三等分,并将中间的一段用以该线段为边的等边三角形的另外两条边代替,得到图形,然后再对图形中的每一小段都按上述方式修改,以至无穷。
则最后得到的极限曲线即是所谓的Koch曲线。
生成元:Koch曲线的修改规则R是将每一条直线段用一条折线代替,我们称为该分形的生成元。
分形的基本特性完全由生成元确定,因此,给定一个生成元,我们就可以生成各种各样的分形图形。
Julia集绘制方法:(1)设定初值p,q,一个最大的迭代次数N,图形的分辨率的大小a,b,和使用的颜色数(如K=16)(或者给定灰度级L);(2)设定一个上界值;(3)将矩形区域分成的网格,分别以每个网格点,,,,作为初值利用riter做迭代(实际上,只需对满足的初值点做迭代)。
如果对所有,,则将图形的像素点用黑色显示,否则,如果从迭代的某一步开始有,则用modK种颜色显示相应像素(或者用相应的灰度级显示)。
Mandelbrot集绘制方法:设定一个最大的迭代次数N,图形的分辨率的大小a,b,和使用的颜色数(如K=16)(或者给定灰度级L);(2)设定一个上界值;(3)将矩形区域分成的网格,分别以每个网格点,,,,作为参数值利用riter做迭代(实际上,只需对的初值点做迭代),每次迭代的初值均取为。
ppt02迭代分形图形
%程序1 u=2.6:0.001:4; x=0.6; for j=1:150, x=u.*(x-x.^2); end for i=1:100 x=u.*(x-x.^2); plot(u,x,’r.’) hold on; end 程序运行时间 0.28秒。不保留旧 的X 值,而是直接用它画图。
%程序2 u=2.6:0.001:4; X=ones(250,1401); X(1,:)=0.6*X(1,:); for j=1:250 X(j+1,:)=u.*(X(j,:)-X(j,:).^2); end plot(u,X(150:end,:),’r.’) 运行时间0.15秒,比程序1快。 保 留 所 有 X 值 , 每 次 计 算 的X 值 生成矩阵的一行元素,最后用矩 阵X 的后150行作图,程序可读性 强。
u=uuu; subplot(3,3,n+1); end
plot(u), axis([-0.5,0.5,0,1])
3.1.3 树程序3 以矩阵元素赋值的方法计算新点坐标,减少一重循环。 new=[0,i]; subplot(3,3,1); plot(new); axis([-0.5,0.5,0,1 ]); for k=1:8 old=new; n=length(old)/2-1; diff=(old(2:2:end)-old(1:2:end-1))/3; p1=old(1:2:end-1)+diff; p2=p1+diff; lp=p1+diff*(sqrt(3)/2+1/2*i); rp=p2+diff*(sqrt(3)/2-1/2*i); new(2:10:10*n+2)=p1; %第一次循环计算第2,12,22,...点 new(3:10:10*n+3)=p1; %第一次循环计算第3,13...点 new(4:10:10*n+4)=lp; new(5:10:10*n+5)=p1; new(6:10:10*n+6)=p2; new(7:10:10*n+7)=p2; new(8:10:10*n+8)=rp; new(9:10:10*n+9)=p2; new(10:10:10*(n+1))=old(2:2:end); %10,20,... new(1:10:10*n+1)=old(1:2:end-1); %1,11,21.... subplot(3,3,k+1), plot(new) axis([-0.5,0.5,0,1 ]); end 3.1.4 树程序4(运行时间0.21秒) 每个图形缩小为原来的1/3,再移动位置, 添加到原图形。参看右边的电影。 u=[0,i]; subplot(3,3,1); plot(u) for k=2:8 m=u/3;
迭代——分形
这类图形的构造方式都有一个共同的特点,即最终 图形F都是按照一定的规则R通过对初始图形F0不断修 改得到的。其中最具有代表性的图形是Koch曲线。
7/48
1. Koch曲线
Koch曲线的构造方式是:
给定一条直线段F0,将该直线三等分,并将中间的 一段用以该线段为边的等边三角形的另外两条边替代, 得到图形F1
22/48
5. Weierstrass函数
W ( x)
k 1
( s 2 ) k
sin( x )
k
λ > 1, 1 < s < 2
0.6 0.3 0.2 0.1 -1 -0.5 -0.1 -0.2 -0.3 -0.6 0.5 1 -1 -0.5 -0.2 -0.4 -1 0.4 0.2 0.5 1
0.5
1
-1
-0.5 -0.5
1 -1 -0.5 -2 0.5 1 -0.5
0.5 -5 -10 -15
1
-4
23/48
代码如下:
lambda = 3; nmax = 30; s = 1.0; Plot[Sum[lambda^((s - 2)*k)*Sin[lambda^k*x], {k, 1, nmax}], {x, -1, 1}];
可以毫不夸张地说,“分形是大自然的几何学”, “分形处处可见”。
本讲的目的是以迭代的观点介绍分形的基本特性以 及生成分形图形的基本方法,使读者在欣赏美丽的分 形图案的同时对分形几何这门学科有一个直观的了解, 并从哲理的高度理解这门学科诞生的必然,激发读者 探寻科学真理的兴趣。
数学实验教学大纲(李尚志)
《数学实验》教学大纲课程名称:数学实验英文名称:Experiments in Mathematics 总学时: 60 学分: 3开课学期:大一(下)或大二《数学实验》是在我国高等学校中新开设的一门课程。
现在还处于试点和摸索阶段,有许多不同的想法和作法. 现阶段应当鼓励各种不同的想法和作法, 各自进行探索和试点. 可以而且应当相互交流, 但不必统一, 也不必争论哪种做法更好. 现在首先是要先干起来, 经过若干年实践去积累和总结经验, 根据实践的效果来逐渐完善和成熟. 本教学大纲反映的是我们在中国科技大学试点创建数学实验课程的指导思想和具体做法,只能算是一家之言,供兄弟学校参考。
一.教学目的数学实验课程的教学对象, 是全国所有高校, 不分理工农医等科类的本科生。
课程目的, 是使学生掌握数学实验的基本思想和方法,即不把数学看成先验的逻辑体系, 而是把它视为一门“实验科学”, 从问题出发,借助计算机, 通过学生亲自设计和动手, 体验解决问题的过程, 从实验中去学习、探索和发现数学规律。
既然是实验课而不是理论课, 最重要的就是要让学生自己动手, 自己借助于计算机去“折腾”数学, 在“折腾”的过程中去学习, 去观察, 去探索, 去发现,而不是由老师教他们多少内容。
既不是由老师教理论, 主要的也不是由老师去教计算机技术或教算法。
不着意追求内容的系统性、完整性。
而着眼于激发学生自己动手和探索的兴趣。
二.教学内容的确定从问题出发组织教学内容。
虽然有意识让学生通过实验学会一些基本的方法, 但是并不以这些方法为线索组织课程内容。
而是设计了一些能够引起学生兴趣的问题, 这些问题的引入不需很深的数学知识,便于入门,但这些问题具有深刻的内涵,包括科学发展历史上经典的数学问题,以及具有应用价值的问题。
每个实验围绕解决一个或几个问题来展开, 教学生使用若干种方法来解决所给的问题, 在解决问题中学习和熟悉这些方法, 自己观察结果, 得出结论。
(完整word版)几何画板迭代详解之迭代与分形几何
几何画板迭代详解之:迭代与分形几何佛山市南海区石门中学谢辅炬分形的特点是,整体与部分之间存在某种自相似性,整体具有多种层次结构。
分形图片具有无可争议的美学感召力,特别是对于从事分形研究的科学家来说。
欣赏分形之美当然也要求具有一定的科学文化知识,但相对而言,分形美是通俗易懂的.分形就在我们身边,我们身体中的血液循环管道系统、肺脏气管分岔过程、大脑皮层、消化道小肠绒毛等等都是分形,参天大树、连绵的山脉、奔涌的河水、漂浮的云朵等等,也都是分形。
人们对这些东西太熟悉了,当然熟悉不等于真正理解。
分形的确贴近人们的生活,因而由分形而来的分形艺术也并不遥远,普通人也能体验分形之美。
因为分形几何的迭代的原像一般不止一个,而且均为多映射迭代,为了叙述的方便,我们先作以下两个约定。
1.用(A,B,C)表示有顺序的两点A、B和C.2.(A,B,C)(D,E,F,),(G,H,I)表示A映射到D,B映射到D,C映射到F,然后添加映射A映射到G,B映射到H,C映射到I,如此类推。
【Sierpinski三角形】波兰著名数学家谢尔宾斯基在1915-1916年期间,为实变函数理论构造了几个典型的例子,这些怪物常称作“谢氏地毯"、“谢氏三角”、“谢氏海绵”、“谢氏墓垛"。
如今,几乎任何一本讲分形的书都要提到这些例子。
它们不但有趣,而且有助于形象地理解分形。
著名的Sierpinski三角形,它是很有代表性的线性分形,具有严格的自相似特点。
不断连接等边三角形的中点,挖去中间新的小三角形进行分割——-随着分割不断进行Sierpinski三角形总面积趋于零,总长度趋于无穷。
Sierpinski三角形在力学上也有实用价值,Sierpinski 三角形结构节省材料,强度高,例如埃菲尔铁塔的结构与它就很相似。
【步骤】1.在平面上任意画一个三角形ABC,取三边中点为D、E、F,连接DEF.2.新建参数n=33.顺次选择B,C,A三点和参数n,作深度迭代,(B,C,A)(D,F,A)⇒。
数学实验之十二迭代---分形
Z k 1 wi ( zk ), k 0,1,...
则点集 {Z k } 的聚点集合称为一个IFS吸引子。
• 用IFS绘制分形的方法 1、设图形可视区域为
V [ xmin , xmax ] [ ymin , ymax ]
假设采用L 级灰度的图像绘制,总迭代 次数为N。 2、将 V 分成 a b 的网格,格点为 ( xi , y j ) 用 Vij [ xi , xi 1 ] [ y j , y j 1 ] 表示矩形区域。用 ij 表示在N次迭代中落入 Vij 中点的个数。 记 max ij 则象素 (i,j)的灰度为
3、函数迭代产生的分形
用Z表示复数,定义在复平面上的函数 f(Z)称为复变函数。 任意给定初始复数值 Z 0 ,定义复数序列
Z n1 f (Z n ), n 0,1,2, (1)
对于什么样的初始值 Z 0 ,复数序列 {Z n } 收敛或有界?
• Julia集
考虑复变函数迭代
2 Z n 1 Z n c,
按上述方式迭代数百次,呈现极不规则 的图形。故称为混沌游戏。
• IFS迭代 IFS--Iterated Function System 取定 n 个仿射变换
wi ( Z ) ai Z bi , i 1,2,..., n
以及 n 个概率 p1, p2 ,..., pn ( p1 ... pn 1) 任给初值 Z 0 ,以概率 pi 选取变换 wi 进行迭代
5、分形欣赏
分形时装
分形音乐
• 相关主页: • / SiliconValley/Haven/4386 • /fxiy/index.htm
分形影院
• /fxyy/fs/fs005.htm
分形实验报告
一、实验目的1. 理解分形的基本概念及其在自然界和科学中的应用。
2. 掌握分形图形的生成方法,包括迭代和递归。
3. 通过计算机实现Koch曲线、Sierpinski三角形和Cantor集等经典分形图形。
4. 分析分形图形的几何特性,如自相似性、无限细节和分形维数。
二、实验原理分形是一种具有无限复杂性和自相似性的几何形状。
它可以通过迭代和递归的方法生成,具有以下特点:1. 自相似性:分形图形的任何部分都与整体具有相似的结构。
2. 无限细节:分形图形在放大后仍然具有复杂的结构。
3. 分形维数:分形维数介于传统几何维数(如一维、二维、三维)之间,可以用来描述分形图形的复杂程度。
三、实验内容1. Koch曲线实验目的:生成Koch曲线,观察其自相似性和无限细节。
实验步骤:- 选择一条初始线段。
- 将线段等分为三部分,删除中间部分,并在两侧各添加一个等长的线段,形成60度角。
- 对新形成的四个线段重复上述步骤。
实验结果:通过迭代,Koch曲线逐渐呈现出复杂的结构,表现出自相似性和无限细节。
2. Sierpinski三角形实验目的:生成Sierpinski三角形,观察其自相似性和无限细节。
实验步骤:- 选择一个等边三角形作为初始图形。
- 在每个等边三角形的每个顶点处,向下作等边三角形的高,将其等分为三个小三角形。
- 保留中间的小三角形,删除其余部分。
实验结果:通过迭代,Sierpinski三角形逐渐呈现出复杂的结构,表现出自相似性和无限细节。
3. Cantor集实验目的:生成Cantor集,观察其分形维数和无限细节。
实验步骤:- 选择一个线段作为初始图形。
- 将线段等分为三部分,删除中间部分。
- 对新形成的两个线段重复上述步骤。
实验结果:通过迭代,Cantor集逐渐呈现出复杂的结构,具有无限细节。
其分形维数为ln(2)/ln(3) ≈ 0.6309,介于一维和二维之间。
四、实验结果与分析1. 通过实验,我们成功生成了Koch曲线、Sierpinski三角形和Cantor集等经典分形图形,验证了分形的基本概念和特性。
分形图形生成原理探究
分形图形生成原理探究随着计算机技术的不断发展,分形图形在数字艺术、自然科学和工程领域中得到广泛应用。
分形是一种具有自相似性质的数学对象,其生成原理深受人们的关注。
本文将探究分形图形的生成原理,介绍分形的基本概念,以及常用的分形生成算法。
一、分形的基本概念分形是一种具有自相似性质的几何图形。
即整体结构和局部细节之间存在某种相似关系,不论放大还是缩小,都可以看到相同的图形。
分形的自相似性质使得它们具有无限的细节和复杂度。
二、分形图形的生成原理1. 迭代运算迭代运算是生成分形图形的常用方法之一。
这种方法通过重复应用某种变换或映射规则,不断生成新的图形。
具体步骤如下:- 首先选定一个初始图形,例如一个简单的线段或几何形状。
- 然后根据一定的规则进行变换或映射操作,生成下一级的图形。
- 重复上述步骤,直到达到期望的分形效果。
迭代运算可以产生各种各样的分形图形,如科赫曲线、谢尔宾斯基三角形等。
2. 噪声函数噪声函数是通过随机性来生成分形图形的一种方法。
噪声函数可以产生随机性纹理或图案,并通过适当的参数调节,实现分形效果。
生成分形图形的基本步骤如下:- 首先定义一个噪声函数,它可以是简单的随机数生成器或更复杂的数学函数。
- 然后使用噪声函数来计算每个像素的数值或颜色,从而生成图像。
噪声函数可以用于生成山脉、云彩等具有分形特征的自然图像。
三、常用的分形生成算法1. 递归细分递归细分是一种通过使用分形规则进行逐级细分的方法。
它基于拆分和替代的原则,不断将图形细分为更小的部分,然后用更小的部分替代原有的部分。
递归细分可以生成多种复杂的分形图形,如分形树、雪花等。
2. 碎形图像编码碎形图像编码是一种基于碎形压缩理论的分形生成方法。
它通过找到一组变换规则和关联函数,将整个图像分割成小的区域,然后用适当的变换规则对每个区域进行编码。
这种方法可以生成高质量的分形图像,并用较小的存储空间保存。
3. 分形几何建模分形几何建模是一种通过将分形规则应用于三维空间中的几何体来生成分形图形的方法。
大学数学实验报告----迭代
数学实验报告综合实验迭代学院:数学与信息科学学院班级: 09级数学(4)班姓名:***学号:***综合实验——迭代给定实数域上光滑的实值函数()f x 以及初值0x 定义数列1(),0,1,n n x f x n +==⋅⋅⋅,n x ,0,1,n =⋅⋅⋅,称为()f x 的一个迭代数列.函数的迭代是数学研究中的一个非常重要的思想工具.哪怕是对一个相当简单的函数进行迭代,都可以产生异常复杂的行为,并由此而衍生了一些崭新的学科分支,如分型与混沌.同时,迭代在各种数值计算方法以及其他学科领域的诸多算法中处于核心的地位.我们将通过一系列实验介绍迭代在诸多领域的应用。
一、迭代(方程求解)二、迭代(分形)③按Shift 和Enter 键运行。
运行结果:redosierpinski ptlist_List : Blockt mp ,i,pnum Length ptlist3 ,For i 0,i pnum,i i 1,tmp Join t mp, ptlist3i 1,ptlist 3i 1 ptlist 3i 2 2, ptlist 3i 1 ptlist 3i 3 2, ptlist 3i 1 ptlist3i 2 2,ptlist 3i 2 ,ptlist 3i 2 ptlist 3i 3 2, ptlist 3i 1 ptlist 3i 3 2, ptlist3i 2ptlist3i 32,ptlist 3i 3 ;tmpshowsierpinski ptlist_List : Blockt mp ,i,pnum Length ptlist3 ,For i 0,i pnum,i i 1,AppendTo t mp,Polygonptlist3i 1,ptlist3i 2ptlist3i 3;Show G raphics t mp ,AspectRatio 1 GoldenRat po1 1,0 , 1,0 , 0,Sqrt 3;showsierpinski Nest r edosierpinski,po1,4三、复变函数迭代1.510.5-0.5-1-1.5-1.5-1-0.500.511.510.5-0.5-1-1.5-1.5-1-0.500.51 0.30.20.1-0.1-0.7-0.65-0.6-0.55-0.5-0.45四、迭代(混沌)五、迭代(几何形状的构造)。
分形和数据结构之迭代实现分形
分形和数据结构之迭代实现分形迭代实现分形之⼀:package ⽂雅0605;import java.awt.Color;import java.awt.FlowLayout;import java.awt.Graphics;import java.awt.Graphics2D;import javax.swing.JFrame;public class ring extends JFrame{public static void main(String[] args) {ring fl=new ring();fl.initUI();}public void initUI(){getContentPane().setBackground(Color.white);setTitle("ring");setSize(600,500);setDefaultCloseOperation(3);setLocationRelativeTo(null);setLayout(new FlowLayout());setVisible(true);Graphics g = getGraphics();//注意这⾥⼀定要在窗体可见之后才能调⽤((Graphics2D) g).setColor(Color.BLACK);ringListener fl = new ringListener();addMouseListener(fl);fl.setGraphics(g);}}package ⽂雅0605;import java.awt.Color;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;public class ringListener implements MouseListener {double x= 0, y = 0;private Graphics g;public Color color;public int i;public double x1, y1;public void setGraphics(Graphics gra) {g = (Graphics2D) gra;}public void mouseClicked(MouseEvent e) {if(e.getClickCount()==2){//双击double a = 1.40, b = 1.56, c = 1.40, d =-6.56;for (int i = 0; i < 100000; i++) {x1= d* Math.sin(a * x) - Math.sin(b * y);y1= c* Math.cos(a * x) + Math.cos(b* y);//int m = (int)(x1*10+200);//int n = (int)(y1*10+200);int m = (int) (x1* 20+300);int n = (int) (y1* 20+300);//固定了图形的位置//g.setColor(new Color(100, i %50 , i % 50));或者直接在窗体上((Graphics2D) g).setColor(Color.BLACK);设置颜⾊g.drawLine(m,n,m,n);//g.drawLine((int)x1*50+500,(int)y1*20+500,(int)x1*50+500,(int)y1*20+500);这种写法是错误的,图形的要求是要先算出结果再强制转型x=x1;y=y1;//迭代思维}x=0;y=0;//能够控制绘制图形的新⼀轮的循环}else{double a=-2,b=-2,c=-1.2,d=2;for (int i = 0; i < 100000; i++) {x1= (Math.sin(a * y) - Math.cos(b * x));y1= (Math.sin(c * x) - Math.cos(d* y));int m = (int) (x1* 50 +500);//乘数控制图形⼤⼩,加法控制图形的位置,但是范围要控制在第⼀象限,否则⽆法看到图形 int n = (int) (y1 *50 +500);g.drawLine(m,n,m,n);x=x1;y=y1;}x=0;y=0;}}public void mousePressed(MouseEvent e) {}public void mouseReleased(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}public static void main(String[] args) {}}输出结果::迭代实现分形之⼆:package ⽂雅0612;import java.awt.Color;import java.awt.FlowLayout;import java.awt.Graphics;import java.awt.Graphics2D;import javax.swing.JFrame;public class net extends JFrame {public static void main(String[] args) {net fl = new net();fl.initUI();}public void initUI() {getContentPane().setBackground(Color.black); setTitle("net");setSize(600, 500);setDefaultCloseOperation(3);setLocationRelativeTo(null);setLayout(new FlowLayout());setVisible(true);Graphics g = getGraphics();((Graphics2D) g).setColor(Color.BLUE);netListener fl = new netListener();addMouseListener(fl);fl.setGraphics(g);}}package ⽂雅0612;import java.awt.Color;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;public class netListener implements MouseListener {double x = 0, y = 0;private Graphics g;public int i;public double x1, y1;public void setGraphics(Graphics gra) {g = (Graphics2D) gra;}public void mouseClicked(MouseEvent e) {if (e.getClickCount() == 2) {// 双击for (int i = 0; i < 25000; i++) {double a = 0.4, b = 1, c = 0;// x1 = y - Math.signum(x) * Math.pow(Math.abs(b * x - c), 0.5);//到java⽬录中去寻找Math的应⽤,记得要在调⽤⽅法前⾯加上Mathx1 = y - Math.signum(x) * Math.sqrt(Math.abs(b * x - c));这两种⽅法都可以y1 = a - x;int m = (int) (x1 * 150 + 550);int n = (int) (y1 * 150 + 550);// System.out.println(m+" "+x); 追踪输出值,这是⼀个检验差错的好⽅法g.drawLine(m, n, m, n);x = x1;y = y1;}x = 0;y = 0;} else {for (int i = 0; i < 100000; i++) {int a = 1, b = 4, c = 60;// x1 = y - Math.signum(x) * Math.pow(Math.abs(b * x - c), 0.5);x1 = y - Math.signum(x) * Math.sqrt(Math.abs(b * x - c));y1 = a - x;int m = (int) (x1 * 1 + 300);// 乘数控制图形⼤⼩,加法控制图形的位置int n = (int) (y1 * 1+ 300);//该图形的乘数不能太⼤,最好控制在0-5之间g.drawLine(m, n, m, n);x = x1;y = y1;}x = 0;y = 0;}}public void mousePressed(MouseEvent e) {}public void mouseReleased(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}public static void main(String[] args) {}}输出结果:感悟:刚开始的时候觉得很难,但是后来慢慢发现其实这种迭代分形应该是最容易的了。
华工数学实验-作业二迭代与分形
作业二迭代与分形一.实验内容对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形图称为Koch雪花。
编制程序绘制出它的图形,并计算Koch雪花的面积,以及它的分形维数。
二.问题分析由题可知以等边三角形为基本单元,进行迭代,从而产生Koch雪花。
其原理等同于科赫(Koch)曲线,即对一条线段,首先将它分成三等份,然后将中间的一份替换成以此为底边的等边三角形的另外两条边。
无限次迭代下去,最终形成的曲线就是Koch曲线;而等边三角形为对于每一边都进行Koch 曲线的迭代,最终成为Koch雪花图形。
三.实验过程1. 绘制Koch雪花曲线步骤:(1)定义等边三角形坐标(2)对于每条边取新点(3)进行迭代(4)绘制Koch曲线代码实现如下:%显示迭代k次后的Koch曲线图function plotkoch(k)p=[0,0;10,0;5,-3^(1/2)*5]; %存放结点坐标,每行一个点,初始值为两结点的坐标n=3; %存放线段的数量,初始值为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,:); %目前线段的起点坐标if i<nq2=p(i+1,:); %目前线段的终点坐标elseq2=p(1,:);endd=(q2-q1)/3; %j=j+1;r(j,:)=q1; %原起点存入rj=j+1;r(j,:)=q1+d; %新1点存入rj=j+1;r(j,:)=q1+d+d*A'; %新2点存入rj=j+1;r(j,:)=q1+2*d; %新3点存入rend%原终点作为下条线段的起点,在迭代下条线段时存入rn=4*n; %全部线段迭代一次后,线段数量乘4clear p%清空p ,注意:最后一个终点q2不在r中p=[r;q2]; %重新装载本次迭代后的全部结点endfigureplot(p(:,1),p(:,2)) %显示各结点的连线图axis equal%各坐标轴同比例end效果图:K=1K=2K=3K=4K=5K=62. 计算Koch 雪花曲线的包围的面积K=0时: 4323*1*1*210==S K=1时: 36334323*31*31*21*301+=+=S S 同理:K=2时: 363*)94(*336334322++=S K=N+1时: 363)94(3......363*)94(*3363*343221+++=+n S 所以总面积:363*)94(3......363*94*3363343n S ++++=......])94(......)94(941[3633432++++++=n 3529411*12343=-+= 3. 计算分形维数由K=1 相似形个数m=6 放大倍数c=3则 Koch 雪花的分形维度为 d= ln m ÷ ln c =ln 6 ÷ ln 3 = 1.6309四. 总结分析在Koch 曲线的基础上,拓展到等边三角形。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
@8 D @ D @< 8 < @ @8 @ DD @D@L D @D H @ D @ 8 @ D @D @ @ @D@D D D< < @< D< D D @@@ D 88 @ @D D
@@
;
D
4、龙曲线
dragon ptlist_List := Block
ln01 =
ListPlot Nest dragon, ln01, 12 , PlotJoined ® True, AspectRatio ® 1 1.6, Axes ® None
@ D @ 8 @D < @HHL @D @ D L 8 @D @D < @ @D H@ L D D D D8< < 8 D @@ D
, i, pnum = Length ptlist 3 , 3 i+ 1 , ; , 3 i+ 2 3 i+ 3 Show Graphics tmp , AspectRatio ® 1 GoldenRatio
pol =
-1, 0 , 1, 0 , 0, Sqrt 3
showsierpinski Nest redosierpinski, pol, 6
@ D@ D @8 8< < @ @8 @ D @@ D DD H@D @D @D @ D D @L H@D @D @D @D L H@ D L @D @D @D @D H@D @D @D @D L H@D @D @D @D L H@ D @ D @D L @D @< DD D
• 分形的维数
1、相似维数:设分形 F 是自相似的,即 F 由 m 个子集构成,每个子集放大 c 倍后同 F一样 ,则定义 F 的维数为
d ( F ) log( m) / log( c)
例如,对于Cantor集, d ( F ) log 2 / log 3 对于Van Koch 雪花曲线,d ( F ) log 4 / log 3
实验十二 迭代 (2) --分形
实验内容
• 什么是分形? • 图形迭代 • 函数迭代 • IFS迭代 • 分形的应用
1、什么是分形
• 分形发展简史 欧氏几何、解析几何、微分几何—正则 微积分,复变函数---光滑 反例 1,Cantor集合
F0
F1 F2
Cantor 集合 F中点数不可数(比有理数 还多!),但其区间长度为零!
ptlist
@8 D @ D 8 @< 8 < @H @D @L DD 8 @D @D D @< @ @ @@ D 8 < D @ @ 8 @ D@ D D @ D @ @ D D @ D @ D @ @@ D DD @ D @ D @ D
, i, j, pnum = Length ptlist , tmp1, tmp2, d = ,
反例 2,Weierstrass函数
W ( x)
n 0 ( s 2) n
sin( x)
n
其中 1<s<2 且 1 ,W(x) 是处处连续、
处处不可微的函数。对应 s=1.4, 2
的图象是
lambda = 2; nmax = 30; s = 1.5; Plot Sum lambda^ k, 1, nmax , x, - 10, 10
- ptlist i 5; - ptlist i + 1, 2 ,
i + 1, 1
ptlist
d = Join d,
-1, - 1, 1, - 1, 1, 1, -1, -1, 1, 1, - 1, -1 ; tmp = Join tmp, ptlist i , ptlist i - tmp2, ptlist i - 2 tmp2, ptlist i + tmp1 - 2 tmp2, ptlist i + tmp1 - tmp2, ptlist i + 2 tmp1 - tmp2, ptlist i + 2 tmp1 - 2 tmp2, ptlist i + 2 tmp1 - 3 tmp2, ptlist i + tmp1 - 3 tmp2, ptlist i + tmp1 - 4 tmp2, ptlist i + tmp1 - 5 tmp2, ptlist i + 2 tmp1 - 5 tmp2, ptlist i + 2 tmp1 - 4 tmp2, ptlist i + 3 tmp1 - 4 tmp2, ptlist i + 4 tmp1 - 4 tmp2, ptlist i + 5 tmp1 - 4 tmp2
2;
- ptlist i, 1
+ ptlist i + 1
2 + tmp1,
; tmp
;
0, 0 , 1, 2
;
5、Hilbert曲线
Hilbert ptlist_List := Block tmp =
For i = 1, i < pnum, i ++, tmp1 = tmp2 = ptlist i+ 1 ptlist i, 2
, i, pnum = Length ptlist 3 i +1 , 3 ,
+ ptlist + ptlist + ptlist + ptlist + ptlist + ptlist
3 i +2 3 i +3 3 i +2 3 i +3 3 i +3 3 i +3
2, 2, 2, 2, 2, 2,
ptlist
i+ 1 1, 0
; tmp ;
0, 0 ,
;
3、Sierpinski地毯
redosierpinskiቤተ መጻሕፍቲ ባይዱptlist_List := Block tmp = For i = 0, i < pnum, i ++, tmp = Join tmp, ptlist ptlist ptlist ptlist ptlist ptlist ptlist 3 i+ 1 3 i+ 1 3 i+ 1 3 i+ 2 3 i+ 1 3 i+ 2
tmp = Join tmp,
ln01 =
ListPlot Nest redominkowski, ln01, 3 , PlotJoined ® True, AspectRatio ® 1 GoldenRatio, Axes ® None
@ D @D @8 8< < @8 @D @ D @D @DD D @D @< @8 @D @ D@ @D@D DD @D@D @ @D D @ @D @D @@D D @D @D @@D D @D @D @@D D @D @D @@D D @D @D @@D D @D @D D< @ @ DD < D< < 8@ 88 @ DD
- ptlist i, 1 5; If direct i Š 1, d = Join d, 1, 1, - 1, -1, 1, 1, - 1, - 1, 1, - 1, 1, 1, -1, 1, -1, 1, 1, - 1, 1, - 1, -1, 1, 1, - 1, - 1 ; tmp = Join tmp, ptlist i , ptlist i + tmp1, ptlist i + 2 tmp1, ptlist i + 2 tmp1 + tmp2, ptlist i + tmp1 + tmp2, ptlist i + tmp1 + 2 tmp2, ptlist i + 2 tmp1 + 2 tmp2, ptlist i + 2 tmp1 + 3 tmp2, ptlist i + tmp1 + 3 tmp2, ptlist i + 3 tmp2, ptlist i + 4 tmp2, ptlist i + tmp1 + 4 tmp2, ptlist i + 2 tmp1 + 4 tmp2, ptlist i + 3 tmp1 + 4 tmp2,
tmp = ptlist, tmp1, i, pnum = Length ptlist ptlist i, 2 , For i = 1, i < pnum, i ++, tmp1 = -1 ^ i - 1 ptlist tmp = Insert tmp, ptlist i 2i i + 1, 1
- ptlist i + 1, 2 ,
• 对于一条直线段,将它等分,每段长度为 原来的1/N,共分为N段。 • 将一个正方形每边等分成N段,共有N2个小 正方形。 • 将一个立方体每边等分成N段,共有N3个小 立方体。 • 一般地,设一图形可分解为m个与之相似的 子图形,每个子图形是原来的1/c. 则图形的 维数D满足:cD=m.
2、盒子维数:设 F R是有界集合, 其中 R 是正方形。将 R 分成边长为 的 子正方形。记 N ( ) 为子正方形中包含 F 中点的子正方形的个数。定义 F 的盒子 维数为 ln N ( ) d ( F ) lim 0 ln( 1 / ) 例如,对于 Weierstrass处处连续、处处 不可微的函数,其分形维数为 s.
Koch 曲线的关系,提出了一门描述大自
然的几何形态的学科---分形(Fractal)