您好,欢迎访问三七文档
第二章、数字(非线性)图形产生方法、原理及其计算机实现非线性科学的可视化实质上就是运用计算机图形技术,将沉睡于人类视野之外已久的非线性科学可视化信息在计算机上显现出来的过程。本课程根据纺织的应用特点,重点介绍分形几何学与混沌动力学两大类非线性科学可视化方法。这也是目前最基本、最典型的非线性科学可视化研究对象。通过研究它们,即可对非线性科学可视化问题有一个比较系统的把握,对非线性图形有一个概貌的审视与认识。根据上述,本课程讨论的这两类非线性科学问题,其主要内容有:分形几何学,包括复动力系统,IFS方法和L系统等,其中,复动力系统主要包括Julia集、Mandelbrot集以及牛顿变换等;混沌动力学,主要包括均匀随机网、准规则班图和双混沌映射等。2.1分形几何学分形几何学是非线性科学理论中非常重要的分支之一,也是其中影响最大的研究领域之一。自法国学者Mandelbrot于20世纪70年代正式提出Fractal一词,同时系统地阐述了分形几何的理论之后,分形几何很快就发展成为一个极其活跃的前沿研究热点,并逐步影响到包括艺术在内的越来越多的学科。Mandelbrot创造的Fractal一词来自拉丁语Fractus,其原意为破碎的,不规则的,专门研究传统几何方法无法研究的一类非线性几何问题,如国界测定,云彩形态描述等。目前,普遍接受的关于分形的定义是将分形看作具有下列性质的集合F:①F具有精细结构,即在任意小的比例尺度内包含整体;②F是不规则的,以至于不能用传统的几何语言来描述;③F通常具有某种自相似性,或许是近似的或许是统计意义下的;④F在某种方式下定义的“分维数”通常大于F的拓扑维数;⑤F的定义常常是非常简单的,或许是递归的;⑥F通常具有“自然”的外貌。图2.1是一个典型的分形曲线例子,即冯.科赫曲线。n=0n=1n=2n=3n=4n=5图2.1其构造过程如图1所示。设0E是单位长的直线段,1E是由除去中间1/3的线段,代之以底边在被除去的线段上的等边三角形的另外两条边所得到的图形。它包含4个线段,对1E的每个线段都进行同一过程来构造2E,余类推。于是得到一个曲线序列)(kE,其中kE是把1kE的每一个线段中间1/3用等边三角形的另外两边取代而得到的:当k充分大时,曲线kE和1kE只在精细的细节上不同,而当K趋于无穷大时,曲线序列)(kE趋于一个极限曲线F。这个F就是冯.科赫曲线。图2是由图1所示的冯.科赫连接而成的雪花。图2.2从冯.科赫曲线的形成方式可以看出,它确实符合分形定义所描述的几个特征。分析一下冯.科赫曲线的长度,可以发现有以下结果:尺度线段数长度1/344/31/9242)3/4(n3/1n4n)3/4(当n时,长度n)3/4(,是一个不确定值,这就是针对“英国海岸线有多长?”问题的一个精辟的回答。对这一问题的研究也成为Mandelbrot思想的转折点。他认为欧氏测度不能抓住不规则形状的本质,从而转向对称性和尺度变换下的不变量——维数的研究,分形概念便由此而萌芽产生。由于抓住了标度不变性即自相似性这个最本质的特征,分形几何对处理不规则的几何问题显得非常有效,因而拓展了人们的视野,深化了人们对自然界的认识和了解。另一方面,作为人类认识世界的一个崭新的模式,分形几何借助计算机图形技术,以其独有的方式在向人们展现出许多纯数理模型和抽象概念的内部复杂结构的同时,使人类的眼光从此能够投向以前一直封闭在夜幕般黑暗之中的“不可视”世界,洞察来自曾为“不可视”世界的视觉信息,为人们提供一个全新的神奇而灿烂的审美领域和对象;这就是分形几何图形。目前,研究产生分形几何图形的方法日益增多。这里主要研究运用复动力系统分形集生成法,L系统,IFS等方法。2.1.1复动力系统分形集研究复动力系统,首先从动力系统着手。什麽是动力系统?动力系统最简单的例子是一维离散动力系统:设)(xf为实函数,并给定Rx0,则下式的迭代过程,2,1,0),(1nXfXnn(2.1)就是一个动力系统。动力系统的定义为:度量空间),(dX上的一个动力系统是一个变换XXf:。记为),(fX。X中一点x的轨道是序列{,2,1:0nfn}。如果上述变换是在复平面上进行的,则称之为复动力系统。如果在迭代式中再增加一个常数c,例如,选择迭代式cZZnn21,其中c也是复数,piqpc,为实部,q为虚部。这个迭代将导致Julia集与Mandelbrot集,可以产生出一大批美丽的分形几何图形。本文讨论的复动力系统分形集主要有Julia集、Mandelbrot集、牛顿变换等。2.1.1.1Julia集Julia集是复动力系统中的一个重要的分形集,由于法国数学家Julia富有成效的研究而得名。Julia集结构复杂、内涵丰富.尤其该集的形态变化万千,引人入胜,已经引起了广泛的重视和越来越深入的研究。关于Julia集的理论研究主要集中在其动力学性质上。本文则主要关注其图形的产生及其特点。(1)Julia集的定义Julia集的定义是:设C为复平面,具有欧氏度量。设f:CCˆˆ是一个次数大于1的多项式。记fF=是有界的2,1,0,)(:0nzfCzn(2.2)则fF是C中那些轨迹不收敛至无穷大的点z的集合,则称fF的边界为多项式f的Julia集。记为fJ。典型的fJ产生方式是在复平面上考虑一个迭代过程:21nnzzN=0,1,2,…(2.3)其中,xyixz,、y为变量;pqip,、q均为常数。当值固定时,给定复数0z作初始值,进行迭代运算。(2)Julia集的计算机绘图原理根据(2.2)、(2.3)式,可在计算机上进行计算并绘制Julia图。具体方法如下:第一步、对于(2.3)式,分离z及的实部与虚部,记,iyxziqp相应地,从nz到1nz的迭代过程就是pyxxnnn221qyxynnn21(2.4)其中,p、q在迭代过程中始终保持为常数。第二步、选定参数5.1,5.1,maxmaxminminyxyxiqp,即,使图形在指定范围内显示。再取1000M,以便在计算机上作控制:复数的模超过M就被认为是“无穷”。同时,设计算机显示屏的分辨率为ba点。令:1minmaxaxxx,1minmaxbyyy对所有的点(yxmm,),1,,1,0,1,,1,0bmamyx完成以下循环:步骤一、令0,,min0min0nymyyyxmxxx步骤二、由迭代过程(2.4)从(nnyx,)算出(11,nnyx),并计数1:nn步骤三、计算22nnyxr。如果rM,则根据n值选择颜色,转至步骤四;如果Mr,则转至步骤二。步骤四、对点(yxmm,)显示颜色并转至下一点,再从头作步骤一。图2.3是当分别取不同的值时用编程语言VB在计算机上绘制的几幅图形。关于Julia集图象生成算法,用VB语言编程如下:PrivateSubcmddraw_Click(indexAsInteger)Dimp,q,Pmin,Pmax,Xmax,Xmin,Ymin,Ymax,X,Y,Xs,Ys,r,drtX,drtY,M,XtempAsSingleDimnumber,k,rAsIntegerP=Val(Text3):q=Val(Text4)Xmin=Val(Text1(2)):Ymin=Val(Text1(3))Xmax=Val(Text1(4)):Ymax=Val(Text1(5))Xs=Val(Text1(7)):Ys=Val(Text1(8))number=Val(Text1(9)):M=Val(Text1(6))drtX=(Xmax-Xmin)/Xs:drtY=(Ymax-Ymin)/YsFornx=0ToXsForny=0ToYsX=Xmin+drtX*nx:Y=Ymin+ny*drtYr=X*X+Y*Y:k=0DoWhilerMAndk256Xtemp=XX=X*X-Y*Y+p:Y=2*Xtemp*Y+qr=X*X+Y*Y:k=k+1LoopPicture1.PSet(nx,ny),RGB(0,k,150)NextnyNextnxEndSubi137.372.i007.273.i337.386.(a)(b)(c)i140.357.i113.745.i416.331.(d)e)(f)i177.376.i355.350.i656194.(g)(h)(i)i03.1157.i339.352.i383.342.(j)(k)(l)i316.383.i670.110.i431.309.(m)(n)(o)i216.380.i315.368.i380.338.(r)(s)(t)i133.363.i319.361.i147.330.(u)(v)(x)i656.11.i162.1077.32(y)(z)图2.3从图中可见,Julia集图形的造型多彩多姿,丰富多变,形象各异,令人目不暇接,是一种极其难得的新型视觉艺术资源。
本文标题:染织数字图形第二章
链接地址:https://www.777doc.com/doc-2386743 .html