实验五 迭代与分形

合集下载

迭代与分形

迭代与分形

实验名称:迭代与分形专业:信息工程班级: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,则其周长为,面积为。

华工数学实验报告 迭代与分形

华工数学实验报告 迭代与分形

《数学实验》报告学院:电子信息学院专业班级:信息工程电联班学号:姓名:实验名称:迭代与分析实验日期:2016/05/031.实验目的了解分形几何的基本特性了解通过迭代方式产生分形图的方法欣赏美妙的分形艺术了解分形几何的简单应用2.实验任务对一条横向线段,先将其等分成4段,然后将第2段向上平移,将第3段向下平移,再将4段的相邻端点连接起来,迭代一次后变成下图。

继续迭代得到的分形图,称为Minkowski香肠。

编制程序绘制出它的图形,并计算它的分形维数。

图1Minkowski香肠1次迭代3.实验过程3.1实验原理通过观察该图形可以得知,该图形的相似形个数为8,边长放大倍数为4。

所以要把八条边进行迭代运行,同时把每个点的坐标放入数组中。

3.2算法与编程minkowski的算法代码:function plotminkowski(k)p=[0,0;10,0];n=1;A=[0,1;-1,0];for s=1:kj=0;for i=1:nq1=p(i,:);q2=p(i+1,:);d=(q2-q1)/4;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+d*A;j=j+1;r(j,:)=q1+2*d;j=j+1;r(j,:)=q1+2*d-d*A;j=j+1;r(j,:)=q1+3*d-d*A;j=j+1;r(j,:)=q1+3*d;endn=8*n;clear p;p=[r;q2];endfigureplot(p(:,1),p(:,2)) %显示各结点的连线图axis equal3.3计算结果或图形执行命令行:plotminkowski(4)输出图形:图3.3.1四次迭代的minkowski分形图执行命令行:plotminkowski(3)输出图形:图3.3.2三次迭代的minkowski分形图执行命令行:plotminkowski(1)输出图形:图3.3.3一次迭代的minkowski分形图3.4结果分析相似形个数:m=8边长倍数:c=4minkowski分形维度d=ln m/ln c=1.54. 实验总结和实验感悟通过这次实验,我们以迭代的方式来体验生成分形图的过程,从而对分形几何有了一个直观的了解,并感受美丽的分形图案。

迭代分形

迭代分形
G(i, j ) ij / L
• 一些实例 Cantor 树
w j ( Z ) ( Z 2Z j ) / 3, j 1,2,3
p1 p2 p3 1 / 3
龙曲线
w1 ( Z ) sZ 1, w2 ( Z ) sZ 1
p1 p2 1 / 2, s 0.5 0.5i
B. Mandelbrot 观察到英国海岸线与Van
Koch 曲线的关系,提出了一门描述大自 然的几何形态的学科---分形(Fractal)
英国的海岸线有多长?
• B. B. Mandelbrot
• 分形的特性 1、具有无限精细的结构 2、局部与整体的相似性 3、具有非拓扑维数,并且它大于对应的 拓扑维数
0
Z x i y, c p i q
则(2)变为
xn 1 xn 2 yn 2 p yn 1 2 xn yn q (3)
• Julia 集的绘制方法: 1、设定初值 p,q, 最大的迭代次数 N, 图 形的大小 a,b, 及使用的颜色数 K. 2、设定区域的界值
函数的迭代,不动点和有关的作图 介绍浑沌,用数值迭代、蛛网迭代和密度 分布等方法来研究浑沌

浑沌的倍周期分叉、遍历性和某些 普适结构 计算机与科学研究(即使是数学)

问题的提出

什么是浑沌?
出现在各个领域的一种现象:数学、物理、
生物、金融、经济、管理等等: 宇宙的起源 龙卷风的产生、厄尔尼诺现象 东南亚金融危机爆发 “侏罗纪公园”中的恐龙重现
In[1]:= a=1.029; b=1.48654*10^(-11); f1[x_]:=a*x-bx^2;
For[n=1979; x[1979]=9.7542*10^8, n<=2002, n++, x[n+1]=f1[x[n]]; Print[n+1, “ ”,x[n+1]/10^8]]

函数迭代与分形

函数迭代与分形

数学实验实验练习3.1对一个等边三角形,每条边按照Koch曲线的方式进行迭代,产生的分形图称为Koch雪花。

