python元胞自动机模拟交通_结构专栏 | 解析DEFORM软件中的元胞自动机法

ac4874cb135634860edd5b522cefeb3a.png

点击上方蓝色字体,关注我们

导语

金属材料的性能取决于内部的微观组织结构,而好的材料性能和价格是产品最大的优势。随着现代物理冶金、热成形技术、热处理技术和计算机技术的兴起与发展,使预测和控制金属材料热加工过程中的组织演变成为可能。

金属材料的热加工过程中,主要是晶粒的再结晶和晶粒长大现象决定了微观组织晶粒大小和均匀性,20世纪70年代开始,各国学者对于金属材料微观组织演变过程主要集中在两类数学模型上,唯象理论模型和位错模型。

■ 唯象理论模型

大多数学者采用唯象理论模型是经典的Johnson-Mehl-Avrami-Kalmogorav(JMAK)方程来描述动态再结晶和静态再结晶动力学关系,使用JAMK方程需要考虑金属变形过程中的温度、应力、应变、流场等变量与再结晶体积分数的函数关系,在实际应用中,模拟计算的结果与实验测得数据取得了较好的吻合,得到了国内外研究者的广泛认可。

■ 位错模型

位错模型是基于金属在塑性变形过程中,持续应变导致位错密度变化引起的微观演变,通过计算临界条件、晶界迁移速度,建立再结晶体积分数变化率与位错密度分布函数关系的数学模型。

计算机对材料行为的模拟研究与发展主要集中在三个方面:微观行为、介观行为和宏观行为。

■ 微观行为是从电子、原子尺度上的材料行为,主要应用于分子动力学和分子力学方面。

■ 介观行为是指材料显微组织结构的转变,如金属的凝固结晶、再结晶和相变等过程,介观组织模拟的模型主要有几何模型、顶点模型、元胞自动机模型(Cellular Automata,简称CA)、蒙特卡洛模型(Monte Carlo,简称MC)。

■ 宏观行为主要是材料加工方面,主要是材料变形和热处理过程中的应力、应变、温度场等。

元胞自动机法最早提出用于模拟生命系统所具有的自我复制功能,其数学模型是时间、空间、状态都离散,空间相互作用和时间因果关系为局部的网格动力学模型,能够模拟复杂系统时空演化过程,广泛应用于数学、物理学、生物学、化学、地理学和经济学等各个学科的非线性现象和分形结构的研究。

Hesselbarth和Gobel最早将元胞自动机法应用到再结晶方面,他们的模型研究了再结晶形核和晶核长大的动力学以及其不同的参数和算法对再结晶行为的影响,结果成功地描述了已被公认的再结晶动力学理论JMAK方程。随着国内外大量研究人员进一步发展完善模型,将元胞自动机法应用于不同金属材料再结晶过程,与实验测试得到的再结晶结果吻合。

DEFORM软件以模拟金属变形和热处理过程为主要目的,在不断深入研究发展中,加入了金属微观组织演变模拟,能够从宏观和介观两个尺度下模拟金属材料变形行为和组织演变过程,不但具有经典的JMAK法用于金属再结晶模拟,而且包含了当前流行的元胞自动机法和蒙特卡洛法,能够直观的分析观察晶粒演变过程。

DEFORM中的CA法介绍

目前CA法在再结晶模拟方面的大部分研究与应用,都是针对具体的材料和特定变形条件下,研究人员通过Fortran、MATLAB等编译软件编程定义转变规则和图形可视化,无法直接输入实际复杂的工艺加工过程,适用普遍性不强,难以推广。

DEFORM软件做为成熟的商业化软件,使用向导式界面设置界面,流程化操作,简单易用,元胞中的转化规则采用位错模拟模型,与软件中的JMAK方法可形成对照,互相印证,模拟结果可靠。

bd8cf715ea85f9d6d0e52c036f734da6.png

▲ CA模型设置界面

工件研究位置的选择

