Modeling approach

Method

Grains in polycrystalline microstructures can be approximated by ellipsoids due to their convex nature. Thus packing the particles (ellipsoids) which follow a particular size distribution into a pre-defined domain becomes the objective. The general framework employed in this regard is the collision detection and response system for particles under constant random motion in the box. Each particle \(i\) in the domain is defined as an ellipsoid in three-dimensional Euclidean space \(\mathbb{R}^3\), and random position and velocity vectors \(\mathbf{r}^i\), \(\mathbf{v}^i\) are assigned to it. During their motion, the particles interact with each other and with the simulation box. The interaction between particles can be modeled by breaking it down into stages of collision detection and response. And the interaction between particles and the simulation box can be modeled by evaluating if the particle crosses the boundaries of the box. If periodicity is enabled periodic images on the opposite boundaries of the box are created, else the particle position and velocity vectors have to be updated to mimic the bouncing back effect.

Two layered collision detection

For \(n\) ellipsoids in the domain, the order of computational complexity would be \(O(n^2)\), since each ellipsoid in the domain is checked for collision with every other ellipsoid. A two layered collision detection scheme is implemented to overcome this limitation. The outer layer uses an octree data structure to segregate the ellipsoids into sub-domains, this process is done recursively until there are only a few ellipsoids in each sub-domain. The inner layer consists of bounding spheres hierarchy, wherein ellipsoids of each octree sub-domain are tested for collision only when their corresponding bounding spheres overlap. This effectively reduces the number of collision checks and thus the order of computational complexity to \(O(nlog(n))\). The general framework of collision detection response systems with the two layer spatial partitioning data structures has the following features:

  • Recursively decompose the given domain into sub-domains based on octree data structure.
  • Perform collision test between bounding spheres of ellipsoids belonging to the same sub-domain.
  • Test for ellipsoid overlap condition only if the bounding spheres overlap.
  • Update the position and velocity vectors \(\mathbf{r}\) and \(\mathbf{v}\) based on collision response.
  • Test for collision with simulation domain and create periodic images on the opposite boundaries (or) mimick the bouncing against the wall effect.

Layer 1: Octree data structure

To ensure efficient collision checks an octree data structure is initialized on the simulation box. With pre-defined limits for octree sub-division and particle assignment, the octree trunk gets divided into sub-branches recursively. Thus, by only performing collision checks between particles belonging to a particular sub-branch, the overall simulation time is reduced.

_images/octree.png

Figure: Simulation domain and its successive sub-branches on two levels, where particles are represented by red filled circles (left). Octree data structure depicting three levels of sub-divisions of the tree trunk (right).

Layer 2: Bounding sphere hierarchy

_images/layers.png

Figure: Upper layer consists of the octree sub-branch with particles (left) and lower layer is defined by bounding spheres for particles \(i, j\) with radii \(a^i, a^j\) respectively (right).

Overlap detection

Actual overlap of two static ellipsoids is determined by the algebraic separation condition developed by Wang (2001). Consider two ellipsoids \(\mathcal{A}: \mathbf{X}^T \mathbf{A} \mathbf{X} = 0\) and \(\mathcal{B}: \mathbf{X}^T \mathbf{B} \mathbf{X} = 0\) in \(\mathbb{R}^3\), where \(\mathbf{X} = [x, y, z, 1]^T\), the characteristic equation is given as,

\[f(\lambda) = det(\lambda \: \mathbf{A} + \mathbf{B}) = 0\]

Wang et al. have established that the equation has at least two negative roots and depending on the nature of the remaining two roots the separation conditions are given as,

  • \(\mathbf{A}\) and \(\mathbf{B}\) are separated if \(f(\lambda) = 0\) has two distinct positive roots.
  • \(\mathbf{A}\) and \(\mathbf{B}\) touch externally if \(f(\lambda) = 0\) has a positive double root.
  • \(\mathbf{A}\) and \(\mathbf{B}\) overlap for all other cases.

Particle (Ellipsoid) packing

User defined simulation box size and ellipsoid size distribution are used for creating simulation box and ellipsoids. The simulation begins by randomly placing ellipsoids of null volume inside the box and each ellipsoid is given a random velocity vector for movement. As the simulation proceeds the ellipsoids grow in size along their axes and also collide with one another updating their position and velocities. The simulation terminates once all the ellipsoids have reached their defined volumes, the process is depicted pictorially in the figure below.

_images/packing.png

Figure: Ellipsoid packing simulation with partice interactions at three different timesteps.

Note

Since the application is microstructure generation, where all grains have a predefined tilt angle, the angular velocity vector \((\mathbf{w})\) is not considered for the ellipsoids and thus their orientations are constrained.

Applications

Microstructure with equiaxed grains

Voronoi and Laguerre tessellations are the most popular methods for polycrystalline microstructure modeling. These approaches require positions and weights as input parameters for generating tessellation cells that resemble grains of a polycrystal. In this regard, the proposed particle packing approach can be used to generate the required information. Microstructure with equiaxed grains are best approximated by spheres and after obtaining the necessary packing fraction, positions and radii can be outputted.

_images/sphere_app.png

Figure: An example of sphere packing (left), radical voronoi tesselation (center) and FE tetrahedral mesh (right).

In this example, to obtain high packing fraction the box size is set as the volume sum of all the spheres. This definition of the box size will inevitably result in overlap of spheres at the final stages of the simulation. This is because packing fraction of \(100\%\) is unachievable without the occurrence of overlaps. Reasonable amount of overlap is accepted, as the input data obtained from EBSD analysis of grain size is also an approximation. Hence for further post-processing, it is suggested to choose the time step at which the spheres are tightly packed and there is least amount of overlap. The remaining empty spaces will get assigned to the closest sphere when it is sent to the tessellation and meshing routine. Complete freedom in selecting the desired time step of the simulation to be sent for further processing is one of the highlights of this approach.

Using the information obtained from sphere packing, polycrystal generation and meshing software Neper can construct the radical Voronoi tessellations. And FE discretization of the tessellation cells by tetrahedral elements can also be performed by Neper - Quey (2011) with assistance from FE mesh generating software Gmsh - Geuzaine (2009).

Microstructure with elongated grains

Microstructures generated through conventional manufacturing processes like rolling and state of the art processes like additively manufacturing (AM) consists of both elongated and equiaxed grains. In the context of AM, this is due to the complex solidification process, which occurs as a result of constant re-heating and re-cooling of previously melted layers during the manufacturing. The morphology of the grains along with texture plays an important role in the resulting mechanical behavior. Hence, modeling such complex microstructures is vital and in this regard the proposed approach of random ellipsoid packing is used.

_images/ellipsoid_app.png

Figure: An example of ellipsoidal packing (left), Voxelization - Initial assignment (center) and Final assignment (right).

The ellipsoid packing process is similar to that of sphere packing described earlier. Once the ellipsoids are tightly packed with minimal acceptable overlaps, they are processed further for meshing. Since Voronoi tessellations cannot be applied to anisotropic particles such as ellipsoids, a voxel based mesh generating routine that utilizes spatial partitioning data structure \(k\)-d tree for discretizing the RVE is employed. The voxelization (meshing) routine is made up of 2 stages. The number of voxels in the RVE has a direct influence on the FE solution and the FE simulation time, hence it must be meticulously chosen. The choice is not arbitrary, as it is constrained by how well the grains of the RVE are represented with respect to their geometry and the FEM simulation time.