实验练习3.2对一条竖向线段,在三分之一点处,向左上方向画一条线段,在其三分之二分点处,向右上方向再画一条线段,线段长度都是原来的三分之一,夹角都为30度。

代码3.1Homework1.mfunction homework1(d,a) % d为图形基础边长,a为图形阶数A=[cos(pi/3),-sin(pi/3);sin(pi/3),cos(pi/3)]; %正负30°旋转因子p=[0,0;[0,0]+[d,0]*A';(0+d),0;0,0]; %分形点列矩阵n=3;if n~=1for s=1:(a-1)j=0;for i=1:n %一直线段新增3点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;endclear pp=[r;q2];n=4*n;endendfill(p(:,1),p(:,2),'r')axis equal代码3.2Homework2.mfunction homework2(n) %n为图形阶数,一阶是长度为1的竖直直线born=[0;1i];plot(born); %画出主树干hold onzhuan=[exp(1i*pi/6),exp(-1i*pi/6)]; %正负30°旋转因子if n~=1for s=1:(n-1)j=0;b=0;sizeb=size(born);hua=zeros(2,2*3^(s-1)); %装要画出的线段构成的矩阵r=zeros(2,3^s); %装成为新生枝的主干的矩阵for a=1:sizeb(2)p1=born(1,a); %分主干的根点p2=born(2,a); %分主干的顶点d=(p2-p1)/3;j=j+1;hua(1,j)=p1+d; %要画出的分支线段装进hua矩阵hua(2,j)=p1+d+d*zhuan(1);b=b+1;r(1,b)=hua(1,j); %要要成为新分主干的线段装进r矩阵r(2,b)=hua(2,j);j=j+1;hua(1,j)=p1+2*d;hua(2,j)=p1+2*d+d*zhuan(2);b=b+1;r(1,b)=hua(1,j);r(2,b)=hua(2,j);b=b+1;r(1,b)=p1+2*d;r(2,b)=p2;endplot(hua); %画出新分支hold onclear huaborn=r; %装进新的分主干clear rendendaxis equal。

华南理工大学数学实行论文

华南理工大学数学实行论文

1,对初始的 p 矩阵进行的定义,由于三角形是一个封闭的环形,所以需要对矩阵的元 素进行一些改动,除了需要将三角形的三个点放入其中之外,还需要将三角形的第一 个点放到第四位,这样可以实现连线时的循环;2,初始的 n 值应当为按照三角形考虑 时的 3;3,在 clear p 之后将 p 矩阵中加一个三角形的初始点的元素,即(0,0)点。
对一条竖向线段,在其三分之一分点出,向左上方 向画一条线段,在其三分之二点出,向右上方向画一条 线段,线段长度都是原来的三分之一,夹角都为 30 度, 迭代一次后变成如图所示的分型图,继续迭代得到分形 图,可模拟树木花草,编制程序绘制出它的图形。
实验过程
第一个问题 一、模型建立
在本问题中,采用的方法和 koch 曲线类似,即每条边都按照 koch 曲线的形成过程来 进行变换,对于每一条线段,先将其分成三等分,然后将中间的一份替换成一次变为底边 的等边三角形的另外两条边。然后进行无限次的迭代下去。最终形成 koch 曲线,在本问题 中只是将一条 Koch 曲线变成三条 koch 曲线而已。 二、方法分析
实现该功能的代码如下:
function frat(k) A=[cos(pi/3),-sin(pi/3);sin(pi/3),cos(pi/3)]; p=[0,0;5,10*sin(pi/3);10,0;0,0]; n=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;a(j,:)=q1; j=j+1;a(j,:)=q1+d; j=j+1;a(j,:)=q1+d+d*A'; j=j+1;a(j,:)=q1+2*d; end n=4*n; clear p p=[a;0 0]; end plot(p(:,1),p(:,2)); axis equal

数学实验综合实验报告

数学实验综合实验报告

一、实验目的: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)分形与混沌.ppt