元胞自动机晶粒组织演变模拟都是在介观尺度下的,不可能同时对一个实际工件的所有位置模拟计算,否则计算工作量太大无法实现,因此首先需要确认的是分析哪个位置点。在实际金属加工工艺当中,金属的各个部位变形差异大, DEFORM软件能够在宏观模拟计算中得到金属在变形和热处理过程中各个部位的应力、应变、温度、流场等场变量,对比分析宏观场变量差异性,选择差异较大的位置点作为分析点,可减少重复的计算量。

元胞生成

DEFORM软件中直接定义元胞晶格横向和纵向数目即可自动生成。晶粒再结晶模拟中,小的元胞晶格数目50×50、大的500×500,甚至更多,满足了各类金属不同大小晶粒尺寸分布的需求。另外还需要用户从计算机硬件配置和计算时间上考虑来设置初始元胞的数目。

初始元胞形态

再结晶模拟的初始元胞形态是初始晶粒的大小和分布,DEFORM软件为更加符合实际工艺进行模拟,可通过EBSD扫描电子显微镜看到的晶粒分布结果直接输入到软件中使用。如果不方便读取导入,还可通过初始晶粒尺寸的平均值和标准变差,自动生成晶粒初始分布。

元胞变化规则

根据位错模拟模型理论,材料在变形和热处理过程中,变形导致加工硬化产生位错,回复再结晶位错消失。DEFORM软件中的CA法包括了位错数学模型、再结晶类型、形核条件、晶粒长大等四个元胞变化规则,全面还原了晶粒的再结晶与长大过程

■ 位错数学模型。DEFORM使用的是Laasraoui-Jonas硬化和恢复模型的改进版本,其中回复发生的单元是随机的,这导致了不均匀的位错分布,有利于再结晶的开始。计算过程考虑了金属变形过程中的应变、应变速率、温度等场变量,直接从宏观模拟计算结果中提取,对于复杂的成形和热处理工艺更易使用。数学模型如下所示:

f8524a80d12c48f8c5468f24e0860ed0.png

▲ 式中,m为硬化敏感系数,Q诶激活能,h0硬化常数、r0回复常数、为应变速率修正系数,K为用户指定。对于铝合金、镍基合金、钢等,DEFORM软件提供这些材料在上述方程中的参考值,以及退火后金属材料中的初始位错密度大小,用户也可任意输入其它材料的系数值。

■ 再结晶现象。在成形和热处理过程中,常见的有不连续动态再结晶、亚动态再结晶、静态再结晶等现象,用户可直接选择,对于其它如连续动态再结晶、几何动态再结晶、粒子激发形核等现象,也在开发当中。

■ 形核条件。目前提供的形核条件有局部能量饱和、位错密度阈值、位错密度阈值加概率、位错密度阈值加能量饱和等多种方法,选择后还可详细进一步定义。

■ 晶粒长大。形核后,晶粒长大主要是晶界的迁移过程,迁移速率可设置为常数、位错角的函数、或温度的函数等。

如果用户需要使用新的元胞转变规则模拟微观组织变化,允许自定义二次开发,在DEFORM软件界面下,综合考虑变形和热处理过程中的宏观场变量,模拟晶粒的演化过程。

元胞自动机设置定义完成后直接点击计算即可。模拟结果展示了整个加工工艺过程中当前位置点的晶粒、晶界、位错密度的分布,以及晶粒大小、晶界角、结晶形状长宽比的统计图。

0e16f8bbd746afc1210fe5d3de71de94.png

DEFORM中的CA法应用

下图所示为铝合金棒料的反向挤压成形案例,棒料挤压成形后,外缘红色区域出现了粗大晶粒缺陷,通过DEFORM软件模拟其成形和微观组织演变过程,提前预测到缺陷,并分析粗大晶粒的产生的原因,后续可通过修改挤压速度、金属温度等工艺参数优化工艺。

2496bfd0d07f537fb5867918648b02d0.png

使用CA法模拟计算得到结果如下所示

挤压开始后发生动态再结晶,平均晶粒尺寸由于再结晶现象发生不断变小,但挤压完成后,从棒料外缘区域开始晶粒长大,出现了粗大晶粒。随着前端棒料温度的缓慢冷却,晶粒不断长大,挤压完成后将会产生更多的粗大晶粒。

