T. P. Schulze Department of Mathematics University of ... · 5/10/2004  · Minimal search KMC...

30
Some new tools for simulating nano-scale crystal growth T. P. Schulze Department of Mathematics University of Tennessee Thanks to NSF (grant 0103825) for supporting this research.

Transcript of T. P. Schulze Department of Mathematics University of ... · 5/10/2004  · Minimal search KMC...

  • Some new tools for simulating

    nano-scale crystal growth

    T. P. Schulze

    Department of Mathematics

    University of Tennessee

    Thanks to NSF (grant 0103825) for supporting thisresearch.

  • Outline

    1. Kinetic Monte Carlo (KMC) & KMC algorithms

    2. Burton-Cabrera-Frank (BCF) model & hybrid scheme

    3. Off lattice KMC

    0 10 20 30 40 50 60 70 80 90 100x 0

    510

    1520

    2530

    3540

    4550

    z

    0

    1

    2

    3

    4

    5

    6

    7

  • Kinetic Monte-Carlo

    • Early work:

    – F.F. Abraham and G.W. White (1970)

    – G.H. Gilmer and P. Bennema (1972)

    • Stochastic adatom deposition.

    • Hopping rate k(∆φ, T) = k0 exp (−∆φ/kBT)

    • Barriers can be measured, calculated or modeled...

    φ

    S=0 S>0

    • Example:

    ∆φ = ES + mEN + max[(mi − mf),0]EB

    (Smilauer & Vvdensky 1995)

  • Poisson Processes

    The Poisson process assumes discrete events with ex-ponentially distributed waiting times:

    p(t) = r exp (rt), t > 0,

    where r is the rate at which the process occurs, i.e.the average frequency per unit time.

    The expected waiting time is

    〈tp(t)〉 =

    ∫ ∞

    0

    tp(t)dt =1

    r.

    The CDF, probability of waiting less than time t, is

    P({t < T}) =

    ∫ T

    0

    p(t)dt = 1 − exp (−rT).

  • Multiple Processes

    For two independent processes occurring with rates r1and r2, the probability of at least one event occurringbefore time T is

    P({t1 < T or t2 < T}) = P1(T) + P2(T) − P1(T)P2(T)

    = 1 − exp [−(r1 + r2)T ]

    The corresponding distribution of waiting times re-mains exponential with a rate that is the sum of therates of the individual processes:

    p(t) = (r1 + r2) exp [−(r1 + r2)t].

    This generalizes to an arbitrary number of processes.

  • Kinetic Monte-Carlo algorithms

    Principal algorithm: Bortz, Kalos &. Lebowitz (1975)

    1. Randomly select the time it takes for the nextevent to occur

    2. Decide which event it is using relative rates

    This simulates M independent Poisson processes withrates rm that sum to give an overall rate R.

    Performance of KMC algorithms:

    • Rejection algorithm: usually not good for KMC

    • Vanilla BKL with linear search: O(M)

    • Binning technique: O(M1/2) (Mayksum 1988)

    • Binary search: O(log(M))(Blue, Beichl & Sullivan 1995)

    • Maintaining inverse list can eliminate this cost:(Schulze 2002)

    Enm : (n, m) → (i, j, k)

    E−1i,j,k : (i, j, k) → (m, n)

  • Minimal search KMC algorithm:

    1. Compute the overall rate R = SN =∑N

    n=1 rnCn;retain the partial sums Sn

    2. Select a random number r ∈ [0, R).

    3. Search through the list of partial sums Sn untilSn > r

    4. Select an event from the set of events that occurat this rate by computing

    m = Int

    (

    (Sn − r)

    rn

    )

    + 1.

    5. Execute that event and update the configuration{hij}.

    6. For the (local) events that have their rates changedfrom rni to rnf:

    (a) Move them to the end of column nf ; add one

    to Cnf ; update E−1i,j,k.

    (b) Move the event listed as EniCni into the vacatedposition in column ni; reduce Cni by one; up-date E−1i,j,k.

  • Performance

    2

    4

    6

    8

    10

    12

    14

    0 2 4 6 8 10 12

    T

    p

    33

    33

    3

    3 3 3 3

    3

    Computation time for 105 events of a 2p × 2p

    simulation for binary search (upper curve) and

    minimal-search KMC (lower curve).

    • If necessary, event lists can be packed into

    a flat array of length M

    • For arbitrary rates, this can be combined

    with the rejection algorithm.

  • Other facets of film-growth modelling

    0 10 20 30 40 50 60 70 80 90 100x 0

    510

    1520

    2530

    3540

    4550

    z

    0

    1

    2

    3

    4

    5

    6

    7

    �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

    �����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������

  • Terrace/Step models

    Reference: Burton, Cabrera and Frank (1954)

    x x31

    x2

    ρt = Dρxx − τ−1ρ + F ; x ∈ (xi, xi+1)

    ±Dρx|± = α±(ρ|± − ρe), x = xi

    νdxidt

    =

    [

    Dρx +dxidt

    ρ

    ]+

    −, x = xi

  • Hybrid Scheme

    Collaborators: P. Smereka (Mich.), W. E (Princeton)

    • Diffusion equation on terraces:

    ρt = Dρxx + F ∈ ΩBCF

    • KMC simulation near step edges:

    Ω = ΩBCF ∪ ΩKMC

  • Two-grid system

    • N × N sites partitioned into Nc × Nc cells

    • Cell-width M × M (N = MNC)

    • Cell is ∈ ΩKMC if

    – it contains an edge

    – its neighbors contain an edge

  • KMC region

    • Adatoms are defined as sites where hij

    – is one greater than at lateral nearest neighbors,

    – all of which have the same height.

    • For Hybrid simulation, we add events correspond-ing to:

    – hops out of the continuum with rate ∼ Dρ

    – nucleation ∼ ρ2?

    – other processes as desired...

    • This requires a list of boundary segments

  • Continuum region

    ρn+1j = ρnj + D

    ∆t

    ∆x2

    (

    ρnj−1 − 2ρnj + ρ

    nj+1

    )

    + F∆t

    • ρnj is average “adatom” density in cell j

    • Discrete time step ∆t,

    • Coarse grid ∆x = aM ,

    • There are many KMC events per ∆t

    t∆ {t

  • Interface

    • If adatom ΩKMC → ΩBCF

    – remove the adatom from list

    – set ρn+νj = ρnj + 1/M

    – mass is immediately spread over cell

    • If adatom ΩBCF → ΩKMC

    – add adatom to list

    – set ρn+νj = ρnj − 1/M

    – rate for this event type is Dρj

    – event not added to list if ρj < 1/M

    • ν indicates fractional timestep (one event)

  • Moving boundary

    • If a cell changes type, a local conversion processtakes place:

    – To change KMC-cell → BCF-cell

    ∗ Locate adatoms using inverse list

    ∗ Remove hopping events from list

    ∗ Update cell-list

    – To change BCF-cell → KMC-cell

    ∗ Randomly position Int(Mρj) adatoms in cell

    ∗ Add hopping events to list

    ∗ Update cell-list

  • Nucleation, etc.

    • To nucleate islands within the BCF region

    – Add nucleation events with rate ∼ (Mρj)2?

    – If event is chosen, convert cell and its neighbors

    • This approach has proven useful in level-set simu-lations of BCF model

    • A similar procedure applies to vacancy formation,chemical reactions, etc.

    • Deposition and evaporation can be handled at thecontinuum level.

  • 1D Hybrid Simulations

    Adatoms per cell

    0

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    0 10 20 30 40 50 60 70 80 90 100

    0

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    0 10 20 30 40 50 60 70 80 90 100

    0

    0.5

    1

    1.5

    2

    2.5

    3

    3.5

    4

    0 10 20 30 40 50 60 70 80 90 100

    • Continuum regions tend toward parabolic adatomdensity profile

    • Step velocities, step widths and number of adatomson surface fluctuate

  • Average density and fluctuations

    0

    0.05

    0.1

    0.15

    0.2

    0.25

    0.3

    0.35

    0.4

    0.45

    0.5

    0 200000 400000 600000 800000 1e+06

    σe

    D/F

    ++++++++

    +

    +

    3333333

    33

    3

    ++++++++

    +

    +

    ++++++++

    +

    +

    0

    0.005

    0.01

    0.015

    0.02

    0 200000 400000 600000 800000 1e+06

    σρ

    D/F

    ++++++++++

    33333333

    3

    3

    ++++++++++ ++++++++

    ++

  • Computational cost (1D)

    • For 1D KMC:

    – N net attachment events per layer

    – Each adatom performs O(L2) hops

    – Total cost is O(NL2) (or O(N logN L2))

    • For 1D hybrid scheme:

    – Total cost = KMC-cost + BCF-cost

    – KMC-cost reduced to ⇒ O(NM2)

    – BCF-cost is: O(

    (NM2)( LNMD

    )( 1∆t

    )(NM

    ))

    (events/layer)(time/event)(calls/time)(operations/call)

    – CFL condition requires ∆t < M2

    2D

    – Total cost is O(NM2) + O(NLM2

    )

  • Accuracy

    • Errors inherent to BCF model:

    – Errors resulting from interactions

    – Errors from neglected events

    • Errors relative to “adatom” KMC:

    – Discretization error ∼ M2 ≡ (∆x)2

    – Variance reduction

    – Coupling error

    cell scale

    ρ

  • Step edge instability

    Experiment: Behm, et. al. Phys. Rev. Lett.(1994)

    Theory: Bales & Zangwill, Phys. Rev. B

    (1990)

    Simulation: Rost, Smilauer & Krug, Surf. Sci-

    ence (1996).

  • KMC and Hybrid surface

    ’ftn40’ 24 23 22 21 20

    050

    100150

    200250

    3000

    50

    100

    150

    200

    250

    300

    19

    20

    21

    22

    23

    24

    ’ftn40’ 25 24 23 22 21

    050

    100150

    200250

    3000

    50

    100

    150

    200

    250

    300

    20

    21

    22

    23

    24

    25

    • KMC (left) took about 12 days to simiulate.

    • Hybrid (right) took about 56 hours with cell width10

  • KMC and Hybrid surface

    ’ftn40’ 24 23 22 21 20

    050

    100150

    200250

    3000

    50

    100

    150

    200

    250

    300

    19

    20

    21

    22

    23

    24

    050

    100150

    200250

    3000

    50

    100

    150

    200

    250

    300

    13

    14

    15

    16

    17

    18

    • KMC (left) took about 12 days to simiulate.

    • Hybrid (right) took about 70 hours with cell width15

  • Hybrid and Adaptive KMC surface

    ’ftn40’ 25 24 23 22 21

    050

    100150

    200250

    3000

    50

    100

    150

    200

    250

    300

    20

    21

    22

    23

    24

    25

    0 50

    100 150

    200 250

    300 0

    50

    100

    150

    200

    250

    300

    22

    22.5

    23

    23.5

    24

    24.5

    25

    The simulaion on the right uses a crude, coarse-grainedKMC instead of solving a discretized diffusion equation.

    It was slightly faster.

  • Off-lattice KMC

    Collaborators:

    Weidong Guo (post-doc, UTK)Weinan E (Princeton)

    • In all KMC models, transition state theory predictsrates of the form R ∼ exp[−∆Φ]

    • In lattice-based models, the energy landscape Φ isprescribed.

    • In off-lattice KMC, we wish to allow an arbitraryset of atom positions {ri}.

    • The potential energy of such a collection is oftenmodeled as a sum of pair-wise interactions, e.g.the Lennard-Jones potential:

    Φ =∑

    ij

    Φij =∑

    ij

    [

    (

    σ

    rij

    )12

    (

    σ

    rij

    )6]

  • Off-lattice KMC Algorithm

    1. Identify the set of likely transitions xik (i.e. newlocal minima) for each particle

    xik = minx∈Sik

    Φ(x, {rj 6=i})

    2. Identify the barrier ∆Φ = Φ∗ −Φ0 for each transi-tion, where

    Φ∗ = minri(s)∈P

    maxs∈[0,1]

    Φ(ri, {rj 6=i})

    3. Use the BKL algorithm to randomly select andexecute an event

    4. Locally relax new configuration, with occasionalglobal relaxation

  • Off-lattice KMC

    • This is rather slow.

    • Applications might include nano-tubes, wires, pipeflow,gears, levers...

  • Summary

    • Cross-indexed lists

    – provides a minimal-search KMC algorithm

    – combine with rejection for arbitrary rate sets

    • Hybrid scheme

    – significantly faster than KMC

    – many complications with respect to accuracy

    • Work in progress

    – Off-lattice KMC

    – Adaptive/multi-grid KMC

  • For further details...

    T.P. Schulze,“A Hybrid Method for Simulating Epitax-ial Growth,” Journal of Crystal Growth 263 (2004)605-615.

    T.P. Schulze, P. Smereka and Weinan E, “CouplingKinetic Monte-Carlo and Continuum Models with Ap-plication to Epitaxial Growth,” J. Comp. Phys. 189(2003) 197-211.

    T.P. Schulze, “Kinetic Monte-Carlo with Minimal Search-ing,” Phys. Rev. E 65 (2002) 036704.

    http://www.math.utk.edu/ schulze/publications.htm