最新整理数学实验之五迭代(1)分形与混沌.ppt
一个变8个: 旋转与对称
4 阶幻方构造法
4x
+
同加1
独孤求败基本定理 ---- 高水平=简单
• 山寨算术例1: 算24 • 将以下每组四个数经过加
减乘除得到24. • (1)5,5,5,1;(2)3,3,7,7 • (3)4,4,7,7;(4)3,3,8,8
• 算24 • 5*5-1=24 • 5*(5-1/5)=24 • 运算律的应用! • (3*8)/(3*3-8)= 24 • 分子分母同除以 3 • 8/ (3-8/3) = 24
• 删去多余的方程 ---- 打假 • 将打假进行到底 • 极大线性无关组 • 剩下的方程的个数---- 秩rank
数学聊斋
之三
•人与照片之维数
线性代数
空间为体, 矩阵为用
• 研究对象----几何:线性空间(向量) • 研究工具----代数:矩阵运算 • 向量 (问题) 矩阵语言描述
矩阵运算解决 向量(解答) • 与微积分的关系:
• 分子分母都是多项式: 享受幸运约分. • Else,创造幸运 化成多项式再约分.
微积分诗四首
之三 定积分
一帆难遇风顺 一路高低不平 平平淡淡分秒 编织百味人生
微积分基本概念(二) ---- 定积分
速度 v(t) 路程 s(t) • 路程 = 速度* 时间 • 速度变化怎么办? • 分段计算: Dsi = v(ti)* Dti • 各段相加:s = Si Dsi, Dti 0
足球的方与圆
•圆---比赛胜负有偶然性 •方---强弱差别客观存在 •米卢---实现概率 •施与霍---提高概率
概率
•沙场百胜古来稀, •九密一疏已足奇。 •祸福偶然存概率, •风云多变泄天机。

数学实验迭代:分形

数学实验迭代:分形

迭代:分形姓名:学号:班级:数学与应用数学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做迭代(实际上,只需对的初值点做迭代),每次迭代的初值均取为。

华工数学实验-作业3-迭代与分形

华工数学实验-作业3-迭代与分形

《数学实验》报告学院:电子与信息学院专业班级:通信工程4班学号:*************名:***实验名称:迭代与分形实验日期:2013.04.7第三次实验1. 实验内容1.对一个等边三角形,每条边按照Koch 曲线的方式进行迭代,产生的分形图称为Koch 雪花。

编制程序绘制出它的图形,并计算Koch 雪花的面积,以及它的分形维数。

2. 实验过程方法一仿照Koch 曲线代码对三角形的每条边进行Koch 曲线化,函数的输入参数有三角形的边长R 和迭代次数k,输出Koch 雪花图形以及雪花所围面积S.KochSnow 面积推导如下所示:迭代次数k 面积S0: S=24r1: 2+ (13R)2*32: 2+ (13R)2*3 + 13)2R)2*323: S=4R 2+ 4(13R)2*3 + 4((13)2R)2*32 + 4((13)3R)2*33 ``````N: R 2+ 13R)2*3 + ((13)2R)2*32 + ((13)3R)2*33+…((13)n R)2*3n 如此相加下去,当N 无穷时,S 将为无穷大源代码如下:function kochsnow(R,k) %R为正三角形边长,k为迭代次数p01=[0,0];p02=[R/2,sqrt(3)*R/2];p03=[R,0]; %3个起始点S = 0; % S为面积,开始设为0 for line=0:2 %依次对3条边进行Koch曲线运算if line==0;p=[p01;p02];elseif line==1;p=[p02;p03];else line==2;p=[p03;p01];endn=1; %存放线段的数量,初始值为1A=[cos(pi/3),-sin(pi/3);sin(pi/3),cos(pi/3)]; %变换矩阵用于计算新的结点for s=1:kj=0; % j为行数for i=1:nq1=p(i,:); %目前线段的起点坐标q2=p(i+1,:); %目前线段的终点坐标d=(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点存入rendn=4*n; %全部线段迭代一次后,线段数量乘4clear p %清空p ,注意:最后一个终点q2不在r中p=[r;q2]; %一条边的全部结点clear rendif line==0; %把第一条边的全部结点放在aa=p;elseif line==1; %把第二条边的全部结点放在bb=p;else line==2; %把第三条边的全部结点放在cc=p;endendall=[a;b;c]; %三条边全部结点放入all plot(all(:,1),all(:,2)) %连接各个结点fill(all(:,1),all(:,2),'g')%填充所围区域for i=0:k %计算KochSnow的面积S = S + (3^(0.5-i))*0.25*(R^2);endSaxis equalKoch雪花图形输入半径R=2K=0时是正三角形此时面积为 1.7321K=1时是正六边形此时面积为 2.3094 K=2时的koch雪花此时面积为 2.5019K=3时的Koch雪花此时面积为 2.5660 K=4时的Koch雪花此时面积为 2.5874分形维数:根据迭代的规律得到:相似形个数:m=6 边长放大倍数:c=3,d m c=÷=÷=1.631ln ln ln6ln3方法2只生成一次Koch曲线,然后对生成的Koch曲线进行旋转变换,旋转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}];
可以毫不夸张地说,“分形是大自然的几何学”, “分形处处可见”。
本讲的目的是以迭代的观点介绍分形的基本特性以 及生成分形图形的基本方法,使读者在欣赏美丽的分 形图案的同时对分形几何这门学科有一个直观的了解, 并从哲理的高度理解这门学科诞生的必然,激发读者 探寻科学真理的兴趣。

