Materials Science Animations

Educational animations for materials science

What I cannot see, I do not understand.

This is an example gallery for my materials science animations created with ManimCE.



Atomistic simulation of the critical radius

In the classical nucleation theory, there is a concept called the critical radius for nucleation. When a nucleus’s radius is smaller than the critical radius, it tends to shrink; when it is larger than the critical radius, the nucleus becomes stable and will continue to grow in size. This is a result of the energy barrier created by the competition between the interfacial energy and the volumetric energy difference when a new phase nucleates.

The question is if any nucleus with a radius smaller than the critical radius tends to shrink, how could any stable nuclei form? The answer is that nucleation is a stochastic process where the atoms are colliding into each other with some probabilities of impingement and detachment. It is possible that random energy fluctuations can push the nucleus radius beyond the critical radius, allowing stable nuclei to form.

This animation uses Pymunk for the MD simulation and NetworkX for the graph network construction. ManimCE is used to render the outputs after each time step.


Gibbs free energy equation

The following animation shows a step-by-step breakdown of the Gibbs free energy equation in a binary system, as well as how each variable affects the final shape of the Gibbs curve.


Cu-Ag Phase diagram construction from common tangents

This shows the construction of a real Cu-Ag binary phase diagram from the common tangents of gibbs curves. The Gibbs free energy curves are extracted from Thermo-Calc.


Legendre Transformations

Legendre transformation allows one to swap the independently controlled variables while retaining all the information in the original thermodynamic potential. The following animation shows the transformation between \(U(S,V)\) and \(F(T,V)\), where \(F\) is the tangent line intercept with the \(U\) axis.


One can clearly see the change in concavity when we go from an extensive variable \(S\) to an intensive variable \(T\). We can also go one step further, showing the Legendre transformation from \(U(S,V)\) to \(G(T,P)\), where \(G\) is the tangent plane intercept with the \(U\) axis.



Diffusion with Cahn-Hilliard Equation

The Cahn-Hilliard equation is often used to model phase separation as a result of spinodal decomposition. The following animations are created with a hand-written finite-difference partial differential equation solver in Numpy. The numerical calculations are optimized with the Numba package. Here, we explore the effect of the average starting composition and noise distribution on the final microstructure.

With the average start composition as 0.5, and random noises \(\pm 0.05\):


With the average start composition as 0.3, and random noises \(\pm 0.05\):


With the average start composition as 0.5, and square noises \(\pm 0.1\):


With the average start composition as 0.5, and wave noises \(\pm 0.1\):


TTT Diagram

To model phase transformation kinetics, we can write the phase fraction by volume that has been transformed ( \(f_\mathrm{transformed}\) ) as a function of the steady-state nucleation rate ( \(J\) ), the growth rate ( \(\dot{R}\) ), and time ( \(t\) ):


When the temperature ( \(T\) ) is below the phase transformation point, the nucleation rate should decrease with increasing temperature (i.e., decreasing undercooling), and the growth rate should increase with increasing temperature. As the temperature increases, we can trace the time durations it takes to reach 10%, 50%, and 99% transformed to obtain a Time-Temperature-Transformation (TTT) diagram.


Voronoi crystall growth

When the crystal growth is isometric, and all nuclei have the same growth rate, the final cell boundary is equivalent to a Voronoi diagram.


Fourier series as solutions to partial differential equation

When students are first taught the solution to Fick’s Second Law of diffusion, they are often presented with the following formula:

\[c(x,t)=\frac{4c_0}{\pi}\sum_{j=0}^\infty\left(\frac{1}{2j+1}\right)\sin\left[\frac{\left(2j+1\right)\pi x}{L}\right]\exp\left[-\left(\frac{\left(2j+1\right)\pi}{L}\right)^2Dt\right]\]

where \(c(x,t)\) is the concentration profile as a function of position (\(x\)) and time (\(t\)); \(L\) is the diffusion length; \(c_0\) is the initial impurity concentration; \(D\) is the diffusion coefficient. If the students have no prior exposure to Fourier series, they may be puzzled by this formula and wonder why we are summing over sine functions. To reduce confusion, we can visualize the summation of an infinite sine series giving rise to a square wave, which satisfies the initial boundary conditions:

\[c(x,t=0)=\frac{4c_0}{\pi}\sum_{j=0}^\infty\left(\frac{1}{2j+1}\right)\sin\left[\frac{\left(2j+1\right)\pi x}{L}\right]\]



Cubic 3-fold rotational symmetry

The 3-fold rotational symmetry for a cube.


First-Principle Calculations

Convex hull phase diagram

The following animation visualizes the 3D convex hull phase diagram. The geometric intuition for the convex hull is that one can imagine there is a piece of cloth being pulled upward from the bottom, and when that cloth comes into contact with all the phase points in 3D, the shape that the cloth makes when being pulled very tightly is the convex hull. Near the end, the animation also shows a re-constructed convex hull and its 2D phase diagram projection when one phase’s energy is lowered.

The data is queried from the OQMD database, and the convex hull phase diagram is constructed with the Pymatgen package.