


下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、分形图形学实验指导实验一 二维空间上的分形图形生成实验目的1. Mandelbrot 集与 Julia 集的电脑实现2. 掌握用 L 系统语言生成分形实验内容及步骤1. 编写程序生成 Mandelbrot 集在复迭代中影响最大的当属迭代ZTzA2+c,实际上它只是形式更一般的复解析迭代z_(n+1)=F(z_n)+c 的一种,F是一个非线性函数。 显然ztzA2+c也是最简单的一种,它 在 复迭代中的地位相当于逻辑斯蒂映射x_(n +1)=ax_n(1- x_n)在实迭代中的地位(见第八章)。考虑一般形式的 F,令z=x+iy,c=c_( X)+ic_(Y),其中i表示虚数,i=SQRT(-1
2、)。别离 实部与虚部,具体化迭代关系便有:xTf(x,y)+c_(X), yTg(x,y)+c_(Y).通常所说的M集是迭代二次函数 ztzA2+c产生的,此函数具 体化就是xT xA2- yA2+c_(X) , yT2xy+c_( Y).其中 z=x+i y,c=c_(X)+i c_(Y ), 以横轴 x 记录实数的实部,以纵轴 y 记录实数的虚部。 M集合实际上是常数 c=(c_(X), c_(Y)构成的图象。让c从屏幕左上角开始变化, 逐行增加, 一直变到屏幕右下角。如果取的区域是 200X2 00,那么一共要计算 40,000个点,把计算的 结果用不同的颜色标记下来,就得到一幅图象,这
3、就是M集。对于不同的c值,如何得到表征迭代性质的不同的结果呢 ?容易知道, 无穷远处肯定是迭代的一个吸引子, 即对于复平面上相当多的初始条件, 迭 代最终都跑到无穷远处。 但研究发现, 在原点附近还存在一个奇特的区域, 在迭代过程中此 区域永远不会跑掉。 在非严格的意义上, 这个不变的集合就是 M集,我们的主要任务就是画 出这个集合的边界一一实际上边界是分形曲线,极其复杂,M集图象的全部魅力就在这里。在复平面上,我们以原点 (0,0) 作为参考点,观察迭代过程是否远离原点,以及逃离原 点的速度如何。为此规定一个距离函数D=xA2+yA2,其实D有许多不同的取法,以上取法是最普通的。可以看出,如
4、果D较大,表 明迭代点离原点较远,如果D较小,说明迭代点离原点较近。 假设对于任何一个 c,迭代都从(x_0, y_0)=(0,0)开始,我们观察迭代点列(x_l, y_l), (x_2, y_2), (x_3, y_3),(x_(100) , y_(l00),的变化状况。每一次都计算一下D值,即该点与原点(0 , 0)的距离(为方便计,这里 实际上计算的是距离的平方)。取一个参考距离 R,不妨取得大一些,比方R =40(实际上取20就足够了)。现在想知道迭代多少次后实际的距离D大于R。在迭代过程中如果 D小于R那么继续让电脑迭代,要规定一个上限,比方300次。如果迭代了 300次后结果仍然不
5、跑掉(即D仍然小于&,那么可以近似认为此点属于M集合。对于迭代次数小于 300次的情况,如果迭代 10次D就大于R,那么标记c点为白色;如 果迭代35次D开始大于R那么标记c点为红色;如果迭代 110次D开始大于R,那么标记c 点为蓝色,等等。2. 编写程序生成Julia集一个M集可以对应无数种 J集,实际上 M集就是所有J集的浓缩。M集不同部位的形 状,反映了对应于该处的 J集的形状,于是用 M集可以对J集进行分类,至少在电脑图形 学的层次上可以这样说。计算J集时,初始迭代点就不能总取 (0 , 0) 了,而是要根据实际位置取实际的 (x , y) 坐标值。仍以迭代 ztzA2+c为例说明。
6、先取 定一个c值,比方c=(1.0221,0.2433),迭代 关系化为xt乂人2-丫人2+1.0221 , yt2xy+0.2433.从屏幕左上角算起,逐行计算,一直算到屏幕右下角。当然,也可以不取整个屏幕那么大,只选一个200X 200的小区域做。标色的原理与上面讲 M集合时完全类似,此略。改变常数c的取值,可以得到各式各样的J集。3. 比拟M集与J集的区别与联系在源程序中,M集与J集的计算方法十分相似,只需改变两处语句就可以互换为对方。初始迭代点迭代关系说明M集x0:=0;y0:=0;x1:=f(x,y)+p0;y1:=g(x,y)+q0;p_0,q_0不断变化J集X0:=p0;y0:=
7、q0;x1:=f(x,y)+c_X;y1:=g(x,y)+c Y ; c_(X) , c_(Y)固定不变4. 编写程序用 L 系统语言生成分形图形1) 编写程序生成柯赫曲线 : 初始图形是一条线段,生成过程是将线段中间1/3 向外折起。程序伪码如下:KochCurve ;柯赫曲线Angle 6;角度增量是 60Axiom F;初始图形是一单位线段F=F+F-F+F;产生式是将线段中间 1/3 折起;结束2) 用 L 系统再次生成希尔伯特曲线。生成希尔伯特曲线的伪码如下:Hilbert;希尔伯特曲线, 1996-12Angle 4Axiom Y;初始串为任意字母 YX=-YF+XFX+FY-;第
8、一个生成规那么Y=+XF-YFY-FX+;第二个生成规那么,由以上规那么不断代换3) 模拟草本植物。注意这里出现了“括号可以方便地表示树枝,伪码如下:HerbPlant ;生成植物,本程序使用了括号Angle 14Axiom ZZ=ZFX +Z -ZX=X -FFF +FFF FX实验二 高维空间的分形图形生成实验目的1. 了解三维L-系统生成高维空间分形图形的方法2. 掌握四元数生成 Mandelbrot 集和 Julia 集3. 掌握随机中点位移法实验内容及步骤1. 编写程序,使用四元数生成 Mandelbrot 集和 Julia 集通常我们是在二维复平面上研究广义的M集和J集,也可以通过
9、“四元数(quaternions) 将它们推广到高维空间中去。在二维复平面中表示复数只用两个基向量:1和i。在四维空间中讨论超复数,现在有四个基向量:1, i, j和k。任一复数可以表示为q=x+yi+zj+qk.超复数基向量之间的运算关系 (注意,不同于传统上四元数基向量之间的运算关系 )为:ij=k,jk=-i,ki=-j,ji=k,kj=-i,ik=-j,ii=jj=-kk=-1,ijk=1.注意,运算关系的规定多少有些任意性,也可以规定iA2=jA2=kA2=+ 1 。在四维空间H中也可以研究迭代 XixA2+c下的超朱丽亚集J ,选一个截面,将超朱丽 亚集投影到三维空间中,可以得到立
10、体的 J 集图象。实验三分形混沌动力系统实验目的1. 了解动力系统概念2. 掌握Julia复动力系统及其IFS诠释3. 了解混沌的概念;实验内容及步骤1. 使用IFS方法,编写生成Julia复动力系统的程序通过IFS方法还可以绘制朱丽亚集J。设ztzA2+c,求出两个逆变换:w_1(z)=SQRT(z-c) , w_2(z) =-SQRT(z-c),取概率(p_1,p_2)=(1/2,1/2),迭代后生成的吸引子实际上就是各种朱丽亚集!IFS方法、L系统、混沌动力学以及有关 M集和J集的迭代,事实上都是相互关联着的, 这种关联表达了非线性科学的内在逻辑。算法:Julia_IFS标题:Julia
11、集的IFS算法参数:z迭代次数PI n值RAND MA随机最大值变量:k概率变量x,y z的实部和虚部cx,cy c的实部和虚部r极距a,b,e,f,m,n, wx,wy,theta函数:Pset(x,y)画点函数Rand随机函数sin正弦函数cos余弦函数atan反正切函数BEGINFOR i=1 TO zm=a*x+en=b*y+fIF i10 THENPset(m, n)ENDIF wx=x-cxwy=y_cyIF wx0 THENtheta=ata n( wy/wx)ENDIFIF wx0 THENtheta=PI+ata n(wy/wx)ENDIFIF wx=0 THENtheta=
12、PI/2ENDIFtheta=theta/2 r=sqit(wx*wx+wy*wy) k=rand rnd=k/RAND_MAX IF rnd0.5 THEN r=sqrt(r)ELSE r=-sqrt(r)ENDIF x=r*cos(theta) y=r*sin(theta)ENDFOREND实验四分形图像压缩实验目的1. 掌握冗余度压缩熵编码2. 限失真编码熵压缩3. 掌握分形图像压缩的原理与方法4. 编程实现分形图像压缩。实验内容及步骤1.使用IFS方法,编程实现简单自相似图像谢尔宾斯基 基垫压缩分形图像压缩是利用原始图像所具有的自相似性,构造一个迭代函数系统IFS,利用IFS抽取图像的
13、自相似性,即用图像中的一个子块经过分形仿射变换来逼近同一图像中的 另一子块,而且仅仅将仿射变换系数记录下来,从而到达压缩图像数据的目的。以谢尔宾斯基基垫为例加以说明,如以下图。可以看出,整个垫子是由上、左下、右下 3个较小的垫子组成。每个较小的垫子是由原来的垫子经收缩仿射变换得来的。如果能分别 找出把原图形变成 3个小图形的收缩放射变换,那么,整个迭代函数系统就定下来了。1)(1/2, 1/2)(3/2, 1/2)x2,y2, x3,y3W1的变换式展开:设原来垫子3各顶点的坐标分别为x1,y1, x2,y2, x3,y3。变换所得小 垫子的3个顶点坐标为x1,y1, x2,y2, x3,y3。图2.3b表示的是把原电子变为上面小垫子的坐标。把x1=a1x1+b1y1+e1 y1=c1x1+d1y1+f1 x2=a1x2+b1y2+e1 y2=c1x2+d1y2+f1 x3=a1x3+b1y3+e1 y3=c1x3+d1y3+f1解这组方程得到变换 W1的各系数。代入
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 项目合作联盟协议书
- 上海市店面转租协议书
- 酒店资产收购协议书
- 邻居建房责任协议书
- 车间职工劳动协议书
- 非标产品寄售协议书
- 返校就读安全协议书
- 转让商铺经营协议书
- 车祸自行赔偿协议书
- 铺面场地出租协议书
- 上海市地方标准《办公楼物业管理服务规范》
- (部编版)统编版小学语文教材目录(一至六年级上册下册齐全)
- 四川省南充市2023-2024学年六年级下学期期末英语试卷
- 物理-陕西省2025届高三金太阳9月联考(金太阳25-37C)试题和答案
- 智能化完整系统工程竣工验收资料标准模板
- 《当呼吸化为空气》读书分享
- 广东省江门市语文小升初试卷与参考答案(2024-2025学年)
- 阀体结构优化设计提升截止阀可靠性
- 八年级历史下册 第五单元 第15课《钢铁长城》教案 新人教版
- 常压储罐管理制度
- 高中英语外研版 单词表 必修2
评论
0/150
提交评论