﻿ 基于voronoi图的材料初始组织的生成
«上一篇
 文章快速检索 高级检索

 哈尔滨工程大学学报  2018, Vol. 39 Issue (6): 1093-1097  DOI: 10.11990/jheu.201703008 0

### 引用本文

LIU Yingwei, ZHANG Yang. The generation of the initial materials microstructure based on the voronoi diagram[J]. Journal of Harbin Engineering University, 2018, 39(6), 1093-1097. DOI: 10.11990/jheu.201703008.

### 文章历史

The generation of the initial materials microstructure based on the voronoi diagram
LIU Yingwei, ZHANG Yang
Institute for Metallic Materials, College of Materials Science and Chemical Engineering, Harbin Engineering University, Harbin 150001, China
Abstract: When the Monte Carlo method is used to simulate microstructure evolution, defects exist in the initial material microstructure due to traditional methods. Such defects can be overcome by adopting the Voronoi diagram. In this study, a nonrestrictive Voronoi diagram was created by Matlab. The unrestricted Voronoi diagram was cut by angle comparison to generate a restrictive Voronoi diagram conforming to reality. Finally, the strategies of angle comparison and clockwise search were used to group the line segments in the restrictive Voronoi diagram in accordance with the polygons to which the line segments were subordinated. Thus, the initial material microstructure was generated in the tier of data structure. Calculations were carried out by a program prepared based on the abovementioned algorithm. From a statistical perspective, the generated microstructure was very close to the real microstructure, thereby laying a solid foundation for follow-up simulation.
Key words: Monte Carlo    microstructure evolution    voronoi diagram    data structure    homogeneous nucleation    crystallization    grain statistics    normal distribution

1 voronoi图的生成 1.1 非限制性voronoi图

Matlab的MPT工具箱中的voronoi(X, Y)函数有生成voronoi图的功能, 其调用格式为

 $\left[ {{\rm{Vertex\_X,Vertex\_Y}}} \right] = {\rm{voronoi}}\left( {X,Y} \right)$ (1)

 Download: 图 2 voronoi图与边界 Fig. 2 The voronoi diagram and its periphery
1.2 限制性voronoi图

 Download: 图 3 非限制性voronoi图的剪裁 Fig. 3 The cutting of the unrestricted voronoi diagram

 ${{x'}_a} = {x_o} + \left( {{y_k} - {y_o}} \right){\rm{c}}\tan \theta$ (2)

2 晶粒的生成

voronoi图被直线分割成很多区域，直观上，每个区域似乎代表一个晶粒，但这只是表面现象。程序生成voronoi图时，并没有把属于同一多边形(晶粒)的直线归在一起，因此在数据结构层次上，这些线段之间没有逻辑联系，为此还要做另一项重要工作，就是把每个晶粒(多边形)所包含的晶界(线段)找到，并存储在一起。

 Download: 图 5 晶粒的生成 Fig. 5 The generation of a crystal grain

1) 首先选择任一条边，(如ab)作为开始，先将这条边的始点a和终点b的坐标添加到poly中：

 ${\rm{poly}}.\;{\rm{coor}}\left( {1,{\rm{count}}} \right) = {x_a}$
 ${\rm{poly}}.\;{\rm{coor}}\left( {2,{\rm{count}}} \right) = {y_a}$
 ${\rm{poly}}.\;{\rm{coor}}\left( {1,{\rm{count}} + {\rm{1}}} \right) = {x_b}$
 ${\rm{poly}}.\;{\rm{coor}}\left( {2,{\rm{count}} + {\rm{2}}} \right) = {y_b}$

2) 接下来在b点选择下一条属于多边形①的边。因为从b点有两条出发线段的bdbc，必须选择线段bd而舍弃bc。为了能做到这一点，需在b点建立一个如图 5所示的局部坐标系ybx′，然后计算bdbcbx′轴正方向所成的夹角θdθc(图中未标出，可参考图 3中的θ的定义)，然后按顺时针方向进行搜索，也就是说沿着多边形①的边界行走时，多边形始终在行走方向的右侧。

 ${\rm{poly}}.\;{\rm{coor}}\left( {1,{\rm{count}} + {\rm{2}}} \right) = {x_d}$
 ${\rm{poly}}.\;{\rm{coor}}\left( {2,{\rm{count}} + {\rm{2}}} \right) = {y_d}$

3) 接下来，把bd边当成ab边，重复上述过程，就会搜索到f点, 将f点信息记录到poly结构中：

 ${\rm{poly}}.\;{\rm{coor}}\left( {1,{\rm{count}} + {\rm{3}}} \right) = {x_f}$
 ${\rm{poly}}.\;{\rm{coor}}\left( {2,{\rm{count}} + {\rm{3}}} \right) = {y_f}$

4) 在上述搜索过程中，每搜索到新的线段，都需要将新线段的终点(如df线段的f点)的坐标与最初起始点的坐标(即xaya)相比较，如果xf=xayf=ya，则说明线段首尾相接，形成闭合多边形，至此搜索结束，否则继续搜索。当搜索到一个完整的多边形后，就可以把poly添加到结构poly_find中：poly_find (n)=poly，n为多边形(晶粒)序号。

3 计算实例

3.1 晶核数目的估算

 $I = {I_0}\exp \left( { - \frac{{16{\rm{ \mathsf{ π} }}{\sigma ^3}}}{{3\Delta G_v^2KT}}} \right) \cdot \exp \left( { - \frac{Q}{{KT}}} \right)$ (3)

 ${G_m} = \frac{{\Delta {H_m}}}{{{T_m}}}\Delta T$ (4)

 ${G_V} = \frac{{{G_m}}}{{{V_m}}}$ (5)

Vm为液态铁的摩尔体积, 可由下式得到：

 ${V_m} = \frac{{{M_{F{\rm{e}}}}}}{{{\rho _L}}}$ (6)

 ${\rm{core}}\_{\rm{vol}} = I \times 5.13 \times 35400$ (7)

 ${\rm{core}}\_{\rm{zone}} = 0.5 \times 0.43 \times 1 \times {10^{ - 9}}/{\rm{core}}\_{\rm{vol}} \approx 220\left( {个} \right)$

3.2 初始组织可信度评价