【元胞自动机】基于元胞自动机实现六边形网格含Matlab源码
【元胞自动机】基于元胞自动机实现六边形网格含Matlab源码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 简介
元胞自动机不仅是理论计算机科学领域的一个重要的计算模型 ,而且可视为一无限维的离散动力系统 ,被广泛应用于自然科学和社会科学各领域的复杂性的研究中 ,是一个重要的研究方法和工具.该文以Matlab为开发工具 ,开发了元胞自动机的可视模型 ,为其在各个领域的复杂性研究提供了一个简易,可行的计算机仿真工具
.
2 部分代码
function
plotSixGrid(A,L,m,n,RGB,gcf,HL,HW)
%PLOTSIXGRID
绘制六边形网格
%
A[X,Y] 中心坐标
%
L 边长
%
m 行数
%
n 列数
%
gcf 窗口句柄
%
RGB 填充颜色 0 Black 1 White
%
HL 紧邻方式 0 行紧邻 1列紧邻
%
HW 奇偶行突出 0 奇数行突出 1 偶数行突出
if
HW>0
HW
=
1;
else
HW
=
0;
end
%排除错误输入
if
HL>0
HL
=
1;
else
HL
=
0;
end
%排除错误输入
figure(gcf)
hold
on
axis
off
W
=
2; % 线框宽度
Ro3
=
1.732050807568877;% sqrt(3);
t
=
[0, 1.047197551196598, 2.094395102393195, ...
3.141592653589793,
4.188790204786391,...
5.235987755982989,
6.283185307179586]; % linespace(0,2*pi,7);
%
原点坐标存在
if
length(A)==2
%
网格平铺
X_L
=
A(1)+(0:L:L*m);
Y_L
=
A(2)+(0:L:L*n);
%
遍历
for
i=1:m
for
j=1:n
X
=
X_L(i);
Y
=
Y_L(j);
%
根据网格类型,将平铺坐标映射为六边形网格坐标
switch
HL
case
0
x
=
L*sin(t)+Ro3*(X-1)+L*Ro3*3/4+L*Ro3*1/4*(-1)^(j+HW);
y
=
L*cos(t)+Y*3/2;
case
1
%
旋转30°
t
=
t+1.047197551196598;
x
=
L*sin(t)+X*3/2;
y
=
L*cos(t)+Ro3*(Y-1)+L*Ro3*3/4+L*Ro3*1/4*(-1)^(i+HW);
otherwise
x
=
L*sin(t)+Ro3*(X-1)+L*Ro3*3/4+L*Ro3*1/4*(-1)^(j+HW);
y
=
L*cos(t)+Y*3/2;
end
%
绘制六边形线框
%
在大规模绘图中可能会增加计算开销
plot(x,y,’c’,’Linewidth’,W);
%
填充颜色
try
Color
=
RGB(i,j);
%
Color=[(sin(i/10)+cos(j/8)+2)/4 0 (cos(j/8-4.6)+sin(i/10)+2)/4]
%
填充函数开销异常巨大,尽量小规模测试
fill(x,y,[Color
Color Color])
catch
fill(x,y,[1,0,0])%
异常将显示为红色
end
end
end
end
end
3 仿真结果
4 参考文献
[1]付玉慧, 马鹏森. 基于六边形元胞自动机的船舶追越过程模拟研究[J]. 重庆交通大学学报:自然科学版, 2021, 40(9):6.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
