【元胞自动机】基于元胞自动机模拟晶体生长附matlab代码

简介: 【元胞自动机】基于元胞自动机模拟晶体生长附matlab代码

 ✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。

🍎个人主页:Matlab科研工作室

🍊个人信条:格物致知。

更多Matlab仿真内容点击👇

智能优化算法神经网络预测雷达通信 无线传感器

信号处理图像处理路径规划元胞自动机无人机

1 内容介绍

基于溶质扩散和界面能的作用,考虑成分过冷,曲率过冷,界面能各 向异性和界面扰动等因素,建立了单个等轴枝晶的生长模型.采用元胞自动机(cellular automata)方法模拟了枝晶生长,界面扰动和分枝的竞争演化.对液相中的溶质传输进行了计算.通过模拟发现,凝同过程中溶质容易富集在枝晶臂之间, 同时,随着凝固时间的延长,界面前沿的溶质浓度梯度逐渐下降.

2 部分代码

%

clc;clear;close all;

rand('state',0);

set(gcf,'DoubleBuffer','on');

N=256; % 生成状态矩阵大小的控制参数

S=ones(N); % 生成状态矩阵S

% S(N/2,N/4:N*3/4)=0; % 设置状态矩阵的初始值

S(N/2:N*3/4,N/2)=0; % 设置状态矩阵的初始值

Ii=imshow(S); % 显示状态矩阵

ti=title(['time = 0',', N=0'],'Fontsize',14,'Fontname','Times New Roman'); % 显示时间

T=0; % 记录时间的参数

for k=1:30000; % 循环计算

   xt=4; % 产生粒子的位置

   yt=N/2; % 产生粒子的位置

   Ss=0; % 控制下面循环是否终止的参数

   while Ss<1; % 计算当前粒子的吸附过程

       [dx,dy]=choose_D(0.25,0.25,0.25,0.25); % 计算粒子位移量

       xt=xt+dx; % 计算下一时刻粒子的位置

       yt=yt+dy; % 计算下一时刻粒子的位置

       if xt<2.5|xt>N-1.5||yt<2.5|yt>N-1.5; % 判断粒子是否逸出边界          

           Ss=2; % 把Ss赋值为2,从而可以退出循环

       end

       if [S(xt+1,yt)+S(xt-1,yt)+S(xt,yt+1)+S(xt,yt-1)]<3.5; % 判断近邻是否有粒子

           S(xt,yt)=0; % 固定当前运动的粒子

           Ss=2; % 把Ss赋值为2,从而可以退出循环

       end                

   end

   set(Ii,'CData',S); % 显示当前状态矩阵

   T=T+1; % 累加时间参数

   set(ti,'String',['time = ',num2str(T),', N=',num2str(sum(sum(1-S))-[N/4+1])]); % 更新时间参数

   pause(0.01); % 暂停一下,显示动画效果

end

3 运行结果

image.gif编辑

4 参考文献

[1]黄建峰, 杨屹, 李羽晨,等. 基于元胞自动机法的等轴枝晶生长数值模拟[J]. 热加工工艺, 2010, 39(10):5.

[2]陈瑞, 许庆彦, 柳百成. 基于元胞自动机方法的定向凝固枝晶竞争生长数值模拟[J]. 物理学报, 2014(18):12.

博主简介:擅长智能优化算法神经网络预测信号处理元胞自动机图像处理路径规划无人机雷达通信无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。


相关文章
|
7月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
867 0
|
7月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
227 0
|
7月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
327 8
|
7月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
324 8
|
7月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
670 0
|
7月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
247 0
|
7月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
287 8
|
7月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
376 8
|
7月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
603 12
|
7月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
243 9

热门文章

最新文章