(完整word版)几何画板迭代详解之迭代与分形几何

(完整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)⇒。

分形实验报告

分形实验报告

一、实验目的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. 用计算机绘制出koch曲线的图形。

你能否自己构造一些生成元,并由此绘出相应的分形图形?任取分形图形的一个局部并将它放大,它同原来的分形图形有什么联系?代码:function result=kochsnow(a,b,n) if (b(1)-a(1))^2+(b(2)-a(2))^2&lt;n plot([a(1) b(1)],[a(2) b(2)])hold on; elsec=[a(1)+(b(1)-a(1))/3 a(2)+(b(2)-a(2))/3]; d=[a(1)+2*(b(1)-a(1))/3a(2)+2*(b(2)-a(2))/3]; alpha=atan((d(2)-c(2))/(d(1)-c(1)));l=sqrt((d(2)-c(2))^2+(d(1)-c(1))^2); if(alpha&gt;=0&amp;(d(1)&lt;c(1))|(alpha&lt;=0&amp;(d(1)&lt;c(1))))alpha=alpha+pi; ende(1)=c(1)+cos(alpha+pi/3)*l; e(2)=c(2)+sin(alpha+pi/3)*l; result=0;kochsnow(a,c,n); kochsnow(d,b,n); kochsnow(c,e,n); kochsnow(e,d,n);end end clear clc n=input(请输入次数: ); a=[0 0]; b=[130 0]; c=[b(1)/2 b(1)*sqrt(3)/2]; kochsnow(a,c,n); kochsnow(c,b,n); kochsnow(b,a,n); 2012秋数学实验实验(5):分形页第 1 页共 10 实验(五):分形运行结果:请输入次数: 6120100 806040200-20-40-20020406080100120140 (放大后可知其变化规律是一样的。

大学数学实验报告----迭代

大学数学实验报告----迭代

数学实验报告综合实验迭代学院:数学与信息科学学院班级: 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四、迭代(混沌)五、迭代(几何形状的构造)。

光学分形实验报告

光学分形实验报告

分形图形学实验报告指导实验报告要求1. 实验名称2. 实验目的、要求3. 实验主要内容(某某算法的实现)4. 实验过程(程序流程图、源代码)5. 实验结果(附上打印的图形)6. 实验小结实验报告一一般分形图形生成实验目的1. koch曲线、sierpinski三角形、cantor集的计算机实现2. 掌握用迭代、递归生成分形实验内容及步骤1、 koch曲线函数:plot(x1,y1) –(x2,y2) (画直线函数)sin( ) (正弦函数)cos( ) (余弦函数)arctan( ) (反正切函数)12、 sierpinski三角形函数: plot(x1,y1) –(x2,y2) (画直线函数)sin( ) (正弦函数)cos( ) (余弦函数)23、 cantor集3实验报告二 l系统语言生成分形图形实验目的1. 掌握用l系统语言生成分形2. koch曲线、sierpinski三角形、cantor集的l系统实现4实验内容及步骤1. 编写程序用l系统语言生成分形图形1) 编写程序生成koch曲线:初始图形是一条线段,生成过程是将线段中间1/3向外折起。

程序伪码如下:kochcurve { ;柯赫曲线angle 6 ;角度增量是60°axiom f ;初始图形是一单位线段f=f+f--f+f ;产生式是将线段中间1/3折起} ;结束2) 用l系统再次生成sierpinski三角。