5c383aff7e9db6ea93a746b85c1a30a7.png

▲ 未挤压区域平均晶粒尺寸约23.4μm

a74f55c65f7d8966eec5c38b37c1af18.png

▲ 挤压前端开始再结晶时平均晶粒尺寸5.2 μm

7778854387782624aa5dcfa2dc574835.png

▲ 再结晶完成时平均晶粒尺寸4.9 μm

18c46d89f43832b7e6c47ea18c468143.png

▲ 晶粒长大后平均晶粒尺寸20 μm

使用DEFORM软件的JAMK模拟得到的结果如下

对比分析挤压阶段各个区域的平均晶粒尺寸分布和大小,结果一致。

8a6e281a06d038a1b9391e87870efdb9.png

▲ JMAK法模拟结果

实际试生产后的,对棒料成形阶段的各个断面观察,如下图所示,金属材料刚挤出型腔时无粗大晶粒,之后从边缘位置开始晶粒长大产生粗大晶粒,远离型腔端面后,由表面向里晶粒不断长大,最终只有芯部保持了细小的晶粒。挤压完成后的粗大晶粒占到了总体积的70%以上,与模拟结果一致。

9c8e0c5c454a179224c82f55ba764abb.png

结束语

DEFORM软件中CA元胞自动机法能够结合宏观模拟计算结果,应用的位错理论模型适用大部分金属类型,是一种直观的可靠的金属再结晶演变过程的模拟工具。

1796ab572dad1d0988c892f229fb7254.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/446192.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java 递归

