Below you will find a series of lectures that use FiPy to introduce the reader to the phase field method. The course has been divided into six sections. Each section is expected to take from one to two weeks in length. For each section, a set of lectures is presented in PDF, QuickTime?, PowerPoint?, KeyNote? (compressed), and html.

The sequence is of lectures is more or less linear. The reader is brought from not having a background on Python to deploying a single component solidification phase field. An overview of the state-of-art of the phase field is presented.


What to expect
Very basic principles are reviewed: The concepts of Finite Volumes, numerical stability (implicit and explicit), and non-linear solvers are discussed. The reader is walked through a step-by-step python script that outlines elementary features such as array creation, for-loop controls, text printing to the terminal, etc. (see

The reader is introduced the simplest FiPy features: Mesh creation, Variable definition and initialization, Dirichlet boundary conditions, equation construction (the diffusion equation), time-stepping, viewer creation, and solver iteration. The overview is meant to help the student to establish links between the developed theoretical concepts, and the numerical tools that FiPy has available to solve the proposed PDE.

Introduction: Finite Volumes

Introduction: Stability in Finite Volumes and Finite Differences Systems

Introduction: Non-Linear Systems

Introduction: A Crash Course on FiPy


Detailed FiPy Example

What to expect
The present lecture describes the different tools that the FiPy library has available. While it is not meant to be comprehensive, the reader is introduced to the different types of Grids (1S, 2D, 3D), Equation terms, Boundary Conditions, Viewers, Iterators, etc. A set of exercises is proposed to distinguish the practical difference between Implicit and Explicit terms (,, and

A Detailed FiPy Example: Finite Volumes Lab II: Cooking a Simulation from Scratch

Spinodal Decomposition and an Introduction to the Phase Field Method

What to expect
In two lectures, the reader is introduced to the phase field approach. As an enabling application, spinodal decomposition is described and numerically implemented in FiPy. The first lecture focuses in the theory, and the second one implements numerically the described concepts. The Cahn-Hilliard equation is introduced. A simple example python script ( summarizes the concepts.

Phase Field Method: An Introduction

Phase Field Method: Spinodal Decomposition Computer Laboratory

Ferroelectrics and Non-Conserved Order-Disordered Transformations

What to expect
The discussion on phase field modeling and conserved order-disorder transformations is extended to phase transformations for non-conserved order parameters. As an enabling application, a one-parameter two-dimensional ferroelectric material is described. The Allen-Cahn equation is presented.

Ferroelectric Materials: An Introduction

Ferroelectric Materials: Ferroelectric Kinetics Computer Lab

Solidification Phase Field Modeling

What to expect
Once the concept of conserved and non-conserved order parameters have been defined, the concept of phase field is introduced to construct the simplest model to describe a phase transformation (liquid--solid). The phase field variable is used to link the thermal equilibrium information of the parent and product phases. The thermal diffusion equation is revisited to accommodate the newly defined variable. Finally, important physical parameters of the model such as the thickness of the interface and the surface tension of the liquid-solid boundary are used to fit the phase field energy penalty and the gradient energy coefficient. A fipy script summarizing the discussed concepts is presented (

The discussion of the single-component phase field model is extended to describe binary systems by using concepts of thermodynamics of solutions. A regular solution model is used, but the described concepts can easily be extended to increasingly complicated models. The unary phase field model is reviewed to show how the chemical contribution to the phase field is incorporated. Sharp interface model concepts and experimental data are used to specify the mobility of the phase field boundary.

Solidification Phase Field Modeling: Single Component

Solidification Phase Field Modeling: Binary Component

Advanced Concepts and Generalization

What to expect
On the first of these two closing lectures, an orientational phase field is introduced to include the effects of crystallography during the impingement of coarsening grains. Also, surface tension anisotropy is included in the built framework in order to accurately describe dendrite growth and impingement. Finally, the dihedral angle found when nuclei grows at walls, edges, and corners is incorporated into the model.

In the second and final lecture of the series, the laws of thermodynamics are taken as a point of reference to derive phase field models. Described examples include the wave equation, electromigration in metallic and semiconducting systems, and charge transport in ionic systems. Advantages and disadvantages of the phase field approach are presented.

Advanced Concepts and Generalization: Anisotropy, Grain Boundaries, and Wetting

Advanced Concepts and Generalization: Phase Field Generalizations


  1. Edwin García

Assistant Professor of Materials Engineering
School of Materials Engineering
Purdue University
Neil Armstrong Hall of Engineering
701 West Stadium Avenue
West Lafayette, IN 47907-2045
phone: (765) 494-0148


This work was possible thanks to the financial support of the Center for Theoretical and Computational Materials Science at the National Institute of Standards and Technology.

Last modified 5 years ago Last modified on 03/15/10 15:08:02