生成sierpinski三角的伪码如下:hilbert{ ;sierpinski三角,1996-12 angle 4 axiom y ;初始串为任意字母y x=-yf+xfx+fy- ;第一个生成规则y=+xf-yfy-fx+ ;第二个生成规则,由以上规则不断代换 } 3) 模拟草本植物。

注意这里出现了“括号”——可以方便地表示树枝,伪码如下:herbplant { ;生成植物,本程序使用了括号angle 14axiom zz=zfx[+z][-z]x=x[-fff][+fff]fx}5篇二:光学实验报告建筑物理——光学实验报告实验一:材料的光反射比、透射比测量实验二:采光系数测量实验三:室内照明实测实验小组成员:指导老师:日期:2013年12月3日星期二实验一、材料的光反射比和光透射比测量一、实验目的与要求室内表面的反射性能和采光口中窗玻璃的透光性能都会直接或间接的影响室内光环境的好坏,因此,在试验现场采光实测时,有必要对室内各表面材料的光反射比,采光口中透光材料的过透射比进行实测。

数学试验之五迭代---分形与混沌-厦门大学高等代数

数学试验之五迭代---分形与混沌-厦门大学高等代数

非线性 --微积分 线性 --线性代数
微积分中的代数模型
• 物理: 以匀速代变速 • 几何: 以直代曲 • 代数: 以线性代非线性
线性化--微分与导数
• y = f(x) 在a的微分:
• • • • • • • Dy= f(x)-f(a) ≈ 线性函数 dy = kDx 误差 q = Dy-dy 是 Dx = x-a 的高阶无穷小. 导数 f ’(a) = 一次项系数 k . 一次函数逼近 f(x) ≈ f(a) +f’(a)(x-a) 误差集合 o(Dx) :Dx 的高阶无穷小 非零作零貌似零: q+q = q, q-q = q, aq= q. 同余式 f(x) ≡ f(a) +f’(a)(x-a) (mod o(Dx) )
• 例:
隐函数存在定理
• F(x,y) 在某点P0可微 • 何时由 F(x,y)=0 确定 y=f(x)? • 线性化: aDx+bDy ≈ 0,
• • y=f(x) 在 x0 可微, 导数为
2018/11/11
隐映射定理 • 可微函数 • n 个方程 • 线性化
=0 ,
即 • 当 det B
2018/11/11
时有唯一解
线性变换前后的图形
2018/11/11
向量方向的变化
2018/11/11
选取特征向量为基
2018/11/11
计算案例: 若当标准形
网上资代数(2004)
2006申报精品课程 国家级
利用基本性质计算 n 阶行列式
(3.1) 当 i1,i2,…,in 中有两个相等时, 这样的项可以从 (3.1) 中去掉。只剩下 i1,i2,…, in 两两不相等的项, (3.1)中的 变成对1,2,…,n 的全体排列 (i1,i2,…, in ) 求和,成为:
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

