Single Phase Field Model with Isotropic Surface Energy

From Micro and Nano Mechanics Group
Revision as of 22:57, 11 March 2012 by Caiwei (talk | contribs) (→‎Theory)
Jump to navigation Jump to search

Single Phase Field Model with Isotropic Surface Energy

Seunghwa Ryu and Wei Cai

This tutorial describes the theory and numerical implementation of a basic 3D phase field model. The model has been implemented in both matlab and in MD++. We describe the algorithm of these codes and how to use them in detail. A brief introduction of the phase field model can e found in Chapter 11 of

Computer Simulations of Dislocations, V. V. Bulatov and W. Cai, Oxford University Press (2006).


Download files

The matlab program can be downloaded here. You can download and extract the matlab scripts into a directory of your choice and run the test cases by executing, e.g. pf3d_single_iso.m.

To run the MD++ test cases, first you need to install MD++ on your computer by following the instructions on MD++ Manuals.

Second, copy files ??? and ??? to your input file directory of MD++. You can do so by the following commands (assuming you have installed MD++ in ~/Codes/MD++).

 export MDPP=~/Codes/MD++
 mkdir -p ${MDPP}/scripts/work/phasefield
 cd ${MDPP}/scripts/work/phasefield
 wget http://micro.stanford.edu/mediawiki-1.11.0/images/phasefield.tcl.txt -O phasefield.tcl

Compile executable file

This step is only necessary for running MD++ test cases. In this tutorial, we describe how to run these examples on a linux computer (using mc2.stanford.edu as an example).

You can can compile the executable phasefield by typing

 cd ${MDPP}
 make phasefield build=R SYS=mc2

If compilation is successful, this will create binary file sworig_mc2 file in your ${MDPP}/bin directory. To compile MD++ on a different system, you should set variable SYS to a different value.

Theory

In this simple phase field model, the fundamental degree of freedom is a phase field, . The range of the value for is between 0 and 1. For example, we can think of the region where as the solid phase and the region where as the liquid phase. The region where transitions (rapidly) from 0 to 1 is then the liquid-solid interface.

A free energy functional is defined as the integral of the local free energy density ,



The system evolves in the direction that reduces the free energy. In the Ginzburg-Landau model, the phase field evolves with the following equation of motion that does not conserve the total amount of the solid phase (or liquid phase),

  (GL)
where  is the variational derivative.  

In the Cahn-Hillard model, the phase field eolves with the following equation of motion that conserve the total amount of the solid phase (or liquid phae),

 (CH)

Note here that we have been treating as a function with two independent input variables, which take the values of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \phi} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \nabla\phi} , respectively.

A stationary, planar interface (between liquid and solid) is described by the following solution that satisfies the boundary conditions: Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \phi(x=+\infty) = 1} , Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \phi(x=-\infty) = 0} ,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \phi(x) = \frac{1}{2} [ 1 + \tanh(x/\xi) ] }

where Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \xi = 2\sqrt{\varepsilon/U}}
 is the interface width.

Note that Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{x} = (x,y,z)} but the phase field in this solution is independent of Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle y} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle z} , i.e. the interface is normal to the Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle x} axis.

The interface energy (per unit area) of this solution is

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \sigma = \int_{-\infty}^{\infty} f(\phi,\nabla\phi) dx = \frac{1}{3} \sqrt{\varepsilon U} }

Algorithm

Represent phi by a three dimensional grid of size Nx x Ny x Nz.

How to compute variational derivative. Centered numerical difference.

How to constrain the total amount of solid phase within the Ginzburg-Landau equation. Subtract off average forces, equivalent to using a Lagrangian multiplier, or adjusting the chemical potential of the solid phase.

Test cases

Planar interface

Spherical interface

Algorithm