To save content items to your account,
please confirm that you agree to abide by our usage policies.
If this is the first time you use this feature, you will be asked to authorise Cambridge Core to connect with your account.
Find out more about saving content to .
To save content items to your Kindle, first ensure no-reply@cambridge.org
is added to your Approved Personal Document E-mail List under your Personal Document Settings
on the Manage Your Content and Devices page of your Amazon account. Then enter the ‘name’ part
of your Kindle email address below.
Find out more about saving to your Kindle.
Note you can select to save to either the @free.kindle.com or @kindle.com variations.
‘@free.kindle.com’ emails are free but can only be saved to your device when it is connected to wi-fi.
‘@kindle.com’ emails can be delivered even when you are not connected to wi-fi, but note that service fees apply.
An automaton is defined as a “a mechanism that is relatively self-operating; especially: robot” or as a “machine or control mechanism designed to follow automatically a predetermined sequence of operations or respond to encoded instructions” [226]. A classic cellular automaton is like an algorithmic robot. The cellular automata method describes the evolution of a discrete system of variables by applying a set of deterministic rules that depend on the values of the variables as well as those in the nearby cells of a regular lattice. Despite this simplicity, cellular automata show a remarkable complexity in their behavior.
Cellular automata have been used to model a number of effects in materials, mostly recrystallization, corrosion, and surface phenomena, with other applications ranging from hydration in cement to friction and wear, many of these applications being discussed below. Numerous applications extend classic cellular automata to include probabilistic rules, more complex lattice geometries, and longer-ranged rules. With the use of probabilistic rules, the distinction between cellular automata methods and Monte Carlo methods become a bit blurred, as will be discussed below.
In this chapter we will introduce the basic ideas behind cellular automata, using as examples some of the classic applications of the method. We will then go through a few applications of the methods to materials issues, highlighting the power of the method to model complex behavior. Much more detail about a range of applications, both in materials research and elsewhere, can be found elsewhere [68, 268, 269].
In almost all methods used to model materials, the system will be described by a set of discrete objects of some sort. Those objects might be atoms and the goal may be to calculate the cohesive energy by summing interatomic interaction potentials. The objects do not have to be atoms, however. We may want to sum the interactions between spins or dislocations or order parameters or whatever. Learning how to calculate these sums is thus fundamental to essentially all materials modeling and simulation.
In modeling a material we typically face a rather major complication – we are trying to model a macroscopic system that contains large numbers of objects. For example, a bulk sample of a material may include many moles of atoms. Modeling the behavior of all those atoms would be computationally impossible. To approximate the (effectively) infinite systems, we use various boundary conditions, mostly based on introducing a repeating lattice. How one sums the interactions between the objects within the framework of these boundary conditions is the focus of this chapter.
SUMS OF INTERACTING PAIRS OF OBJECTS
We will often encounter systems that consist of objects that interact with each other in some way. The classic example is the cohesive energy of a solid, which is determined from the sum of the interactions between the constituent atoms and molecules. The simplest case is when the interactions occur only between pairs of objects and depend only on the distance between the pairs.
Before introducing more complex methods, we start with a model of a fundamental materials process, the random-walk model of diffusion. The random-walk model is one of the simplest computational models in materials research and thus can help us introduce many of the basic ideas behind computer simulations. Moreover, despite its simplicity, the random-walk model is a good starting place for describing one of the most important processes in materials, the diffusion of atoms through a solid.
RANDOM-WALK MODEL OF DIFFUSION
Diffusion involves atoms moving from site to site under the influence of the interactions with the other atoms in the system. An atom typically sits at a site for a time long compared with its vibrational period and then has a rapid transit to another site, which we will refer to as a “jump”. To describe that process properly requires much more detail than we now have in hand (though we shall rectify that situation somewhat in the forthcoming chapters). Thus, we will take a very simple model that ignores all atomic-level details and that focuses just on the jumps.
Consider the simple example of a single atom moving along a surface, which we will assume consists of a square lattice of sites with a nearest-neighbor distance of a. Diffusion occurs by a series of random jumps from site to site in the lattice, as shown in Figure 2.1.We can understand the basic physics by considering the energy of the interaction between the diffusing atom and the underlying solid, which we show schematically in Figure 2.2a.
In this chapter we introduce the Monte Carlo method, a remarkably powerful approach that is the basis for three chapters in this text. For the purposes of this chapter, Monte Carlo provides an alternative to molecular dynamics for providing thermodynamic information about a material. It differs from molecular dynamics in that it is based on a direct evaluation of the ensemble average, as discussed in Appendix G, and thus cannot yield direct dynamical information, at least as described for the version of Monte Carlo in this chapter.
The Monte Carlo method was devised at Los Alamos in the 1940s to solve multidimensional integrals and other rather intractable numerical problems [227]. The method is based on statistical sampling and is called Monte Carlo in recognition of the very famous casinos there. It is not called Monte Carlo because of gambling – at least not entirely – it is named Monte Carlo at least in part because of its remarkable ability to solve intractable problems.
INTRODUCTION
What is the Monte Carlo method? As first employed, it was a way to solve complicated integrals. As a simple example, Monte Carlo is used to evaluate the one-dimensional integral 1n(x)dx in Figure 7.1a. First, a region that includes the function to be integrated is defined. Random points in that region are chosen via a random-number generator. The integrated function is just the fraction of the points that fall below the curve multiplied by the area of the sampled region.
In Chapter 7, the basic ideas of the Monte Carlo method are presented and demonstrated on two types of problems, the Ising model and simulations of atomic systems. In Chapter 8, applications to molecular systems, including polymers and biomolecules, are discussed. The Ising model does not really fit into the theme of Chapter 7, which is included in the part of the text focused on atomic and molecular scale simulations. The Ising model really belongs in the current chapter, which focuses on the use of the Monte Carlo method to simulate models of materials behavior at the mesoscale. However, the Ising model is just too good an example of the Metropolis Monte Carlo method, so we included it in Chapter 7. Consider its natural home, however, here.
There are many types of Monte Carlo applications that have been developed to model material properties and response. We shall examine only one of them in detail, the Q-state Potts model as applied to grain growth. Not only has the Potts model had wide applicability and impact in materials research, it reflects most of the issues faced in any mesoscale modeling based on the Monte Carlo method.
With the development of inexpensive, yet very fast, computers and the availability of software for many applications, computational modeling and simulation of materials has moved from being entirely in the hands of specialists to being accessible to those who use modeling not as their principal activity, but as an adjunct to their primary interests. With that change in accessibility of materials modeling and simulation come exciting new opportunities for using computational modeling to greatly advance the development and refinement of materials and materials processing.
The goal of this text is not to make experts – there are entire books on subjects that are treated in a few pages here. The text is, by design, introductory and we leave out many, if not most, details about implementation. We will present the key features and possibilities of computational materials science and engineering and discuss how to use them to advance the discovery, development, and application of materials.
MODELING AND SIMULATION
Before we start discussing materials modeling and simulation, it is appropriate to consider those words a bit more carefully. What do we mean by a “model” or a “simulation”? How are they different? Not to be overly pedantic, but it may help our discussion if we are a bit more precise in our definitions of these terms.
Suppose we have an object under some prescribed load (i.e., an applied force).We can describe how the object will deform in response to that load with the results of elasticity theory. For the purposes of this textbook, we will restrict the discussion to the regime of small displacements, in which we can use a linear version of elasticity theory. The fundamental assumptions of linear elasticity are that (1) the displacements (strains) are small and (2) there are linear relationships between the strains and their associated stresses (we define stress and strain hereinafter). The assumption of linear elasticity is reasonable for many applications and is used extensively in structural analysis.
We note that there is a further restriction to linear elasticity. The applied stress must be low enough so that yielding does not occur, i.e., so that the material does not undergo permanent deformation. Consider a thin metal rod, for example. If one applies a small force to the rod, it deforms but springs back to its original state when the force is removed. If you keep increasing the force, eventually the rod bends and does not return to the original state when the force is removed. That deformation is caused by the movement of linear defects called dislocations, which are described in Appendix B.5.We also describe a basic model of plastic deformation in terms of dislocation motion in that section. Later in this chapter, in Appendix H.5, we discuss the relationship between elastic and plastic strain.
This chapter introduces some basic concepts used in the computations in this text. It is not a programming guide, as each software system has its own language and defined functions. We discuss some general methodologies that are common among programming languages and that crop up in a number of the methods in this text, for example the calculation of random numbers. We also discuss a few numerical methods. Specific implementations of the various methods are presented online at http://www.cambridge.org/lesar.
SOME BASIC CONCEPTS
Computers are discrete and thus all problems, whether discrete or continuous in space or time, must be converted to discrete methods on a computer. The requirement of having discrete methods presents challenges and guides the development of most of the models seen in this text. Some methods, such as molecular dynamics in Chapter 6, may be continuous in one dimension (space), but are solved with discrete time steps. Others, such as the Potts model of grain growth in Chapter 10, are discrete in both space and time.
RANDOM-NUMBER GENERATORS
A common need in essentially all of the methods discussed in this text is for random numbers. It is in many ways odd to discuss random numbers when talking about computers, which are precise and anything but random. Algorithms have been developed, however, that yield series of numbers that look random, at least relative to certain statistical measures of randomness. These algorithms are generally referred to as random-number generators. The challenge is that generators are not all of the same quality.
In Chapter 7 we introduced the Monte Carlo method, with the focus being on calculating equilibrium properties based on sampling of the degrees of freedom in a Hamiltonian (energy) function. In this chapter, the focus is on the Monte Carlo method applied to rates. We shall see that for certain classes of problems, we can find an association between the Monte Carlo “time” and actual time, opening the door to a new class of simulation methods that can model time-dependent processes at time scales far beyond what is possible with standard molecular dynamics.
The fundamental input to the kinetic Monte Carlo method is a list of possible events such as a jump from one site to another in a diffusion problem, a chemical reaction, etc. Associated with each event will be a rate, which will be related to a probability that the event will occur. An understanding of rates is thus very important, so in Appendix G.8 we give a brief review of kinetic rate theory.
A number of researchers independently developed what has come to be known as the kinetic Monte Carlo method. The N-fold way as a methodology for accelerating the simulations of the Ising model is probably the first example [38], which will be discussed in Chapter 10. Voter introduced a similar approach as a way to study the dynamics of cluster diffusion on surfaces [327]. We will discuss his calculation later in this chapter as one of two examples of the complexities, and limitations, of the kinetic Monte Carlo approach.
THE KINETIC MONTE CARLO METHOD
Consider a system whose properties are dominated by thermally activated processes, such as diffusion.
We introduce a novel method for producing polystyrene (PS)-grafted multiwalled carbon nanotubes (MWCNTs), which provides a direct route to composites where carbon nanotubes (CNTs) are the major component. Infrared and Raman spectroscopies confirmed that the MWCNTs were functionalized with PS. Thermogravimetric analysis showed that CNTs increase thermal stability of the composite up to a critical loading (∼40 wt%) beyond which high nanotube loadings decrease the polymer degradation temperature, as a consequence of the thermal properties of CNTs and the composite morphology. Even at loadings as high as 80 wt% MWCNTs, the composite is an effective masterbatch material for both solution- and melt-processing. These results show that in situ polymerizations can be flexible and robust techniques for nanocomposite processing, overcoming limitations of conventional processing techniques to produce nanocomposites with very high nanotube loadings, not achieved hitherto.