当前位置:文档之家› Matlab分形植物模拟

Matlab分形植物模拟

迭代函数系统(Iterated Function System)是分形绘制的典型重要方法。其采用确定性算法与随机性算 法相结合的办法生成植物杆茎或叶片等分形图。“确定性”指用以迭代的规则是确定性的,它们由一组仿 射变换(如 R1,R2,R3 等) 构成;“随机性”指迭代过程是不确定的,即每一次究竟迭代哪一个规则是随机 性的,设最终要生成的图形(植物形态图)为 M ,它要满足集合方程:M=R1∪R2∪…∪RN 。公式的含义 是,随机地从 Ri(i=1,…,N)中挑选一个迭代规则迭代一次,然后再随机地在 Ri(i=1,…,N)中选一 个规则迭代一次,不断重复此过程,最后生成的极限图形 M 就是欲求的植物形态图。
Abstract:The paper introduces the methods of fractal Image for simulating the fractal natural plants. It adopts L
·66·
齐齐哈尔大学学报
2008 年
system and iterated function system with the Matlab functions and program. The fractal plants’ configuration is detail and lifelikeness, fractal gometric is excellence in simulating the fractal natural plants. Key words:fractal plants;L system;iterated function system;Matlab
换热器发生结垢的原因分析及处理方法
换热器是炼油厂常减压车间应用广泛的冷换设备,工厂每年因处理换热器的结垢而耗资巨大,问题严重时还会影响安全 生产的进行。根据结垢层沉积的机理,可将污垢分为颗粒污垢、结晶污垢、化学反应污垢、腐蚀污垢、生物污垢等。
1)颗粒污垢:悬浮于流体的固体微粒在换热表面上的积聚。这种污垢也包括较大固态微粒在水平换热面上因重力作用 形成的沉淀层,即所谓沉淀污垢和其他胶体微粒的沉积。
统实际上是字符串重写系统。即把字符串解释成图形,于是只要能生成字符串,也就等于生成了图形。从 一个初始串(叫做公理)记为 W 开始,将生成规则 P 多次作用于其上,最后产生一个较长的命令串,用 它来绘图。
对于 L 系统可以用较复杂的图形解释,在除了模拟植物分支拓扑结构外,还要加上线段长度和转角等 几何形状。L 系统的符号串也称“龟行图”(turtle), 即设想一只乌龟在平面上爬行,乌龟的状态用三元组 (X,Y,D)表示, 其中 X 和 Y 分别代表横坐标和纵坐标,D 代表当前的朝向。令 δ 是角度增量,h 是步 长。文中所用 L 系统的符号规定与解释:F:从当前位置向前移一步,步长为 h,同时画线;G:从当前位 置向前移一步,步长为 h,但不画线;+:从当前方向逆时针转一个给定的角度 δ; -:从当前方向顺时 针转一个给定的角度 δ;|:原地转向 180°;[:Push,将龟行图当前状态压进栈(stack);]:Pop,将图形 状态重置为栈顶的状态,并去掉该栈中的内容;A:记录状态的方向;z:记录当前的位置。 1.2 迭代函数系统(IFS)
防止结垢的技术应考虑以下几点:1)防止结垢形成;2)防止结垢后物质之间的粘结及其在传热表面的措施包括以下几个方面: 1 设计阶段应采取的措施
在换热器的设计阶段,考虑潜在污垢时的设计,应考虑如下 6 个方面:1)换热器容易清洗和维修(如板式换热器);2) 换热设备安装后,清洗污垢时不需拆卸设备,即能在工作现场进行清洗;3)应取最少的死区和低流速区;4)换热器内流速 分布应均匀,以避免较大的速度梯度,确保温度分布均匀(如折流板区);5)在保证合理的压力降和不造成腐蚀的前提下, 提高流速有助于减少污垢;6)应考虑换热表面温度对污垢形成的影响。 2 运行阶段污垢的控制
function Ltree(n);
S='F'; a=pi/8; A=pi/2; z=0; zA=[0,pi/2];
p='FF+[+F-F-F]-[-F+F+F]';
for k=2:n;
S=strrep(S,'F',p);
end
figure; hold on; for k=1:length(S);
n=2
第 24 卷第 3 期 2008 年 5 月
齐齐哈尔大学学报 Journal of Qiqihar University
Vol.24,No.3 May,2008
Matlab 分形植物模拟
丁永胜,堵秀凤,张水胜
(齐齐哈尔大学 理学院,黑龙江 齐齐哈尔 161006)
摘要:研究了利用 Matlab 软件,采用 L 系统与迭代函数系统(IFS)分形绘制方法,通过数学实验的形式绘制分
xx=zeros(N,1); yy=zeros(N,1);
for ss=1:N;
if p(1,ss)<=0.005;
[x,y]=IFS(x,y,AA(1,1),AA(1,2),AA(1,3),AA(1,4),AA(1,5),AA(1,6));
elseif p(1,ss)<=0.805;
[x,y]=IFS(x,y,AA(2,1),AA(2,2),AA(2,3),AA(2,4),AA(2,5),AA(2,6));
参考文献
[1] 李水根.分形[M].北京:高等教育出版社,2004. [2] 清源计算机工作室.MATLAB 基础及其应用[M].北京:机械工业出版社,2000. [3] 齐东旭.分形及其计算机生成[M].北京:高等教育出版社,1994. [4]] 周晓阳.数学实验与 MATLAB[M].武汉:华中科技大学出版社.2002.
形植物,模拟的分形植物细节丰富,形态生动逼真,体现了分形学在描述自然景物的独特优势。
关键词:分形植物;L 系统;迭代函数系统;Matlab
中图分类号:O241.5
文献标识码:A
文章编号:1007-984X(2008)03-0063-04
1 L 系统与迭代函数系统
1.1 L 系统 L 系统是美国生物学家 Lindenmayer 1968 年为模拟生物形态而设计的描述植物形态与生长的方法。L 系
x=0;y=0;p=rand(1,N);
AA=[0,0,0.16,0,0,0;0.85, -2.5/180*pi,0.85,-2.5/180*pi,0,1.6;…
0.3,49/180*pi,0.34,49/180*pi,0,1.6;0.3,120/180*pi,0.37,-50/180*pi,0,0.44];
5)生物污垢:除海水冷却装置外,一般生物污垢均指微生物污垢。其可能产生粘泥,而粘泥反过来又为生物污垢的繁 殖提供了条件,这种污垢对温度很敏感,在适宜的温度条件下,生物污垢可生成可观厚度的污垢层。
6)凝固污垢:流体在过冷的换热面上凝固而形成的污垢。例如当水低于冰点而在换热表面上凝固成冰。温度分布的均 匀与否对这种污垢影响很大。
elseif p(1,ss)<=0.9025;
第3期
Matlab 分形植物模拟
·65·
[x,y]=IFS(x,y,AA(3,1),AA(3,2),AA(3,3),AA(3,4),AA(3,5),AA(3,6)); else
[x,y]=IFS(x,y,AA(4,1),AA(4,2),AA(4,3),AA(4,4),AA(4,5),AA(4,6)); end xx(ss)=x; yy(ss)=y; end plot(xx,yy,'.b','markersize',2); set(gcf,'color','w') axis square off; %带概率的仿射变换函数 function [xp,yp]=IFS(x,y,r,thita,s,phi,h,k) xp=r*x*cos(thita)-s*y*sin(phi)+h; yp=r*x*sin(thita)+s*y*cos(phi)+k; return
⎡ ⎢⎣
x′⎤ y′⎥⎦
=
⎡r ⎢⎣r
cos θ cosθ
− s sinϕ s sinϕ
⎤⎡ ⎥⎦⎢⎣
x⎤ y⎥⎦
+
⎡h⎤ ⎢⎣k ⎥⎦
利用表 1 中仿射变换的参量可以生成带梗的植物叶子——分形厥叶。
IFSJ.m.程序代码设计如下:在命令窗口运行 IFSJ (n),图形结果如图 2 所示。
function [xx,yy]= IFSJ (N)
为了显示该分形产生过程,现在命令窗口运行 IFSJ (5000);IFSJ (10000);IFSJ (50000);IFSJ (100000); IFSJ (200000)得到图 2 结果。
3 结论
图 2 随机迭代生成的厥叶
由于自然景物形态复杂和不规则性,用传统的几何工具很难对其进行描述,而用分形模型却能很好地 描述自然景物。本文基于 Matlab 平台,以数学实验为手段,通过两种分形绘制方法(L 系统、IFS)分形植物, 通过实验可知分形以其独特的手段解决了整体与部分的关系问题,并利用空间结构的对称性和自相似性, 采用各种模拟真实图形的模型,使整个生成的景物呈现出细节的无穷回归的性质,丰富多彩,具有奇妙的 艺术魅力。
变换
1 2 3 4
表 1 仿射变换的参量
参数
r
S
θ
ϕ
h
0
0
0
0.16
0
0.85
0.85
-2.5 -2.5
0
0.3
0.34
49
49
0
0.3
0.37 120 -50
0
概率 k
0
0.005
相关主题