将这个文件保存,文件名 ex31.m。调用方式如下: 代码:ex31(20,1) 运行结果:图 2-2-1。 代码:ex31(20,2) 运行结果:图 2-2-2。
图 2-2-1
图 2-2-2
三、问题描述与分析
1. 如何描述复杂的自然形态 几何学研究的对象是客观世界中物体的形状。传统欧氏几何学的研究对象, 都是规则并且光滑的,比如:直线、曲线、曲面等。但客观世界中物体的形状, 并不完全具有规则光滑等性质,因此只能近似当作欧氏几何的对象,比如:将凹 凸不平的地球表面近似为椭球面。虽然多数情况下通过这样的近似处理后,能够 得到符合实际情况的结果,但是对于极不规则的形态,比如:云朵、烟雾、树木 等,传统的几何学就无能为力了。 通常的几何体具有整数维,比如:一维的线段、二维的正方形、三维的立方 体,维数就是几何体在“尺度”上的特征。对于分形中的几何对象,通常意义下 的维数已经没有意义,比如 Koch 曲线(长度是无穷大,面积是零),用一维的 “线段”去量,得数无穷大,“尺子”太小;用二维的“正方形”去量,得数为 零,“尺子”又太大,因此需要定义分形自己的维数(分数维)。 2.分形几何的起源 分形几何的概念是美籍法国数学家曼德尔布罗特(Mandelbrot)于 1975 年 首先提出的,但最早的工作可追朔到 1875 年,德国数学家维尔斯特拉斯 (Weierestrass)构造了处处连续但处处不可微的函数,集合论创始人康托尔 (Cantor,德国数学家)构造了有许多奇异性质的康托尔三分集。1890 年,意 大利数学家皮亚诺(Peano)构造了填充空间的曲线。1904 年,瑞典数学家科赫 (Koch)设计出类似雪花和岛屿边缘的一类曲线。1915 年,波兰数学家谢尔宾 斯基(Sierpinski)设计了象地毯和海绵一样的几何图形。这些都是为解决分析 与拓朴学中的问题而提出的反例,但它们正是分形几何思想的源泉。
%原终点作为下条线段的起点,在迭代下条线段时存入 r %全部线段迭代一次后,线段数量乘 4 %清空 p ,注意:最后一个终点 q2 不在 r 中
n=4*n; clear p
p=[r;q2]; %重新装载本次迭代后的全部结点 end plot(p(:,1),p(:,2)) %显示各结点的连线图 axis equal %各坐标轴同比例
d ln m ln c ,
即c d
m
2
对于通常的几何对象,采用这种方式计算出来的维数,与传统的维数是一致 的,比如对正方形,将它边长 k 等份,则相似形个数 m = k ,每边长放大 k 倍后 与原长相同,即 c = k,显然 d = 2。 人类肺的构造,从气管尖端成倍地反复分叉,是一种典型的分形,其分维数 大约是 2.17。 4. 本实验的思路 分形几何把自然形态看作是具有无限嵌套的层次结构,并且在不同尺度下 保持某种相似的属性,于是,简单的迭代过程,就是描述复杂的自然形态的有效 方法。本实验通过迭代的方式,展示了几种经典分形图形的生成过程。
图 4-1-1
图 4-1-2
(1)编辑实现上述迭代的函数 在 Matlab 中,编制一个函数来绘制 Koch 曲线的图形。具体代码如下: function frat1(k) %显示迭代 k 次后的 Koch 曲线图 p=[0,0;10,0]; %存放结点坐标,每行一个点,初始值为两结点的坐标 n=1; %存放线段的数量,初始值为 1
例1
用红色填充一个圆形区域
代码:t=0:0.01*pi:2*pi; x = sin(t); y = cos(t); fill(x,y,'r') 运行结果:图 2-1-1。
图 2-1-1
2. 什么是迭代 迭代法是常用的一种数学方法,就是将一种规则反复作用在某个对象上,它 可以产生非常复杂的行为。我们这里介绍图形迭代和函数迭代两种方式: (1)图形迭代 给定初始图形 F0,以及一个替换规则 R,将 R 反复作用在初始图形 F0 上,产生 一个图形序列:R(F0)=F1,R(F1)=F2,R(F2)=F3,… (2)函数迭代 给定初始值 x0,以及一个函数 f(x),将 f(x)反复作用在初始值 x0 上,产生一 个数列:f(x0)=x1,f(x1)=x2,f(x2)=x3,…
0.6 0.4 0.2
-1
-0.5 -0.2 -0.4 -0.6
0.5
1
布朗运动轨迹
Weierestrass 函数
3. 分形几何体的维数 分形的维数目前有多种定义,我们这里介绍相似维数。 设分形 F 是自相似的, 即 F 由 m 个子集构成, 每个子集放大 c 倍后同 F 一样, 则定义 F 的维数为:
a1=[]; %保存迭代后所有顶点的 x 坐标 b1=[]; %保存迭代后所有顶点的 y 坐标 %根据小正方形的顶点坐标, %计算迭代后形成的 8 个新的小正方形的顶点坐标 for q=1:length(x); %每个小正方形计算一次 x1=x(q)+[0,d/3,2*d/3,0,2*d/3,0,d/3,2*d/3]; %新的 x 坐标 y1=y(q)+[0,0,0,d/3,d/3,2*d/3,2*d/3,2*d/3]; %新的 y 坐标 a1=[a1,x1]; %所有顶点 x 坐标存入 a1 b1=[b1,y1]; %所有顶点 y 坐标存入 b1 end d=d/3; %迭代一次,边长缩小 x=a1; %全部的 x 坐标重新放入 x y=b1; %全部的 y 坐标重新放入 y
end hold on %在同一个图形窗口显示 for q=1:length(x); %用蓝色注满多边形区域 fill(x(q)+[0,d,d,0,0],y(q)+[0,0,d,d,0],'b') % end hold off axis off axis equal % %不要坐标轴 %各坐标轴同比例
q1=p(i,:);
q2=p(i+1,:); %目前线段的终点坐标 d=(q2-q1)/3; j=j+1;a(j,:)=q1; j=j+1;a(j,:)=q1+d; %原起点存入 a %新 1 点存入 a
j=j+1;a(j,:)=q1+d+d*A'; %新 2 点存入 a j=j+1;a(j,:)=q1+2*d; end %新 3 点存入 a
图 4-2-1
图 4-2-2
(1)编辑实现上述迭代的函数 本函数主要的思路是,根据线段两个结点的坐标,计算迭代后它们之间增 加的三个结点的坐标。函数代码如下: function frat2(k) %显示等边三角形迭代 k 次后的图形 A=[cos(pi/3) -sin(pi/3);sin(pi/3) cos(pi/3)]; %用于计算新的结点 p=[0 0;10 0]; %存放结点坐标 n=1; for s=1:k j=0; for i=1:n %每条边计算一次 %目前线段的起点坐标 %存放线段的数量,初始值为 1 %实现迭代过程,计算所有的结点的坐标
q1=p(i,:);
q2=p(i+1,:); %目前线段的终点坐标 d=(q2-q1)/3; j=j+1;r(j,:)=q1; j=j+1;r(j,:)=q1+d; %原起点存入 r %新 1 点存入 r
j=j+1;r(j,:)=q1+d+d*A'; %新 2 点存入 r j=j+1;r(j,:)=q1+2*d; end %新 3 点存入 r
例 2 针对函数 f ( x) 2sin x ,取初始值 x0 1 ,做迭代,并作图观察 在 matlab 的 M 文件编辑器中,编辑以下代码: function ex31(n,x0) fn=[x0]; for i=2:n fn=[fn, 2*sin(fn(i-1)) ]; end plot(fn) %画曲线 %将第 i 项添加到数组 fn 中 %n-迭代次数, x0-初值
将这个文件保存,文件名 frat2.m。
(2)绘制城堡的图形 代码:frat4(3) 运行结果:图 4-2-3,迭代 3 次的图形。 代码:frat4(5) 运行结果:图 4-2-4,迭代 5 次的图形。
图 4-2-3
图 4-2-4
3. 谢尔宾斯基(Sierpinski)地毯 Sierpinski 地毯也是通过图形迭代的方式产生的,其迭代规则是: 对一个正方形,首先将它分成九个小正方形,然后挖去中间的一个。无限 次迭代下去,最终形成的图形就是 Sierpinski 地毯。第一次迭代得图 4-3-1, 第二次迭代得图 4-3-2,具体图形如下:
%原终点作为下条线段的起点,在迭代下条线段时存入 a %全部线段迭代一次后,线段数量乘 4
n=4*n;
clear p
%清空 p ,注意:最后一个终点 q2 不在 a 中
p=[a;q2]; %重新装载本次迭代后的全部结点 end plot(p(:,1),p(:,2)) ;%显示各结点的连线图 fill(p(:,1),p(:,2),'k') %填充颜色 set(findobj(gcf,'type','patch'),'edgecolor','none') %不显示边界 axis off hold off %不要坐标轴
四、实验过程
本试验以迭代的方式,来体验生成分形图形的基本方法,并感受美丽的分 形图案,从而对分形几何有一个直观的了解。 1. 科赫(Koch)曲线 Koch 曲线是通过图形迭代的方式产生的,其迭代规则是: 对一条线段,先将它分成三等份,然后将中间的一份替换成以此为底边的 等边三角形的另外两条边。无限次迭代下去,最终形成的曲线就是 Koch 曲线。 第一次迭代得图 4-1-1,第二次迭代得图 4-1-2,具体图形如下:
图 4-3-1
图 4-3-2
(1)编辑实现上述迭代的函数 在 Matlab 中,编制一个函数来实现上述迭代。具体代码如下: function frat3(x,y,d,n); % x 为正方形的顶点的横坐标,可取 0 (一个顶点代表一个小正方形) % y 为正方形的顶点的纵坐标,可取 0 % d 为初始正方形边长,可取 1 % n 为迭代次数,可取 4 for p=1:n; %实现迭代过程,计算所有的顶点坐标
相关文档
最新文档