1: %
2: % $Id: qc.tex,v 1.3 2000/08/17 21:07:40 knap Exp $
3: %
4: % $Log: qc.tex,v $
5: % Revision 1.3 2000/08/17 21:07:40 knap
6: % Initial full draft.
7: %
8: % Revision 1.2 2000/04/18 17:30:36 knap
9: % Initial draft.
10: %
11: % Revision 1.1 2000/04/16 01:15:46 knap
12: % Initial rev.
13: %
14: %
15: \documentclass[12pt,dvips,usenames]{article}
16: \usepackage{color}
17: \usepackage{graphicx}
18: %\usepackage{pstcol,pst-node,pst-grad,pst-coil,pst-eps,pst-3d}
19: %\usepackage[tiling]{pst-fill}
20: \usepackage{times}
21: \usepackage{amsmath}
22: \usepackage{amssymb}
23: \usepackage{subfigure}
24:
25: \newcommand{\mbs}[1]{\boldsymbol{#1}}
26: \newcommand{\mbb}[1]{\mathbb{#1}}
27:
28: \newtheorem{thm}{Theorem}[section]
29: \newtheorem{prop}[thm]{Proposition}
30: \newtheorem{lem}[thm]{Lemma}
31: \newtheorem{cor}[thm]{Corollary}
32: \newtheorem{dfn}[thm]{Definition}
33:
34: \def\bA{{\mbs{A}}} \def\bB{{\mbs{B}}} \def\bC{{\mbs{C}}}
35: \def\bD{{\mbs{D}}} \def\bE{{\mbs{E}}} \def\bF{{\mbs{F}}}
36: \def\bG{{\mbs{G}}} \def\bH{{\mbs{H}}} \def\bI{{\mbs{I}}}
37: \def\bJ{{\mbs{J}}} \def\bK{{\mbs{K}}} \def\bL{{\mbs{L}}}
38: \def\bM{{\mbs{M}}} \def\bN{{\mbs{N}}} \def\bO{{\mbs{O}}}
39: \def\bP{{\mbs{P}}} \def\bQ{{\mbs{Q}}} \def\bR{{\mbs{R}}}
40: \def\bS{{\mbs{S}}} \def\bT{{\mbs{T}}} \def\bU{{\mbs{U}}}
41: \def\bV{{\mbs{V}}} \def\bX{{\mbs{X}}} \def\bY{{\mbs{Y}}}
42: \def\bZ{{\mbs{Z}}}
43:
44: \def\ba{{\mbs{a}}} \def\bb{{\mbs{b}}} \def\bc{{\mbs{c}}}
45: \def\bd{{\mbs{d}}} \def\be{{\mbs{e}}} \def\fb{{\mbs{f}}}
46: \def\bg{{\mbs{g}}} \def\bh{{\mbs{h}}} \def\bi{{\mbs{i}}}
47: \def\bj{{\mbs{j}}} \def\bk{{\mbs{k}}} \def\bl{{\mbs{l}}}
48: \def\bm{{\mbs{m}}} \def\bn{{\mbs{n}}} \def\bo{{\mbs{o}}}
49: \def\bp{{\mbs{p}}} \def\bq{{\mbs{q}}} \def\br{{\mbs{r}}}
50: \def\bs{{\mbs{s}}} \def\bt{{\mbs{t}}} \def\bu{{\mbs{u}}}
51: \def\bv{{\mbs{v}}} \def\bx{{\mbs{x}}} \def\by{{\mbs{y}}}
52: \def\bz{{\mbs{z}}}
53:
54: \def\bPhi{{\mbs{\Phi}}}
55:
56: \def\cL{{{\cal L}}}
57: \def\cT{{{\cal T}}}
58: \def\cS{{{\cal S}}}
59: \def\cB{{{\cal B}}}
60: \def\cC{{{\cal C}}}
61:
62: \def\ljump{\lbrack\!\lbrack}
63: \def\rjump{\rbrack\!\rbrack}
64:
65: \def\la{{{\langle}}}
66: \def\ra{{{\rangle}}}
67:
68: \def\dt{{{\triangle t}}}
69:
70: %
71: % include plotting macros
72: %
73: \newcommand{\Atom}{%
74: \begin{pspicture}(0,0)(0.5,0.5)
75: %\psgrid
76: \pscircle[dimen=middle,fillstyle=gradient,gradangle=30,gradbegin=yellow,
77: gradend=red](0.25,0.25){0.15}
78: \end{pspicture}}
79:
80: \newcommand{\Square}{%
81: \begin{pspicture}(1,1)
82: \psframe[dimen=middle](1,1)
83: \end{pspicture}}
84:
85: \title{An Analysis of the Quasicontinuum Method}
86: \date{\today}
87: \author{J.~Knap and M.~Ortiz \\
88: \small\textsl{Graduate Aeronautical Labs}\\
89: \small\textsl{California Institute of Technology}\\
90: \small\textsl{Pasadena, CA 91125} }
91:
92: \begin{document}
93:
94: \maketitle
95:
96: \subsection*{Abstract}
97: \label{Abstract}
98:
99: {\small
100:
101: The aim of this paper is to present a streamlined and fully
102: three-dimensional version of the quasicontinuum (QC) theory of
103: Tadmor {\it et al.} \cite{TadmorOrtizPhillips1996,
104: TadmorPhillipsOrtiz1996} and to analyze its accuracy and
105: convergence characteristics. Specifically, we assess the effect of
106: the summation rules on accuracy; we determine the rate of
107: convergence of the method in the presence of strong singularities,
108: such as point loads; and we assess the effect of the refinement
109: tolerance, which controls the rate at which new nodes are inserted
110: in the model, on the development of dislocation microstructures.
111:
112: \vskip12pt
113: \noindent
114: {\it Keywords:} A. Quasicontinuum; B. Error analysis; C. Nanoindentation;
115: D. Atomistic models
116:
117: \section{Introduction}
118: \label{sec:introduction}
119:
120: The aim of this paper is to present a streamlined and fully
121: three-dimensional version of the quasicontinuum (QC) theory of
122: Tadmor {\it et al.} \cite{TadmorOrtizPhillips1996,
123: TadmorPhillipsOrtiz1996} and to analyze its accuracy and
124: convergence characteristics. The theory of the quasicontinuum
125: furnishes a computational scheme for seamlessly bridging the
126: atomistic and continuum realms. The chief objective of the theory
127: is to systematically coarsen an atomistic description by--and only
128: by--the judicious introduction of kinematic constraints. These
129: kinematic constraints are selected and designed so as to preserve
130: full atomistic resolution where required, e.~g., in the vicinity
131: of lattice defects, and to treat collectively large numbers of
132: atoms in regions where the deformation field varies slowly on the
133: scale of the lattice. Thus, in its purest form all input into the
134: theory concerning the behavior of the material is atomistic, and
135: all approximations are strictly kinematic in nature.
136:
137: Different variants of the theory have been developed and
138: documented over a series of publications
139: \cite{TadmorOrtizPhillips1996, TadmorPhillipsOrtiz1996,
140: ShenoyMillerTadmor1998, MillerTadmorPhillips1998,
141: MillerOrtizPhillips1998, RodneyPhillips1999,
142: ShenoyMillerTadmor1999, TadmorMillerPhillips1999,
143: ShenoyPhillipsTadmor2000, SmithTadmorKaxiras2000}, where numerous
144: examples of application have also been presented. Here we endeavor
145: to emphasize the essential building blocks of the static theory,
146: to wit: i) the constrained minimization of the atomistic energy of
147: the solid; ii) the use of summation rules in order to compute the
148: effective equilibrium equations; iii) and the use of adaption
149: criteria in order to tailor the computational mesh to the
150: structure of the deformation field. In particular, we develop a
151: new class of summation rules based on sampling lattice functions
152: over clusters of atoms. In Section~\ref{sec:numer-exper}, we
153: present a detailed numerical analysis that probes various aspects
154: of the accuracy and performance of the method. Specifically, we
155: assess the effect of the cluster size and lumping procedure on
156: accuracy; we determine the rate of convergence of the method in
157: the presence of strong singularities, such as point loads; and we
158: assess the effect of the refinement tolerance, which controls the
159: rate at which new nodes are inserted in the model, on the
160: development of dislocation microstructures.
161:
162: \section{The quasicontinuum method}
163: \label{sec:quas-meth}
164:
165: We consider a reference configuration of a crystal such that its
166: $N$ atoms occupy a subset of a simple $d$-dimensional Bravais
167: lattice spanned by basis vectors $\{\ba_i, i= 1,\dots, d\}$. The
168: coordinates of the atoms in this reference configuration are:
169: \begin{equation}
170: \label{eq:Bravais}
171: \bX(\bl) = \sum_{i=1}^d l^i\mbs{a}_i,
172: \quad \bl\in \cL \subset Z^d.
173: \end{equation}
174: Here, $\bl$ are the lattice coordinates which designate individual
175: atoms, $Z$ is the set of integer numbers and $d$ is the dimension
176: of space. From the definition, it follows that the set $\cL$ is
177: the collection of lattice sites occupied by atoms.
178: The coordinates of the atoms in a deformed
179: configuration of the crystal are denoted $\{\bq(\bl),\
180: \bl\in~\cL\}$. For convenience, we shall collect all atomic
181: coordinates in an array $\bq$ and regard such array as an element
182: of the linear space $X \equiv R^{N d}$, the `configuration' space
183: of the crystal.
184:
185: The energy of the crystal is assumed to be expressible as a
186: function $E(\bq)$, e.~g., through the use of empirical interatomic
187: potentials. In addition, the crystals may be subjected to applied
188: loads. We assume these loads to be conservative and to derive from
189: an external potential $\Phi^{\rm ext}(\bq)$. The total potential
190: energy is, therefore:
191: \begin{equation} \label{eq:PotentialEnergy}
192: \Phi(\bq) = E(\bq) + \Phi^{\rm ext}(\bq)
193: \end{equation}
194: The crystal may also be subject to displacement boundary
195: conditions over part of its boundary, e.~g., as a result of the
196: application of a rigid indentor. We wish to determine the stable
197: equilibrium configurations of the crystal. The problem is,
198: therefore, to determine all the \emph{local} minima of $\Phi(\bq)$
199: consistent with the displacement, or essential, boundary
200: conditions. We shall, somewhat equivocally, enunciate this problem
201: as:
202: \begin{equation}
203: \label{eq:StaticProblem}
204: \min_{\bq\in X} \Phi(\bq)
205: \end{equation}
206: We emphasize, however, that in general the aim is not simply to
207: determine the absolute minimizer of $\Phi(\bq)$, but rather the
208: much richer, and physically more relevant, set of metastable
209: configurations of the crystal.
210:
211: The distinction arises from the fact that the energy function
212: $E(\bq)$ must be invariant under the class of affine deformations
213: which map the crystal lattice onto itself. This implies, for
214: instance, that $E(\bq)$ must be periodic under crystallographic
215: slip with period equal to the Burgers vector. Hence, the energy
216: function $E(\bq)$ is strongly nonconvex and the potential energy
217: $\Phi(\bq)$ in general has vast numbers of local minimizers, or
218: metastable configurations.
219: Techniques for systematically exploring the full set of metastable
220: configurations, and indeed the entire configuration space of the
221: crystal, include statistical mechanics and path-integral methods.
222: An alternative approach is to load the crystal incrementally and
223: proceed by continuation. Thus, at every step in the solution
224: procedure the loads, or the prescribed displacements, are
225: incremented and the system is allowed to relax to a nearby stable
226: configuration. The relaxation process may be governed by inertia,
227: viscosity, kinetics, or some other rate-limiting mechanism; or may
228: be numerical in nature and owe to the use of iterative solvers
229: such as conjugate gradients. This latter approach is adopted in
230: all the numerical tests presented in this paper.
231:
232: \subsection{Interpolation}
233: \label{sec:interpolation}
234:
235: The essence of the theory of Tadmor {\it et al.}
236: \cite{TadmorOrtizPhillips1996, TadmorPhillipsOrtiz1996} is to replace
237: (\ref{eq:StaticProblem}) by a constrained minimization of
238: $\Phi(\bq)$ over a suitably chosen subspace $X_h$ of $X$. In order
239: to define $X_h$, we begin by selecting a reduced set
240: $\cL_h\subset\cL$ of $N_h < N$ `representative atoms'
241: (Fig.~\ref{fig:InterpolationFigureMesh}). The selection of the
242: representative atoms is based on the local variation of the fields
243: and will be addressed subsequently. In addition, we introduce a
244: triangulation $\cT_h$ of $\cL_h$. It bears emphasis that the
245: triangulation $\cT_h$ may be unstructured. In particular, ${\cal
246: L}_h$ need not define a Bravais lattice. The positions of the
247: remaining atoms are determined by piecewise linear interpolation
248: of the representative atom coordinates. We shall regard the
249: resulting coordinates $\{\bq_h(\bl),\bl\in\cL\}$ as belonging to a
250: linear space $X_h$ of dimension $N_h d$.
251:
252: \begin{figure}
253: \begin{center}
254: \includegraphics[scale=1.0]{figure1.eps}
255: \caption{Example of triangulation $\cT_h$ of the crystal.
256: \label{fig:InterpolationFigureMesh}}
257: \end{center}
258: \end{figure}
259:
260: Let $\varphi_h(\bX | \bl_h)$, $\bl_h\in \cL_h$, be a collection of
261: shape functions for $\cT_h$. Thus, $\varphi_h(\bX | \bl_h)$ is
262: continuous and piecewise linear, its domain is restricted to the
263: simplices $K\in \cT_h$ incident to $\bX(\bl_h)$, and it vanishes
264: at all nodes of the triangulation except at $\bX(\bl_h)$, where it
265: takes the value $1$, i.~e.,
266: \begin{equation}
267: \varphi_h(\bX(\bl'_h) | \bl_h) = \delta(\bl'_h | \bl_h).
268: \label{eq:ShapeFunctions}
269: \end{equation}
270: By construction,
271: \begin{equation}
272: \bq_h(\bl) = \sum_{\bl_h\in \cL_h} \varphi_h(\bl | \bl_h)
273: \bq_h(\bl_h), \label{eq:Interpolation}
274: \end{equation}
275: where we write
276: \begin{equation}
277: \varphi_h(\bl | \bl_h) = \varphi_h(\bX(\bl) | \bl_h).
278: \label{eq:ShortHand}
279: \end{equation}
280: Evidently, $\{\varphi_h(\bl | \bl_h),\ \bl_h\in \cL_h\}$
281: constitutes a basis for $X_h$ and the fields $\bq_h(\bl)$ are
282: entirely determined by their values $\bq_h(\bl_h)$ at the
283: representative atoms. In addition, the basis lattice functions are
284: required to satisfy the identity:
285: \begin{equation}
286: \sum_{\bl_h\in\cL_h} \varphi_h(\bl | \bl_h) = 1
287: \label{eq:PartitionUnity}
288: \end{equation}
289: i.~e., the basis lattice functions must define a partition of
290: unity over $\cL$. This requirement ensures that constant fields
291: are interpolated exactly by the basis lattice functions.
292:
293: \subsection{Reduced equations}
294: \label{sec:reduced-equations}
295:
296: The reduced counterpart of problem (\ref{eq:StaticProblem}) is now
297: \begin{equation}
298: \min_{\bq_h\in X_h} \Phi(\bq_h).
299: \label{eq:ReducedProblem}
300: \end{equation}
301: The minimizers of the reduced problem satisfy the reduced
302: equations of equilibrium
303: \begin{equation}
304: \mbs{f}_h(\bl_h) = \sum_{\bl\in\cL}\mbs{f}(\bl | \bq_h)
305: \varphi_h(\bl | \bl_h) = \mbs{0}.
306: \label{eq:ReducedEquilibrium}
307: \end{equation}
308: Here,
309: \begin{equation}
310: \mbs{f}(\bq) = \Phi,_{\bq}(\bq)
311: \label{eq:Forces}
312: \end{equation}
313: are the forces corresponding to $\bq$ and $\mbs{f}(\bl | \bq)$ is the
314: value of $\mbs{f}(\bq)$ at site $\bl$. Thus, the reduced problem
315: entails the solution of the $N_h d$ equations
316: (\ref{eq:ReducedEquilibrium}) in the $N_h d$ unknowns $\bq(\bl_h)$,
317: $\bl_h\in \cL_h$.
318:
319: \subsection{Node-based summation rules}
320: \label{sec:summation-rules}
321:
322: The practicality of the method further hinges on the possibility
323: of avoiding the calculation of the full atomistic force array
324: $\mbs{f}$ and carrying out full lattice sums, as seemingly
325: required in (\ref{eq:ReducedEquilibrium}). As noted by Tadmor {\it
326: et al.} \cite{TadmorOrtizPhillips1996, TadmorPhillipsOrtiz1996}, this may be
327: accomplished by the introduction of summation rules similar to the
328: conventional quadrature rules of numerical integration. The
329: problem is thus to approximate sums of the general form
330: \begin{equation}
331: S = \sum_{\bl\in\cL} g(\bl),
332: \label{eq:LatticeSum}
333: \end{equation}
334: where $g(\bl)$ is a lattice function. By analogy to numerical
335: quadrature rules, we begin by exploring summation rules of the
336: form
337: \begin{equation}
338: S\approx \sum_{\bl\in\cS_h} n_h(\bl) g(\bl) \equiv S_h
339: \label{eq:SummationRule}
340: \end{equation}
341: for some suitably chosen collection of summation points $\cS_h$
342: and weights $n_h(\bl)$, not necessarily integer. Loosely
343: speaking, the weights $n_h(\bl)$ may be regarded as the number of
344: atoms represented by the site $\bl$. Proceeding as in the
345: development of numerical quadrature rules, the weights $n_h(\bl)$
346: may be determined by the requirement that the summation rule
347: (\ref{eq:SummationRule}) be exact for a restricted class of
348: lattice functions \cite{ShenoyMillerTadmor1999}.
349:
350: The lowest-order summation rule is obtained by requiring that all
351: lattice functions in $X_h$, i.~e., all piecewise linear functions
352: supported by the triangulation $\cT_h$, be summed exactly. This is
353: tantamount to setting $\cS_h = \cL_h$ and requiring that the summation
354: rule (\ref{eq:SummationRule}) be exact for all shape functions
355: $\varphi_h(\bl | \bl_h)$, $\bl_h\in\cL_h$. This requirement gives,
356: explicitly,
357: \begin{equation}
358: n_h(\bl_h) = \sum_{\bl\in\cL} \varphi_h(\bl | \bl_h), \qquad
359: \bl_h\in\cL_h.
360: \label{eq:SummationWeights}
361: \end{equation}
362: In fine regions of the triangulation, the sums on the right-hand
363: side of (\ref{eq:SummationWeights}) may be computed explicitly. By
364: contrast, in coarse regions of the mesh approaching the continuum
365: limit this explicit calculation becomes impractical. However, in
366: such regions the lattice sum (\ref{eq:SummationRule}) ostensibly
367: reduces to an integral and the corresponding weights are those of
368: conventional Lobatto quadrature \cite{hughes:1987}. In this limit,
369: each simplex $K \in \cT_h$ simply contributes $(N/V)|K|/(d+1)$
370: atoms to each of its $d+1$ nodes, where $N/V$ is the atom density
371: in the undeformed configuration of the crystal.
372:
373: As a simple illustrative example, consider a monoatomic chain
374: discretized into `elements' each containing $L$ bonds. For an internal
375: node, the summation weight follows as
376: \begin{equation}
377: n_h = 1 + 2 \sum_{l=1}^{L-1} \left(1 - \frac{l}{L}\right) = L,
378: \label{eq:WeightsInterior}
379: \end{equation}
380: which coincides with the continuum limit. By contrast, for an end
381: node the summation weight is
382: \begin{equation}
383: n_h = 1 + \sum_{l=1}^{L-1} \left(1 - \frac{l}{L}\right) = \frac{L +
384: 1}{2}.
385: \label{eq:WeightsBoundary}
386: \end{equation}
387: We note that $n_h$ tends to the continuum Lobatto limit of $L/2$ as
388: $L\to \infty$ and reduces to $n_h = 1$ in the full atomistic limit, as
389: required.
390:
391: \subsection{Reduced equations based on summation rules}
392: \label{sec:reduc-equat-based}
393:
394: The application of a summation rule to the evaluation of the
395: equilibrium equations (\ref{eq:ReducedEquilibrium}) leads to the
396: system of equations
397: \begin{equation}\label{eq:SummationEquilibrium}
398: \mbs{f}_h(\bl_h) \approx
399: \sum_{\bl\in\cS_h} n_h(\bl) \mbs{f}(\bl | \bl_h)
400: \varphi_h(\bl | \bl_h) = {\bf 0}.
401: \end{equation}
402: As desired, the calculation of the effective forces in
403: (\ref{eq:SummationEquilibrium}) is of complexity ${\cal O}(N_h)$
404: provided that the number of sampling sites in $\cS_h$ is of order
405: $N_h$ and the atomic interactions are short-ranged.
406:
407: The formulation of the method takes a somewhat unexpected turn at
408: this point in that the node-based summation rule discussed in the
409: foregoing suffers from a rank-deficiency problem. Thus, in the
410: linear case the node-based summation rule leads to rank-deficient
411: systems of equations. This is in analogy to the rank-deficiency of
412: finite-element stiffness matrices computed by Lobatto quadrature,
413: and manifests itself as the existence of so-called zero-energy
414: modes which pollute the displacement field or render the system of
415: equations singular altogether.
416:
417: \begin{figure}
418: \begin{center}
419: \mbox{
420: \includegraphics[scale=0.25]{figure2a.eps}
421: \includegraphics[scale=0.5]{figure2b.eps}
422: }
423: \caption{a) Cubic Lennard-Jones crystal used in numerical
424: stability tests. b) Zero-energy deformation mode}.
425: \label{fig:StabilityCube}
426: \end{center}
427: \end{figure}
428:
429: By way of illustration, we consider a Lennard-Jones crystal in the
430: form of a cube containing $32 \times 32 \times 32$ fcc unit cells.
431: In this example, eight representative atoms are introduced at the
432: corners of the cube, and the cube is triangulated as shown in
433: Fig.~\ref{fig:StabilityCube}a. The stability of the crystal in
434: its reference configuration may be assessed by examining the
435: spectral properties of the reduced stiffness matrix. A direct
436: calculation of its eigenvalues reveals that seven of them are
437: identically equal to zero, which in turn denotes the presence of
438: one zero-energy deformation mode, Fig.~\ref{fig:StabilityCube}b.
439: However, the zero-energy deformation mode is absent when the
440: lattice sums are carried out in full, i.~e., when the test is
441: repeated with the equilibrium equations
442: (\ref{eq:SummationEquilibrium}) replaced by
443: (\ref{eq:ReducedEquilibrium}).
444:
445: The numerical test just described shows that the node-based
446: summation rules are indeed rank-deficient, but it also suggests
447: that the reduced system is stable provided that a sufficient
448: number of sampling points is included in the summation rules. A
449: new set of summation rules which offers this added flexibility is
450: presented next.
451:
452: \subsection{Cluster summation rules}
453: \label{sec:clust-based-summ}
454:
455: \begin{figure}
456: \begin{center}
457: \includegraphics[scale=1.0]{figure3.eps}
458: \caption{Clusters of atoms in triangulation $\cT_h$ of the crystal.
459: \label{eq:ClustersFigure}}
460: \end{center}
461: \end{figure}
462:
463: A class of summation rules which generalizes the node-based rule
464: may be obtained by sampling the lattice function over
465: neighborhoods of the representative atoms. We shall refer to these
466: neighborhoods as clusters, and the resulting summation rules as
467: cluster summation rules. Each cluster may be regarded as a
468: representative crystallite where the state and the behavior of the
469: crystal are sampled.
470:
471: More specifically, let $\cC(\bl_h)=\{\bl : |\bX(\bl)-\bX(\bl_h)|
472: \leq r(\bl_h)\}$ be the cluster of lattice sites located within a
473: sphere of radius $r(\bl_h)$ centered on the representative atom
474: $\bl_h$ (Fig.~\ref{eq:ClustersFigure}). Assume for now that the
475: clusters thus defined do not overlap. The cluster summation rule
476: induced by the set of clusters $\cC(\bl_h), \bl_h \in \cL_h$ is
477: \begin{equation}
478: S_h = \sum_{\bl_h \in \cL_h} n_h(\bl_h) S(\bl_h),
479: \label{eq:ClusterSummationRule}
480: \end{equation}
481: where $S(\bl_h)$ denotes the sum over all atoms in the cluster
482: $\cC(\bl_h)$, i.~e.,
483: \begin{equation}
484: S(\bl_h) = \sum_{\bl \in \cC(\bl_h)} g(\bl).
485: \label{eq:ClusterSum}
486: \end{equation}
487: As before, the cluster weights $n_h(\bl_h), \bl_h \in \cL_h$ are
488: computed by requiring that the cluster summation rule
489: (\ref{eq:ClusterSummationRule}) be exact for all basis functions.
490:
491: \begin{figure}
492: \begin{center}
493: \includegraphics[scale=1.0]{figure4.eps}
494: \caption{Triangulation $\cT_h$ with two overlapping clusters.
495: The dashed line demarcates the boundary between the clusters.
496: \label{eq:ClusterOverlapFigure}}
497: \end{center}
498: \end{figure}
499:
500: It should be carefully noted that, as the triangulation size
501: approaches the atomic length scale, the spherical clusters defined
502: previously in general overlap, Fig.~\ref{eq:ClusterOverlapFigure}.
503: In this case, we truncate the clusters as follows. A site $\bl$
504: belongs to cluster $\cC(\bl_h)$ if its distance to $\bX(\bl_h)$ is
505: less than a prescribed value $r(\bl_h)$ and less than its distance
506: to any other representative atom. Thus, the cluster $\cC(\bl_h)$
507: is the intersection of the Voronoi cell containing $\bX(\bl_h)$
508: and sphere of radius $r(\bl_h)$ centered at $\bX(\bl_h)$.
509: Ambiguous cases corresponding to sites which are equidistant from
510: two representative atoms are resolved randomly. In the limit of
511: full atomistic resolution, each cluster contains exactly one atom
512: and the corresponding weight is $1$. Thus, the cluster summation
513: rules reduce seamlessly to the exact lattice sum when the fully
514: atomistic limit is attained.
515:
516: \subsubsection{Summation-rule error analysis for monatomic chains}
517: \label{sec:error-analys-mono}
518:
519: The accuracy of cluster summation rules can be analyzed simply in
520: the case of a one-dimensional monatomic chain. In this case, $\cL
521: \equiv Z$ is the set of all sites in the chain. Without loss of
522: generality, we take the coordinate of a site $l \in \cL$ in the
523: undeformed configuration of the chain to be $X(l) = l$. For
524: simplicity, we consider a uniform triangulation of $\cL$ of size
525: $h$. Thus, the coordinates of the representative atoms are $X(l_h)
526: = l_h h$, $l_h \in Z$, where $h$ is the simplex size. We consider
527: clusters of uniform radius $r < h/2$, Fig.~\ref{fig:1D_chain}.
528:
529: \begin{figure}
530: \begin{center}
531: \includegraphics[scale=1.0]{figure5.eps}
532: \caption{A part of the 1D monoatomic chain ($h=14$ and $r=4$).
533: \label{fig:1D_chain}}
534: \end{center}
535: \end{figure}
536:
537: The summation weights follow from the requirement that the basis
538: functions $\varphi_h(l|l_h)$ be summed exactly, with the result,
539: \begin{equation}
540: n_h(l_h) = \frac{h}{1 + 2 r}, \qquad l_h \in Z.
541: \label{eq:1D_chain_weight}
542: \end{equation}
543: Thus, for the infinite monatomic chain, $n_h(l_h)$ is simply the
544: ratio of the number of atoms in a simplex to the number of atoms
545: in a cluster.
546:
547: In order to obtain the summation error to leading order, we
548: consider the sum of a quadratic polynomial supported on two
549: adjacent simplices in the reduced chain, namely,
550: \begin{equation}
551: g(l) = \left\{
552: \begin{array}{ll}
553: l^2 & l \in [-h,h] \\
554: 0 & \mbox{otherwise}
555: \end{array}
556: \right.
557: \label{eq:1D_chain_quadratic_function}
558: \end{equation}
559: The exact sum of $g(l)$ over all sites of the chain is
560: \begin{equation}
561: S = \sum_{l \in \cL} g(l) = \sum_{l=-h}^{l = h} l^2 =
562: \frac{h(1+h)(1+2 h)}{3}.
563: \label{eq:1D_chain_exact_su}
564: \end{equation}
565: The calculation of the approximate sum $S_h$ requires three local
566: cluster sums $S_h(-h)$, $S_h(0)$ and $S_h(h)$
567: \begin{eqnarray}
568: S_h(-h) & = & \sum_{l = -h}^{l = -h + r} l^2 =
569: \frac{(1+r) (6 h^2 + r - 6h r + 2 r^2)}{6}, \\
570: S_h(0) & = & \sum_{l = -r}^{l= r} l^2 =
571: \frac{r (1+r)(1+2 r)}{3}, \\
572: S_h(h) & = & \sum_{l = h-r}^{l=h} l^2 =
573: \frac{(1+r)(6 h^2 + r - 6 h r + 2 r^2)}{6}.
574: \label{eq:1D_chain_local_sums}
575: \end{eqnarray}
576: The use of the cluster summation rules leads to the approximate
577: lattice sum
578: \begin{equation}
579: S_h = n_h [S_h(-h) + S_h(0) + S_h(h)] =
580: \frac{2 h (1+r)}{3 (1+ 2 r)}
581: [2 r^2 + r (1-3 h) + 3 h^2].
582: \label{eq:1D_chain_approx_sum}
583: \end{equation}
584: The summation error is $|S_h - S|$. An upper bound on the error is
585: obtained by setting $r=0$. Then, for $h \gg 1$ we have $|S_h -
586: S|_{r=0} \sim (4/3) h^3$, which shows that the summation rule is
587: of third order.
588:
589: The effect of the cluster size on the accuracy of the summation
590: rule may be understood as follows. For simplicity, we consider the
591: case of $h \gg 1$, whereupon (\ref{eq:1D_chain_exact_su})
592: simplifies to
593: \begin{equation}
594: S \sim \frac{2}{3} h^3
595: \label{eq:1D_chain_exact_su2}
596: \end{equation}
597: and (\ref{eq:1D_chain_approx_sum}) to
598: \begin{equation}
599: S_h =
600: \frac{2 (1+r)}{3 (1+ 2 r)} (2 \xi^2 - 3 \xi + 3 ) h^3
601: \label{eq:1D_chain_approx_sum2}
602: \end{equation}
603: where we write $\xi = r/h$. In the regime of $\xi \ll 1$,
604: (\ref{eq:1D_chain_approx_sum2}) simplifies further and the
605: corresponding relative error behaves as
606: \begin{equation}
607: \frac{|S_h - S|}{|S|} \sim \frac{2 + r}{1 + 2 r}
608: \label{eq:SummationError1}
609: \end{equation}
610: which is a decreasing function of $r$. Thus, as expected,
611: increasing $r$ from 0 increases the accuracy of the summation
612: rule. In the regime of $r \gg 1$ and $r \sim h$, the relative
613: error behaves as
614: \begin{equation}
615: \frac{|S_h - S|}{|S|} \sim \frac{1}{2} (2 \xi - 1) (\xi - 1)
616: \label{eq:1D_chain_relative_error}
617: \end{equation}
618: which vanishes for $\xi = 1/2$, or $r = h/2$. Thus, the exact sum
619: is obtained when the clusters encompass the entire lattice, as
620: required.
621:
622: \subsection{Reduced equations based on cluster summation rules}
623: \label{sec:reduc-equat-based-1}
624:
625: The application of the cluster based summation rule to the reduced
626: equilibrium equations (\ref{eq:ReducedEquilibrium}) yields
627: \begin{equation}
628: \mbs{f}_h(\bl_h) \approx \sum_{\bl'_h \in \cS_h} n_h(\bl'_h)
629: \left[ \sum_{\bl \in \cC(\bl'_h)} \mbs{f}(\bl)
630: \varphi_h(\bl | \bl_h)\right] = \mbs{0}.
631: \label{eq:ClusterBasedEquilibrium}
632: \end{equation}
633:
634: The computational complexity of (\ref{eq:ClusterBasedEquilibrium})
635: is ${\cal O}(N_h N_r)$, where $N_r$ is the number of lattice sites
636: in a cluster of radius $r$. For $N_r > 1$, the computational
637: effort is in excess of that corresponding to the node-based
638: summation rules. Thus, the optimal value of the cluster size
639: $r(\bl_h)$ is subject two opposing requirements. On one hand, the
640: cluster size has to contain a sufficient number of atoms to ensure
641: the appropriate accuracy and stability of the summation rule.
642: On the other, however, such number should remain small for the
643: method to retain its computational efficiency. The
644: effect of the cluster size on the accuracy is investigated
645: subsequently by way of numerical testing.
646:
647: \subsection{Adaptive selection of representative atoms}
648: \label{sec:adapt-select-repr}
649:
650: The third key component of the quasicontinuum method is the use of
651: mesh adaption in order to tailor the computational mesh to the
652: structure of the deformation field. Ideally, the adaptivity itself
653: should be driven by the energetics of the system, i.~e., the mesh
654: should return the least possible potential energy for a fixed
655: number of representative atoms. However, in order to optimize the
656: mesh in this manner it is necessary to know the relation between
657: the energy, or suitable energy bounds thereof, and the mesh size.
658: Unfortunately, unlike the continuum case, an approximation theory
659: for discrete systems such as considered here appears to be
660: entirely lacking at present, and such energy bounds are presently
661: unavailable.
662:
663: Under these conditions, it becomes necessary to resort to
664: empirical adaption indicators. In calculations we adopt as
665: adaption indicator $\epsilon(K)$ for simplex $K$ the variation of
666: the displacement field over $K$ modulo rotations. This variation
667: should be well-defined since the displacement field of the crystal
668: may reasonably be expected to be of bounded variation.
669: Specifically, we measure the variation of the displacement field
670: as
671: \begin{equation}
672: \epsilon(K) \equiv \sqrt{|II_E(K)|} h(K)
673: \end{equation}
674: where $II_E(K)$ denotes the second invariant of the Lagrangian
675: strain tensor in simplex $K$, and $h(K)$ is the size of $K$ (cf
676: \cite{TadmorOrtizPhillips1996,TadmorPhillipsOrtiz1996}). It follows from its definition
677: that $\epsilon(K)$ is invariant under rotations. The element $K$
678: is deemed acceptable if
679: \begin{equation} \label{eq:error_strain2}
680: \frac{\epsilon(K)}{b} < TOL
681: \end{equation}
682: for some prescribed tolerance $TOL < 1$, and is targeted for
683: refinement otherwise. In (\ref{eq:error_strain2}) $b$ denotes the
684: magnitude of the smallest Burgers vector of the crystal.
685:
686: In our implementation of the method, the refinement of the
687: simplices which violate (\ref{eq:error_strain2}) is accomplished
688: by the application of subdivision rules. In particular, we choose
689: to bisect the longest edge of the simplices which are targeted for
690: refinement. The new representative atoms are inserted in the
691: lattice site nearest to the geometrical midpoint of the longest
692: edge. In order to preserve the quality of the computational mesh,
693: we apply standard mesh-improvement operations such as edge-face or
694: octahedral swapping \cite{joe:1989, joe:1995, freitag:1996} and
695: smoothing \cite{shephard:1991}. Each new mesh is equilibrated and
696: the remeshing criterion (\ref{eq:error_strain2}) is re-evaluated
697: for the new solution. The process is repeated until the mesh
698: remains unchanged.
699:
700: % ?? Jarek: In which order are the elements bisected? Do you use
701: % a stack, or some other algorithm? Could you add a couple of
702: % sentences on this?
703:
704: The significance of (\ref{eq:error_strain2}) becomes apparent by
705: considering a processes of crystallographic slip across $K$. To
706: this end, imagine that a pair of representative atoms in $K$
707: undergo a relative sliding displacement of magnitude $b$ across a
708: slip plane of the crystal. For this deformation one has
709: \begin{equation}
710: \label{eq:error_strain1}
711: \epsilon(K) = \frac{b}{h(K)}
712: \end{equation}
713: It follows, therefore, that the adaption criterion
714: (\ref{eq:error_strain2}) ensures that the mesh size $h(K)< b$
715: under the conditions just described. Thus, the adaption criterion
716: is designed so that full atomistic resolution is attained when a
717: simplex slips by a full Burgers vector. Interestingly, we have
718: found that the dislocation patterns predicted in calculations are
719: sensitive to the choice of tolerance, and generally $TOL$ must be
720: chosen much smaller than $1$ in order not to inhibit dislocation
721: nucleation.
722:
723: \section{Details of the computer implementation}
724: \label{sec:deta-comp-impl}
725:
726: In order for the quasicontinuum method to perform optimally, some
727: implementational issues require careful attention. Several
728: potential performance bottlenecks are discussed in this section.
729:
730: \subsection{Site-element mapping}
731: \label{sec:site-element-mapping}
732:
733: The numerical solution of the quasicontinuum equilibrium equations
734: (\ref{eq:SummationEquilibrium}), requires repeated computation of
735: atomic coordinates $\bq_h(\bl),\ \bl \in \cL$ which depend,
736: through the interpolation constraints (\ref{eq:Interpolation}), on
737: the coordinates of representative atoms $\bq_h(\bl_h),\ \bl_h \in
738: \cL_h$. It is therefore important to devise an efficient algorithm
739: for locating the simplex $K \in \cT_h$ which contains a given site
740: $\bl$ of the crystal.
741:
742: The simplex $K \in \cT_h$ containing site $\bl \in \cL$ may be
743: found from elementary geometry and an exhaustive search over
744: $\cT_h$. Such method carries, however, substantial computational
745: cost, due to a large number of required floating-point operations.
746: Our approach is based on the fact that once the pair $\{\bl, K\}$
747: has been established, it remains valid for the lifespan of
748: $\cT_h$. Thus, the following two stage strategy may be adopted:
749: \begin{enumerate}
750: \item A general search routine, which for a given lattice site $\bl
751: \in \cL$ and triangulation $\cT_h$ returns $K \in \cT_h$ containing
752: $\bl$.
753: \item A look-up table (cache) that stores already associated pairs
754: $\{\bl, K\}$.
755: \end{enumerate}
756: At first, the look-up table contains no $\{\bl, K\}$ pairs and
757: most of the inquiries results in the execution of the general
758: search routine. As the force calculation proceeds, pairs are
759: continuously inserted into the table, and fewer calls to the
760: general routine are needed. At the end of the first force
761: calculation, most of the pairs can be located in the cache, where
762: they remain as long as $\cT_h$ stays unchanged.
763:
764: Our implementation of the look-up table is based on hashing, which
765: is the method of referencing records in a table by doing
766: arithmetic transformations of keys into table addresses. Any
767: hashing algorithm requires two design decisions to be made:
768: \begin{enumerate}
769: \item A hash function $h(k)$ taking a key $k$ as its argument and
770: returning an index into a table must be chosen.
771: \item One must establish a strategy for dealing with cases of two
772: distinct keys $k_1$ and $k_2$ for which the resulting values of the
773: hash function are the same, i.~e. $h(k_1) = h(k_2)$ (collision
774: resolution).
775: \end{enumerate}
776:
777: \noindent In his monograph, Knuth \cite{knuth97} provides an
778: excellent description of hashing, including some possible choices
779: of hash functions. For a simple three-dimensional Bravais lattice
780: (\ref{eq:Bravais}), the lattice coordinates of a site $\bl =
781: \{l^1, l^2, l^3\} \in Z^3$ may be considered as a key. The hash
782: function acting on this key produces an index into a table of
783: simplices where the $K$, containing $\bl$, can be found. In cases
784: in which a key contains more than one word (each of $l^i$ can be
785: considered as a separate word) Knuth \cite{knuth97} suggests using
786: the following hash function
787: \begin{equation}
788: \label{eq:Hash_function}
789: h(\bl) = [h_1(l^1) + h_2(l^2) + h_3(l^3) ] \mod M.
790: \end{equation}
791: where $h_i(k)$ denotes a hash function for $l^i$ and M is an
792: integer parameter. The function $a \mod p$ computes the remainder
793: of $a/p$. In general, the optimal choice of $h_i$ depends on
794: $\cT_h$ and cannot easily be established. We have found, however,
795: that the particular hash function
796: \begin{equation}
797: \label{eq:Hash_function_i}
798: h_i(l^i) = \mbox{lshift}(l^i, 2^{i-1}), \qquad i=1,2,3.
799: \end{equation}
800: works well for a wide range of triangulations. The meaning of
801: $\mbox{lshift}(l, m)$ is simply ``shift all bits in $l$ left $m$
802: positions''. The operations involved in the calculation of $h_i$
803: are elementary, and the computational cost of each such
804: calculation is small. The integer parameter $M$ in
805: (\ref{eq:Hash_function}) may be chosen arbitrarily, but Knuth
806: \cite{knuth97} points out that, when it is taken to be some power
807: of $2$, i.~e., $M=2^p$, $a \mod M$ is equivalent to masking the
808: low $p$-bits from $a$ (on most of currently available computer
809: hardware). The application of (\ref{eq:Hash_function}) to a
810: lattice site $\bl$ results in an index into the hash table from
811: the interval $[0, 2^p)$. Accordingly, the size of the table is
812: limited to $2^p$, which renders collisions likely. The collisions
813: are handled with the help of additional short tables which store
814: $\{\bl,K\}$ pairs for all $\bl$ such that the $h(\bl)$ produces
815: the same value. Therefore, the search through the cache for a
816: simplex $K$ containing site $\bl$ becomes essentially a two stage
817: process, in which the application of the hash function is followed
818: by a linear search. Since, the number of lattice sites having the
819: same index is small, and the additional cost due to the linear
820: search phase is not significant.
821:
822: \subsection{Computation of cluster weights}
823: \label{sec:comp-clust-weights}
824:
825: As explained earlier, the cluster weights $n_h(\bl_h),\ \bl \in
826: \cL_h$ are obtained requiring that the shape functions are summed
827: exactly by the cluster summation rule
828: (\ref{eq:ClusterSummationRule}). The application of the summation
829: rule to shape functions $\varphi_h(\bl|\bl_h)$ leads to the system
830: of $N_h$ linear algebraic equations
831: \begin{equation}
832: \label{eq:Weight_system}
833: \sum_{\bl'_h \in \cL_h} A(\bl_h|\bl'_h) \, n(\bl'_h) = b(\bl_h),
834: \qquad \bl_h \in \cL_h,
835: \end{equation}
836: to be solved for $n_h(\bl_h),\ \bl \in \cL_h$. Here the matrix
837: $A(\bl_h|\bl'_h),\ \bl'_h, \bl_h \in \cL_h$ is
838: \begin{equation}
839: \label{eq:Weight_system_matrix}
840: A(\bl_h|\bl'_h) = \sum_{\bl' \in \cC(\bl'_h)} \varphi_h(\bl|\bl_h).
841: \end{equation}
842: and $\cC(\bl'_h)$ denotes the cluster of lattice sites centered at
843: $\bl'_h$. The array $b(\bl_h),\ \bl_h$ is simply
844: \begin{equation}
845: \label{eq:Weight_system_rhs}
846: b(\bl_h) = \sum_{\bl \in \cL} \varphi_h(\bl|\bl_h).
847: \end{equation}
848: The calculation of the array $b$ requires the evaluation of the
849: shape functions at all lattice sites within a crystal. While this
850: may be regarded as acceptable for small crystals, it becomes
851: prohibitively expensive when applied to large samples. However, as
852: we have already shown, in the continuum limit summation may be
853: replaced by integration, in which case simplex $K$ contributes
854: $N(K)/(d+1)$ to each of its vertices. $N(K)= (N/V) |K|$ is the
855: approximate number of sites within $K$ and $N/V$ is the atom
856: density in the undeformed configuration of the crystal.
857: Specifically, one may introduce a cutoff $N_c$ and restrict the
858: direct calculation of the sum in (\ref{eq:Weight_system_rhs}) to
859: simplices $K$ for which $N(K) \leq N_c$.
860:
861: It is apparent from (\ref{eq:Weight_system_matrix}) that $A$ has a
862: sparse structure, which suggests the use of specialized solvers
863: for sparse linear systems. However, a simpler alternative route is
864: to resort to lumping in order to replace $A$ by a diagonal matrix
865: (see, e.~g., \cite{hughes:1987}). A lumping technique which is
866: widely used in finite elements is the row-sum technique, which
867: gives the diagonal entries of the lumped matrix as
868: \begin{equation}
869: \label{eq:Weight_system_matrix_diag}
870: A(\bl_h|\bl_h) = \sum_{\bl'_h \in \cL_h} \sum_{\bl' \in \cC(\bl'_h)}
871: \varphi(\bl|\bl_h), \qquad \bl_h \in \cL_h,
872: \end{equation}
873: with all other entries in $A$ set to zero. Once the matrix $A$ is
874: lumped, the solution of (\ref{eq:Weight_system_matrix}) is trivial
875: and gives
876: \begin{equation}
877: \label{eq:Weight_system_diag_solve}
878: n(\bl_h) = \frac{b(\bl_h)}{A(\bl_h|\bl_h)}, \qquad \bl_h \in \cL_h.
879: \end{equation}
880: In the atomistic limit, the values of cluster weights computed
881: from (\ref{eq:Weight_system_diag_solve}) become identical with
882: obtained exactly.
883:
884: \section{Numerical tests}
885: \label{sec:numer-exper}
886:
887: The accuracy of the quasicontinuum method is largely determined by
888: three factors:
889: \begin{itemize}
890: \item The value of the cluster-size parameter $r$, which controls
891: the accuracy of the cluster summation rules.
892: \item The approximations introduced in the computation of the
893: cluster weights, namely: the approximate calculation of vector
894: $b$, controlled by the cuttoff parameter $N_c$; and the lumping
895: procedure for constructing the diagonal matrix $A$.
896: \item The value of parameter $TOL$ in (\ref{eq:error_strain2}),
897: which controls the process of representative atom insertion.
898: \end{itemize}
899:
900: In this section we present an analysis of the influence of each of
901: these factors on the accuracy of the quasicontinuum method. We
902: measure the quality of the solution in energy terms. Specifically,
903: we identify the error in the approximate solution $\bq_h$ with
904: \begin{equation}\label{eq:Energy_error}
905: e = \Phi(\bq_h) - \Phi(\bq)
906: \end{equation}
907: where $\bq$ is the solution of the full system obtained, e.~g., by
908: relaxing $\bq_h$. Since the potential energy decreases during this
909: relaxation, the energy error is greater or equal to zero. For a
910: well-supported harmonic crystal the energy error defined in
911: (\ref{eq:Energy_error}) defines a proper norm of the error lattice
912: function $\bq_h - \bq$.
913:
914: \subsection{Test problem definition}
915:
916: \begin{figure}
917: \begin{center}
918: \includegraphics[scale=1.0]{figure6.eps}
919: \caption{Crystallographic orientation of test sample used in the
920: simulations of nanoindentation.
921: \label{fig:Convergence_sample}}
922: \end{center}
923: \end{figure}
924:
925: \begin{figure}
926: \begin{center}
927: \includegraphics[scale=0.5]{figure7.eps}
928: \caption{Cross section through the quasicontinuum test sample
929: used in the nanoindentation simulations. A part of the indentor is
930: also shown. The white circle represents a cluster of radius
931: $r=\sqrt{69} [\sigma]$ (corresponding to sixty-four shell of
932: neighbors).\label{fig:Initial_mesh}}
933: \end{center}
934: \end{figure}
935:
936: We take \emph{nanoindentation} as a convenient test problem for
937: assessing the performance of the method. A salient feature of
938: nanoindentation is the presence of a highly nonuniform state of
939: deformation resulting in a sharp mesh gradation away from the
940: indentor. This feature effectively tests the adaptivity of the
941: method.
942:
943: The test sample used in simulations is a cube of an fcc
944: nearest-neighbor Lennard-Jones crystal containing $64 \times 64
945: \times 64$ fcc unit cells, or a total of $1\,073\,345$ atoms. The
946: size of the cube is limited by the need to compute the solution of
947: the full problem by direct atomistic simulation in order to
948: evaluate the error. The Lennard-Jones potential is
949: \cite{lennard-jones39:_critic, lennard-jones39a:_critic}
950: \begin{equation}
951: \phi(r) = 4 \varepsilon \left[ \left(\frac{\sigma}{r}\right)^{12}
952: - 2 \left(\frac{\sigma}{r}\right)^6 \right],
953: \label{eq:Lennard_Jones}
954: \end{equation}
955: where $\sigma$ and $\varepsilon$ are parameters which set the
956: length and energy scales, respectively. The choice of the
957: Lennard-Jones potential is motivated by the desire to eliminate
958: surface effects which would otherwise compound the interpretation
959: of results.
960:
961: The surfaces of the sample are aligned with the cube directions,
962: Fig.~\ref{fig:Convergence_sample}. Atoms in the bottom surface are
963: constrained to remain at their initial positions throughout the
964: test, whereas in all side surfaces the atoms are allowed to move
965: in the $z$-direction only. No displacement constraints are
966: introduced on the top surface of the cube.
967:
968: In calculations we use a model of a spherical indentor proposed by
969: Kelchner {\it et al.} \cite{kelchner98:_disloc}. In this model,
970: the indentor is regarded as an additional external potential
971: $\Phi^{\rm ext}$ interacting with atoms in the substrate. The
972: potential has the particular functional form
973: \begin{equation}
974: \Phi^{\rm ext}(r) = A H(R-r) (R-r)^3,
975: \label{eq:indentor_potential}
976: \end{equation}
977: where $R$ is the radius of the indentor, $r$ denotes distance
978: between a site and the center of the indentor, $A$ is a force
979: constant and $H(r)$ is the step function. In calculations we adopt
980: the following values of the parameters: $R=100\ [\sigma]$ and
981: $A=2000\ [\varepsilon/\sigma^3]$.
982:
983: The initial triangulation of the cube is specifically tailored to
984: the nanoindentation geometry, Fig.~\ref{fig:Initial_mesh}. Thus,
985: in the region of the crystal located directly underneath the
986: indentor, full atomistic resolution is introduced from the outset.
987: Away from this region, the triangulation becomes gradually
988: coarser. The resulting number of representative atoms in the
989: initial mesh is $888$, a significant reduction from the total
990: number of atoms ($1\,073\,345$) in the sample. A cross section of
991: the initial mesh through the center of the cube with a plane
992: $y=const$ is show in Fig.~\ref{fig:Initial_mesh}. All solutions
993: are computed using a nonlinear version of the Conjugate Gradient
994: method.
995:
996: \subsection{Effect of the cluster size}
997:
998: \begin{figure}
999: \begin{center}
1000: \includegraphics[scale=0.5]{figure8.eps}
1001: \caption{The error $e$ as a function of the cluster size
1002: $r$. \label{fig:Cluster_size_plot}}
1003: \end{center}
1004: \end{figure}
1005:
1006: The cluster radius $r$ controls the accuracy of the cluster
1007: summation rules. In order to isolate the effect of the cluster
1008: size from other factors, in the present tests the summation
1009: weights are computed exactly and the mesh is kept fixed. The
1010: indentor is pushed through a distance $0.1\ [\sigma]$ into the
1011: crystal along the z-axis. This value ensures that the material
1012: immediately under the indentor becomes highly deformed and is
1013: pushed well into the nonlinear regime. However, the induced
1014: deformation is not sufficient for any defects to arise. This
1015: greatly simplifies the interpretation of results and the error
1016: analysis, since under the stated conditions the full atomistic
1017: solution $\bq$ to compare with is well-defined.
1018:
1019: The computed dependence of the error $e$ on the cluster size $r$
1020: is shown in Fig.~\ref{fig:Cluster_size_plot}. It is evident from
1021: this plot that the inclusion of a single shell of neighbors in the
1022: clusters suffices to eliminate the rank-deficiency of the
1023: node-based summation rule. As suggested by our previous analysis,
1024: the error is greatest for the smallest cluster size and decreases
1025: rapidly as the cluster size increases. For $r$ above $\sqrt{8}\
1026: [\sigma]$, corresponding to the radius of the eighth shell of
1027: neighbors, the solution becomes insensitive to the cluster size.
1028: Thus, the use of relative small clusters results in high accuracy
1029: while preserving the computational efficiency of the method.
1030:
1031: \subsection{Effect of the lumping procedure}
1032: \label{sec:infl-lump-proc}
1033:
1034: \begin{figure}
1035: \begin{center}
1036: \includegraphics[scale=0.5]{figure9.eps}
1037: \caption{The error $e$ as a function of the cluster size
1038: $r$. Squares and circles correspond to the
1039: approximate and exact calculation of cluster weights,
1040: respectively.}
1041: \label{fig:Cluster_size_plot_lumped}
1042: \end{center}
1043: \end{figure}
1044:
1045: The error in the calculation of the cluster weights originates
1046: from two sources: the approximate computation of the array $b$ in
1047: (\ref{eq:Weight_system_rhs}), controlled by the value of parameter
1048: $N_c$; and the lumping of matrix $A$ in
1049: (\ref{eq:Weight_system_matrix}). In order to appraise this error,
1050: we repeat the calculations described in the preceding section with
1051: the summation weights computed approximately. The cutoff $N_c$ is
1052: set to $2000$, i.~e. the contributions to the array $b$ from
1053: simplices which contain fewer than $2000$ atoms are computed
1054: explicitly. The dependence of the error $e$ on the cluster size
1055: parameter $r$ for both the approximate (squares) and exact
1056: (circles) weights is shown in
1057: Fig.~\ref{fig:Cluster_size_plot_lumped}. Small differences do
1058: arise for very small clusters, and virtually disappear for large
1059: clusters. In view of these results we may conclude that the use of
1060: approximate summation weights does not result in a significant
1061: loss of accuracy.
1062:
1063: \subsection{Convergence properties of the quasicontinuum method}
1064: \label{sec:conv-prop-quasi}
1065:
1066: \begin{figure}
1067: \begin{center}
1068: \includegraphics[scale=0.27]{figure10a.eps}
1069: \includegraphics[scale=0.27]{figure10b.eps}
1070: \caption{Examples of triangulations used in the convergence study.
1071: Plots correspond to $h=64 \sqrt{2}\ [\sigma]$ (left) and $h=16
1072: \sqrt{2}\ [\sigma]$ (right).
1073: \label{fig:Convergence_triangulation}}
1074: \end{center}
1075: \end{figure}
1076:
1077: \begin{figure}
1078: \begin{center}
1079: \includegraphics[scale=0.5]{figure11.eps}
1080: \caption{The energy error $e$ as a function of number of
1081: representative atoms $N_h$ in the sample.
1082: \label{fig:Convergence_plot}}
1083: \end{center}
1084: \end{figure}
1085:
1086: We proceed to assess numerically the rate at which the
1087: quasicontinuum solution converges towards the fully atomistic
1088: solution. The test case is as in the preceding sections. In all
1089: cases, the cluster size $r$ is set to $2 \sqrt{2}\ [\sigma]$ and
1090: the cluster summation weights are computed approximately with a
1091: cutoff parameter $N_c = 2000$. The coarsest mesh is shown in
1092: Fig.~\ref{fig:Convergence_triangulation}a. Subsequent finer meshes
1093: are constructed by regular refinement,
1094: Fig.~\ref{fig:Convergence_triangulation}b, resulting in increasing
1095: numbers of representative atoms $N_h$, with the exception of the
1096: fully resolved case, $h = \sqrt{2}\ [\sigma]$, in which the
1097: representative atoms are placed on all the crystal lattice sites.
1098: In these calculations, the crystal is loaded simply by imparting a
1099: downward displacement $- 0.1 \ [\sigma]$ to the central atom on
1100: the surface labeled $A$ in Fig.~\ref{fig:Convergence_sample}.
1101:
1102: Fig.~\ref{fig:Convergence_plot} shows the variation of the energy
1103: error with the number $N_h$ of representative atoms. Three
1104: distinct regimes are evident in this figure. For small values of
1105: $N_h$, the error behaves as $e \sim O({N_h}^{-\alpha})$, with a
1106: convergence rate $\alpha \approx 0.39$. At $N_h=4913$,
1107: corresponding to $h = 4\sqrt{2}\ [\sigma]$, the summation clusters
1108: begin to overlap and the rate of convergence increases to $\alpha
1109: \approx 0.55$. The final drop of the error occurs when full
1110: atomistic resolution is attained.
1111:
1112: These results demonstrate the convergence characteristics of the
1113: quasicontinuum method in the extreme case of an applied point
1114: load. When full lattice sums are performed the calculated
1115: convergence rate of $0.55$ approaches the optimal rate of
1116: convergence of linear finite elements applied to linear
1117: elasticity, which is $2/3$. The introduction of cluster summation
1118: rules results in a degradation of the convergence rate. It should
1119: be carefully noted, however, that some of these conclusions may
1120: well depend on the loading geometry. As is well known, the linear
1121: elasticity solution corresponding to a point load diverges under
1122: the point of application of the load and does not possess finite
1123: energy. The finiteness of the energy of atomistic solution owes
1124: entirely to the discreteness of the atomic lattice. In this sense,
1125: the test case considered here is, therefore, a worse case, and it
1126: is possible that the converge of the quasicontinuum method is more
1127: robust for smooth loading.
1128:
1129: \subsection{Effect of the remeshing-indicator tolerance}
1130: \label{sec:critical-value-tol}
1131:
1132: \begin{figure}
1133: \begin{center}
1134: \includegraphics[scale=2.0]{figure12.eps}
1135: \caption{Dislocation structure at the indentor penetration
1136: $\delta=2.0\ [\sigma]$ predicted by the fully atomistic model.
1137: The figure displays the energetic atoms (red) underneath the
1138: crystal surface (blue). \label{fig:Dislocations_atomistic}}
1139: \end{center}
1140: \end{figure}
1141:
1142: \begin{figure}
1143: \begin{center}
1144: \includegraphics[scale=0.5]{figure13.eps}
1145: \caption{Error $e$ {\it vs} indentation depth
1146: $\delta$ for different values of the remeshing tolerance
1147: parameter $TOL$.\label{fig:IndentationError}}
1148: \end{center}
1149: \end{figure}
1150:
1151: \begin{figure}[htbp]
1152: \begin{center}
1153: \includegraphics[scale=1.5]{figure14.eps}
1154: \caption{The cross section through the quasicontinuum sample at
1155: the indentor penetration $\delta = 2.0\ [\delta]$.}
1156: \label{fig:Final_mesh}
1157: \end{center}
1158: \end{figure}
1159:
1160: \begin{figure}
1161: \begin{center}
1162: \includegraphics[scale=2.0]{figure15.eps}
1163: \caption{Dislocation structure predicted by the quasicontinuum
1164: model at indentation depth $\delta = 2.0\ [\sigma]$. The figure
1165: displays the energetic atoms (red) underneath the crystal surface
1166: (blue).
1167: \label{fig:Dislocations_qc}}
1168: \end{center}
1169: \end{figure}
1170:
1171: \begin{figure}
1172: \begin{center}
1173: \includegraphics[scale=0.5]{figure16.eps}
1174: \caption{Load {\it vs} displacement curve predicted by
1175: atomistic (LS) and quasicontinuum (QC) simulations.}
1176: \label{fig:Force_displacement}
1177: \end{center}
1178: \end{figure}
1179:
1180: The lack of convexity of the energy functional for crystalline
1181: materials allows for lattice defects to develop. Among these
1182: defects, dislocations play a crucial role, as the carriers of the
1183: plastic deformation. One of the appealing features of the
1184: quasicontinuum method is its ability to follow the nucleation and
1185: motion of dislocations inside the crystal. This is achieved by
1186: adaptively providing full atomistic resolution in the highly
1187: deformed regions of the crystal. In the nanoindentation test,
1188: dislocations nucleate under the indentor upon the attainment of a
1189: critical load and subsequently propagate into the crystal.
1190:
1191: The insertion of new representative atoms, leading to mesh
1192: refinement, is controlled by criterion (\ref{eq:error_strain2})
1193: and, specifically, by the tolerance $TOL$. A small value of $TOL$
1194: promotes refinement, whereas a large value of $TOL$ inhibits
1195: refinement. Most importantly, an excessively large value of $TOL$
1196: may have the undesirable effect of inhibiting the nucleation of
1197: dislocations under the indentor altogether. On the other hand, an
1198: unduly small value of $TOL$ results in excessive refinement and a
1199: prohibitive computational burden.
1200:
1201: In this section we explore this trade-off by way of numerical
1202: testing, with a view to bracketing the optimal value of the
1203: tolerance parameter $TOL$. To this end, we fix the cluster size to
1204: $r=\sqrt{2}\ [\sigma]$, and we use the approximate cluster
1205: summation weights with a cutoff $N_c = 2000$. The indentor is
1206: driven into the crystal at increments of $0.1\ [\sigma]$ up to a
1207: maximum indentation depth of $2.0\ [\sigma]$. The first loading
1208: step does not result in the nucleation of dislocations, even in
1209: the fully atomistic model, and is identical to the calculations
1210: described in the preceding sections. By contrast, at the
1211: indentation depth of $2.0\ [\sigma]$ the presence of dislocation
1212: structures under the indentor is clearly evident in the fully
1213: atomistic model, Fig.~\ref{fig:Dislocations_atomistic}.
1214:
1215: The energy error $e$ is plotted in Fig.~\ref{fig:IndentationError}
1216: as a function of indentation depth $\delta$ for different values
1217: of the tolerance parameter $TOL$. Initially, the error is
1218: insensitive to $TOL$, and all curves ostensibly follow the same
1219: linear growth pattern. However, the error curves diverge after a
1220: penetration depth $\delta = 0.5\ [\sigma]$. For large values of
1221: $TOL$, the error continues to grow owing to the inability of the
1222: model to resolve the emerging dislocation structures. Indeed, the
1223: nucleation of dislocations during the test is entirely inhibited
1224: by all but the smallest values of the tolerance, $TOL = 0.004$.
1225: For small values of the tolerance, $TOL = 0.005$ and $0.004$, the
1226: energy error reaches a plateau at roughly $1\%$ of the total
1227: energy, and remains constant or decreases thereafter.
1228:
1229: The final mesh at $\delta=2.0\ [\sigma]$ corresponding to a
1230: tolerance of $TOL = 0.004$ is shown in Fig.~\ref{fig:Final_mesh}.
1231: The total number of representative atoms in this configuration is
1232: $N_h = 141,469$, which corresponds approximately to $1/8$ of the
1233: total number $N$ of atoms in the sample. It should be stressed,
1234: however, that since all of new representative atoms are inserted
1235: in the vicinity of the indentor, the ratio $N_h/N$ can be made
1236: arbitrarily small by considering increasingly large samples.
1237:
1238: The dislocation structures predicted by the quasicontinuum method
1239: for a tolerance $TOL = 0.004$, Fig.~\ref{fig:Dislocations_qc},
1240: should be contrasted with those predicted by the fully atomistic
1241: model, Fig.~\ref{fig:Dislocations_atomistic}. The figures display
1242: the energetic atoms (red) underneath the surface of the crystal
1243: (blue). Evidently, these structures differ in detail. This is
1244: expected, owing to the massive lack of uniqueness which
1245: characterizes the problem. Thus, as dislocation are nucleated and
1246: the lack of convexity of the energy comes into play, numerous
1247: deformation paths become available to the crystal. Many of these
1248: deformation paths differ only slightly in their energy content and
1249: are, therefore, indistinguishable at the macroscale, e.~g., in
1250: terms of the corresponding force-depth of penetration curves. This
1251: is specially so when the crystal is loaded along a direction of
1252: high symmetry, which results in the possible activation of a large
1253: number of competing slip systems. Under these conditions, a
1254: pointwise comparison of solutions becomes mathematically
1255: meaningless, and the sole meaningful criterion to measure the
1256: quality of a solution is its energy contents. By this criterion,
1257: the quasicontinuum and fully atomistic solutions are of comparable
1258: quality, as their energies differ by less than $1\%$.
1259:
1260: This contention is confirmed by Fig.~\ref{fig:Force_displacement},
1261: which compares the force on the indentor $f$ as a function of
1262: penetration depth $\delta$ predicted by the fully atomistic and
1263: quasicontinuum ($TOL = 0.004$) models. Indeed, the two curves are
1264: ostensibly indistinguishable even beyond the onset of dislocation
1265: nucleation. On this basis, in practice choices of the tolerance
1266: $TOL$ in the range of $0.001$--$0.004$ would appear to strike an
1267: adequate balance between accuracy and performance demands.
1268:
1269: \section{Summary and Discussion}
1270: \label{sec:Summary}
1271:
1272: We have developed a streamlined and fully three-dimensional
1273: version of the quasicontinuum method of Tadmor {\it et al.}
1274: \cite{TadmorOrtizPhillips1996, TadmorPhillipsOrtiz1996} and we
1275: have presented a numerical analysis of its accuracy and
1276: convergence characteristics. As a new addition to the theory, we
1277: have formulated a new class of summation rules in which the
1278: lattice function being summed is sampled over clusters of atoms.
1279: The size of these clusters is an adjustable parameter and controls
1280: the accuracy of the summation rule. We have also presented an
1281: efficient method for computing the requisite summation weights in
1282: linear time. Beyond its usefulness as a numerical scheme for
1283: approximating lattice sums, the cluster approach provides a
1284: systematic means of sampling the behavior of small representative
1285: crystallites, and thus opens a possible avenue for incorporating
1286: additional physics to quasicontinuum models such as diffusion of
1287: solute atoms and thermal lattice vibrations.
1288:
1289: We have presented a suite of numerical tests which demonstrate the
1290: accuracy and performance of the method. As expected, the accuracy
1291: of cluster summation rules increases with cluster size.
1292: Furthermore, our numerical tests suggest that the addition of a
1293: single shell of neighbors suffices to stabilize the
1294: rank-deficiency which afflicts node-based summation rules. The
1295: computed convergence rate of the method in problems involving the
1296: application of point loads to crystals is close to linear when the
1297: lattice sums are performed exactly, and decreases somewhat when
1298: the sums are approximated using a cluster summation rule. It is
1299: worth noting that, contrary to continuum problems for which a
1300: well-developed approximation theory exists, a similar
1301: approximation theory for lattice problems appears to be missing at
1302: present, even for linear problems. The development of rigorous
1303: error bounds for finite-element approximations to lattice problems
1304: is a clear worthwhile direction of future research.
1305:
1306: Perhaps the most interesting issue among those addressed in this
1307: paper concerns the ability of the quasicontinuum method to
1308: simulate microstructural evolution, which owes largely to mesh
1309: adaptivity. The same lack of convexity which allows for defects
1310: and microstructures to arise in the first place renders solutions
1311: massively nonunique. For a given loading or prescribed
1312: deformation, it is in general possible to find multiple
1313: equilibrium states of a crystal with defects possessing equal or
1314: nearly equal energies. These states are indistinguishable from a
1315: macroscopic point of view, e.~g., in the sense of yielding
1316: identical force-displacement curves. Whether the solution follows
1317: one deformation path or another depends sensitively on small
1318: perturbations of the system, including details of the mesh design.
1319: Under these conditions, the pointwise comparison of solutions is
1320: not particularly meaningful. Our numerical tests suggest that,
1321: with sufficient mesh adaptivity, the quasicontinuum method is
1322: capable of simulating evolving microstructures comparable, in
1323: energetic terms, to those obtained from a full atomistic
1324: calculation.
1325:
1326: \section*{Acknowledgments}
1327:
1328: The support of the Department of Energy through Caltech's
1329: ASCI/ASAP Center for the Simulation of the Dynamic Behavior of
1330: Solids is gratefully acknowledged.
1331:
1332: \bibliographystyle{plain}
1333: {\small%
1334: \bibliography{qc}
1335: %\bibliography{/home/istanbul/knap/Papers/Bibliography/EAM,
1336: %/home/istanbul/knap/Papers/Bibliography/Computer_Programming,
1337: %/home/istanbul/knap/Papers/Bibliography/Nanoindentation,
1338: %/home/istanbul/knap/Papers/Bibliography/Quasicontinuum}
1339: }
1340:
1341: \end{document}
1342: