分形吧matlab,Matlab在分形模拟上的一些应用
把在形态、功能和信息等方面具有自相似性的对象称为分形。自相似性是指局部的形态与整体的形
态相似,局部与整体相互依赖。由此可以通过局部认识和推及整体。在自然界中,很多的自然景观就具有自相似性。如云彩、山脉、海岸线、火焰、水波等,只要抽
象出这些自然景观的某些特征,再不断放大,就可以得到整体。计算机分形图形就是利用这一原理实现的。
MATLAB作为一种科学计算软件,具有输入简捷、运算高效、内容丰富、扩展性强等特点,并且它还
可与Word结合起来,使含有MATLAB运行内容的文章的编辑变得非常方便。这些特点使MATLAB深受科技人员,特别是非软件专业的人们的喜爱。分形
在所有尺寸下都有无限的细节,因而完全由计算机不可能产生精确的分形,只能给出近似的描绘,即模拟。而这里给出的程序中均有一个控制精度的量,只要计算机
运算速度和屏幕分辨率允许,精度可任意提高。分形可作为双曲迭代函数系统的吸引子,根据程序中迭代的选取,将分形模拟分为确定迭代法和随机迭代法。
Cantor集
选
取一个欧氏长度的直线段,将该线段三等分,去掉中间一段,剩下两段。将剩下的两段分别再三等分,各去掉中间一段,剩下四段。将这样的操作继续下去,直到无
穷,则可得到一个离散的点集。点数趋于无穷多,而欧氏长度趋于零。经无限操作,达到极限时所得到的离散点集称之为Cantor集。
模拟程序
function f=cantor(ax,ay,bx,by)
c=0.2;d=2;
if (bx-ax)>c
x=[ax,bx];y=[ay,by];hold on;
plot(x,y,'LineWidth',5);hold off;
cx=ax+(bx-ax)/3;
cy=ay-d;
dx=bx-(bx-ax)/3;
dy=by-d;
ay=ay-d;
by=by-d;
cantor(ax,ay,cx,cy);
cantor(dx,dy,bx,by);
end
Koch(科赫)曲 线
在一单位长度的线段上对其三等分,将中间段直线换成一个去掉底边的等边三角形,
再在每条直线上重复以上操作,如此进行下去直到无穷,就得到分形曲线Koch曲线。
模 拟程序
function f=Koch(ax,ay,bx,by,c)
if
(bx-ax)^2+(by-ay)^2
x=[ax,bx];y=[ay,by];
plot(x,y);hold on;
else
cx=ax+(bx-ax)/3; cy=ay+(by-ay)/3;
ex=bx-(bx-ax)/3; ey=by-(by-ay)/3;
l=sqrt((ex-cx)^2+(ey-cy)^2);
alpha=atan((ey-cy)/(ex-cx));
if
(alpha>=0&(ex-cx)<0)|(alpha<=0&(ex-cx)<0)
alpha=alpha+pi;
end
dy=cy+sin(alpha+pi/3)*l;
dx=cx+cos(alpha+pi/3)*l;
Koch(ax,ay,cx,cy,c);
Koch(ex,ey,bx,by,c);
Koch(cx,cy,dx,dy,c);
Koch(dx,dy,ex,ey,c);
end
输入:Koch(0,0,120,0,10);
Koch曲线也可以“随机生成”。在构造的每一步,每次去掉区间中间三分之一的部分,而用与去掉部
分构成等边三角形的另两边来代替,再用抛硬币的方法决定新的部分位于被去掉的“上边”或“下边”。经几步以后,得到一个看起来相当不规则的随机Koch曲
线,它仍然保留了Koch曲线的某些特征,如具有精细的结构,但Koch曲线具有的严格子相似性已被它所具有的“统计自相似性”所取代。
模拟程序
将Koch()中 第13、14行改为:
val=rand();
if
val<0.95
vv=1;
else
vv=-1;
end
dy=cy+sin(alpha+vv*pi/3)*l;
dx=cx+cos(alpha+vv*pi/3)*l;
输 入:Koch(0,0,120,0,10);
Koch snowflake(科赫雪花)
科赫雪花也称为科赫岛,她的构造是三条科赫曲线的
合成,在一个三角形的三条边上,按照科赫曲线的构造过程不断分割替代,就形成科赫雪花。
模拟程序
function f=kochsnow(l,c)
ax=0;ay=0;bx=l;by=0;
cx=l/2;
cy=l*sqrt(3)/2;
Koch(ax,ay,cx,cy,c);
Koch(cx,cy,bx,by,c);
Koch(bx,by,ax,ay,c);
输入:kochsnow(120,5);
分形树
下面给出树形分形图的MATLAB模拟程序。该分形树是对称
的,利用画线命令line。
模拟程序
h=10;d=0.6;th=pi/4;n=9;
A=zeros(2,2^(n+1)-2);A(:,2)=[0;h];C=[cos(th) -sin(th);sin(th)
cos(th)];D=inv(C);
for i=2:n
B(:,2^(i-1)-1:2^i-2)=A(:,2^(i-1)-1:2^i-2);
A(:,2^i-1:2^i+2^(i-1)-2)=d*C*B(:,2^(i-1)-1:2^i-2)+[0;h]*ones(1,2^i-2^(i-1));
A(:,2^i+2^(i-1)-1:2^(i+1)-2)=d*D*B(:,2^(i-1)-1:2^i-2)+[0;h]*ones(1,2^i-2^(i-1));
end
for i=1:2^n-1
L=line(A(1,[2*i-1 2*i]),A(2,[2*i-1 2*i]));set(L,'LineWidth',2);
end
分形吧matlab,Matlab在分形模拟上的一些应用相关推荐
- 树木分形迭代图 matlab,基于迭代函数系统的分形植物模拟
1. 引言 自然景物模拟是计算机图形学中一个重要研究课题,其中植物形态仿真模拟引起了广泛的关注.许多学者对其进行了大量的研究,目前常见的方法有L-系统 [1] [2] .迭代函数系统 [3] [4] ...
- matlab仿真分形树,使用MATLAB实现随机分形树模拟
使用MATLAB实现随机分形树模拟 尤鸿霞 (南通纺织职业技术学院,南通,226007) 摘要:阐述了植物模拟的典型方法L-系统及迭代函数系统(IFS)的基本原理.根据这两种方法,利用Matlab软件 ...
- matlab julia分形图,Mandelbrot集和Julia集的分形图之matlab实现
Mandelbrot集和Julia集的分形图之matlab实现 基于逃逸时间算法 1. Mandelbrot集 function Mandelbrot(res,iter,xc,yc,xoom) %Ma ...
- m图像多重分形谱计算matlab仿真
目录 1.算法仿真效果 2.算法涉及理论知识概要 3.MATLAB核心程序 4.完整算法代码文件 1.算法仿真效果 matlab2022a仿真结果如下: 2.算法涉及理论知识概要 多重分形(multi ...
- matlab程序作分形蕨,matlab学习第一天笔记
>> phi=(1+sqrt(5))/2 phi = 1.6180 >> format long >> phi phi = 1.618033988749895 &g ...
- 【运动学】基于matlab GUI三体运动模拟【含Matlab源码 871期】
⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[运动学]基于matlab GUI三体运动模拟[含Matlab源码 871期] 点击上面蓝色字体,直接付费下载,即可. 获取代码方式2: ...
- 基于Matlab的合成孔径雷达模拟陆地场景(附源码)
目录 一.生成模拟地形 二.指定搜救系统和场景 三.定义地表反射率 四.配置雷达收发器 4.1 生成数据多维数据集 4.2 可视化 SAR 数据 五.总结 六.程序 合成孔径雷达(SAR)系统使用平台 ...
- semilogx 多条曲线_怎么让两个指数在一个坐标,matlab里怎样一个坐标上显示多个曲线,而且横轴要用指数形式的?谢谢...
Q1:matlab里怎样一个坐标上显示多个曲线,而且横轴要用指数形式的?谢谢 多个纵轴数组分别是y1,y2,y3,横轴数组为x 命令为: semilogx(x,y1,x,y2,x,y3) 完了 Q2: ...
- MATLAB中如何删除坐标上已画出的内容
在某些坐标显示设计中,需要删除坐标系上已画出的内容,使得显示效果不显得冗余. 代码: %-------------------------------------------------------- ...
- 【联合仿真】Adams六关节机械臂与Matlab/Simulink的联合仿真(上)
Adams六关节机械臂与Matlab/Simulink的联合仿真(上) 前言:一直对于六关节机械臂与simulink的联合仿真很感兴趣,但网上关于实际模型的机械臂联合仿真的资料很少,更别说六关节的联合 ...
最新文章
- 电梯为什么显示停止服务器,教你奥的斯服务器怎么看故障
- 将DVD刻录盘变成移动硬盘
- java-接口与多态-
- struct类型重定义 不同的基类型_C++学习大纲:联合类型
- 盘点国内高投资低票房的电影巨制
- Linux 信号(signal)
- 带你玩转接口测试利器Apifox亲测好用
- 计算机信息系统用户管理规定,计算机信息系统保密管理暂行办法 | 中华全国商业信息中心...
- ShadowGun 飘动的旗帜
- 100道c语言经典编程题,C语言经典例题100道
- 实现px和vw的转换
- 关于google地图的一些使用
- 剑指Offer——腾讯+360+搜狗校招笔试题+知识点总结
- 58、【backtrader股票策略】两资产的配对交易策略(pairs trading strategy)
- 微服架构基础设施环境平台搭建 -(四)在Kubernetes集群基础上搭建Kubesphere平台
- MySQL-备份恢复
- 202012-5 星际旅行 C++暴力80分
- 7-6 重要的话说三遍(5 分)
- ICN6202 4lane MIPI 转LVDS
- DNF 关键组件Gameloader.exe