概念 代码 package lesson.l11_oop2;/*** Illustration** author DengQing* version 1.0* datetime 2022/7/2 21:42* function 递归:求n个数的和、乘积*/ public class Recursion {public static void main(String[] args) {Recursion recursion new Recursion();S…

密码学专题 非对称加密算法指令概述 DH算法指令

DH概述 用于密钥交换的公开算法,广泛应用于各种安全协议SSL协议同样支持DH算法DH算法使用之前需要预先共享两个参数,本原元g和模n,这两个参数影响到算法的安全性,因此需要预先生成并检测其安全性生成这些必要参数和管理这些参数的…

java 封装和隐藏 权限修饰符

概念 问题的引入 封装性的体现 权限修饰符 案例 package lesson.l11_oop2;/*** Illustration** author DengQing* version 1.0* datetime 2022/7/3 15:28* function*/ public class Person {private int age;public void setAge(int age) { /* if (age<0||age>…

密码学专题 非对称加密算法指令概述 DSA算法指令

DSA算法和DSA指令概述 DSA算法是美国国家标准的数字签名算法&#xff0c;只具备数字签名的功能不具备密钥交换的功能生成DSA参数然后生成DSA密钥&#xff0c;DSA参数决定了DSA密钥的长度三个指令首先是dsaparam指令&#xff0c;该指令主要用来生成DSA密钥参数&#xff0c;并提…

每天定时打开某个网页_Python科普帖定时通知

0 复习上一关我们学习了selenium&#xff0c;它有可视模式与静默模式这两种浏览器的设置方法&#xff0c;二者各有优势。然后学习了使用.get(URL)获取数据&#xff0c;以及解析与提取数据的方法。在这个过程中&#xff0c;我们操作对象的转换过程&#xff1a;除了上面的方法&am…

java 构造器

概念 案例1 package lesson.l11_oop2;/*** Illustration** author DengQing* version 1.0* datetime 2022/7/3 15:28* function*/ public class Person {private int age;private String name;public Person() {this.age 18;}public Person(int age, String name) {this.age …

密码学专题 信息摘要和数字签名指令

信息摘要 区别于对称加密和非对称加密&#xff0c;信息摘要算数是一种不可逆的操作&#xff0c;无论输入数据的大小输出的数据长度是固定的信息摘要算数对输入很敏感&#xff0c;即使数据变化很细微&#xff0c;输出的结果会出现很大的差异从不同输入得到相同的输出的概率非常…

dataframe 筛选_Spark.DataFrame与Spark.ML简介

本文是PySpark销量预测系列第一篇&#xff0c;后面会陆续通过实战案例详细介绍PySpark销量预测流程&#xff0c;包含特征工程、特征筛选、超参搜索、预测算法。在零售销量预测领域&#xff0c;销售小票数据动辄上千万条&#xff0c;这个量级在单机版上进行数据分析/挖掘是非常困…

密码学专题 证书和CA指令 证书和CA功能概述

为什么需要证书 实现了公钥和私钥的相互验证&#xff0c;但是任何人都可以生成很多的密钥对&#xff0c;密钥对并没有关联实体身份&#xff0c;因此诞生可数字证书前提是CA是所有用户都信任的用户需要将自己的信息和公钥交给CA进行认证生成一个属于自己并被其与用户认可的数字…

密码学专题 证书和CA指令 申请证书|建立CA|CA操作|使用证书|验证证书

Req指令介绍 功能概述和指令格式 req指令一般来说应该是提供给证书申请用户的工具&#xff0c;用来生成证书请求以便交给CA验证和签发证书。但是&#xff0c;OpenSSL的req指令的功能远比这样的要求强大得多&#xff0c;它不仅可以生成RSA密钥、DSA密钥&#xff0c;以及将它们…

密码学专题 OpenSSL标准转换指令

概述 繁多复杂的各种文件编码格式、证书格式和密钥格式等。事实上&#xff0c;并非OpenSSL开发者想要将数字世界弄得如此令人头疼&#xff0c;只是由于各种原因&#xff0c;数字世界存在各种不同的标准&#xff0c;为了尽量兼容这些不同的标准&#xff0c;OpenSSL开发者才相应…

java pakage、import关键字

package介绍 常用的包 import 案例

密码学专题 OpenSSL中SSL相关指令

再谈SSL和OpenSSL 由于SSL协议已经是密码学和PKI技术中非常具体的一个应用协议&#xff0c;为了实现它&#xff0c;OpenSSL在密码学基础应用和PKI技术的基础实现上做了大量的工作&#xff0c;才逐渐形成和奠定了OpenSSL在密码学应用和PKI技术开发中的重要基础软件包地位。Open…

使用MetaMask实现转账交易时附带Input Data数据

进入如下页面&#xff0c;点击View Assert in Explorer进入Etherscan网站&#xff0c;就可以看到本账户先前所有的交易信息。 字段分析 Txn Hash 是交易的HashMethod&#xff1a;交易的类型&#xff0c;一般是两种&#xff0c;如果是Transfer指定的是合约部署&#xff1b;如…

Ubuntu安装Google浏览器

下载谷歌浏览器 直接使用Ubuntu自带的火狐浏览器进行下载 默认下载到/tmp临时文件夹里面&#xff0c;考虑到权限问题&#xff0c;需要将其移动到 Downloads文件夹下面使用命令 sudo mv ./goo&#xff08;Tab&#xff09;~/Down(Tab)使用命令行的方式进行下载 wget https://dl.g…

普通类创建获取session 方式_猿蜕变11——一文搞懂mybatis花式使用方式

看过之前的蜕变系列文章&#xff0c;相信你对mybatis有了初步的认识。但是这些还不够&#xff0c;我们今天进一步来了解下mybatis的一些用法。猿蜕变同样是一个原创系列文章&#xff0c;帮助你从一个普通的小白&#xff0c;开始掌握一些行业内通用的框架技术知识以及锻炼你对系…

Ubuntu配置IPFS的环境

参考链接 Ubuntu上IPFS环境搭建 - 简书 下载安装包 下载地址&#xff1a;https://dist.ipfs.io/#go-ipfs页面会自动根据你的操作系统提供适合的下载安装包&#xff0c;所以需要在Ubuntu环境下点开上面那个链接&#xff0c;网页自动识别当前的平台并提供对应的版本&#xff0c…

composer升级_Composer-命令简介

简介Composer 是一个用于 PHP 依赖管理的工具。它实现了让你声明项目所依赖的库&#xff0c;并帮你完成安装/更新过程。以下命令来自 composer version 1.8.0。翻译使用【百度翻译】。通过在命令窗口执行&#xff1a;composer或者&#xff1a;composer list得到 composer 的全部…