I may have some codes from which you could use to start, as well as
some codes available from Prof. Ceperley (see his list). In addition,
Allen & Tildesley provide numerous algorithms (not all optimized because
this text was written 15 years ago) which may be obtained via download
from one of our link pages. A good project would be a novel application
with any one of these codes, appropriately modified, improved, and or
whatever.
- Kinetic Monte Carlo codes (KMC) for two sorts of KMC
- Classical MC and MD for 2 or 3 dimensional liquids,
plasmas and polymers (CLAMPS)
- Software on NCSA computers (we can help) find some.
However, you will be responsible for figuring out how these codes work.
An interesting read about Data from simulations is:
"Controlling the Data Glut in Large-Scale MD Simulations,"
Beazley and Lomdahl, Computers in Physics 11, 231 (1997)
for when the information is just to large to understand.
A LIST OF IDEAS:
Environment Simulations: (Stochastic Evolution of River Valleys)
-
For a area (2-D, i.e. x and y) of the earth, use MC to generate a
terrain (height, z), as well as existing water levels, based on
PRNG algorithm.
Extending this, simulate the evolution of river basins based on
algorithm to erode earth height and to distribute water, possibly
including the oft found rain contribution. The algorithm could
be physically based like Flux Equations, or non-physically based
like cellular automata. Best of all, they also may be
represented by faux color maps, since all this can be
viewed topologically. (See overly fancy version of this
LUCAS or example paper
by Mitas et al. . But with your or simplier approach, many
interesting things can happen.)
Dislocations:
- Using a empirical potential, such as the Double-Yukawa, write a,
or modify an existing, MD code to study dislocation motion in a 2-D,
finite simulation cell. (2-D is recommended for simplicity as well
as the ability to more easily visualize.)
How do you impose shear strain into boundary conditions?
What additional requirements are needed for boundary conditions?
For example, one dislocation in cell produces very large strain
fields which cannot be handles well in finite cell.
How can you arrange another dislocation so that strain fields are
short-ranged and finite cell works reasonable well?
Kinetic Monte Carlo: (Diffusion, Concentration Gradients,
Phase Transitions, Surface Chemistry...)
-
Simulate via KMC a binary alloy system to determine the changes in the local
environmental structure due to vacancy migration. Because the global alloy
composition cannot change the simulation will be in canonical ensemble.
There should be many interesting phase transitions depending on
vacancy-element interactions and their sizes, which are related to the
concentration fluctuations in non-equilibrium. Kinetics will depend on
the effective chemical potentials, but the equilibrium thermodynamics will
depend only on the effective pair-interactions, as discussed in class.
(See, e.g., Athenes et al., Acta Mater. 44, 4739 (1996)).
This could also be performed to study kinetics and equilibrium
structure of concentration gradients in multi-layer alloy.
- Implement a KMC to determine to 2-D surface diffusion coefficient,
which may be obtained via MC and Boltzmann-Matano analysis.
It may be implemented as a study of time correlation of the
concentration fluctuations. (See, e.g., independently invented
by Reed and Ehrlich at UIUC, Surface Science 105, 603 (1981),
Bortz et al., J. Comput. Phys. 17, 10 (1975), and, intro paper
by Clark, Raff and Scott, Computers in Physics 10, 584 (1996).)
- Using KMC, study the evolution
a concentration gradient around an anti-phase boundary defect in
an binary alloy, which may be mapped to an effective 2-D problem
if entire planes parallel to defect are considered identically occupied.
- Surface Chemistry: Produce a hybrid MC code and simulation
consisting of kinetic plus equilibrium moves which applies to systems
with N different processes whose rates vary by orders of magnitude,
like chemical vapor deposition.
See intro paper by Clark, Raff and Scott,
Computers in Physics 10, 584 (1996).
Simulated Annealing: (Modeling the Stock Market or
Finding Global Minima)
- Find a Needle in a Haystack: Choose a function which contains a
large number of multi-minima, perhaps with even large deviations of
minina depths, but with only one global minima. Use the technique of simulated
annealing to produce an efficient code for finding the "ground state",
i.e. global minina, and compare to more standard Conjugant Gradient
or Newton-Rapheson Techniques. See Numerical Recipes for
short explanation of these latter techiques, if you are unfamiliar
with them. See also, Andricioaei and Straub,
Computers in Physics 10, 449 (1996) for intro article on
CONFORMATIONAL OPTIMIZATION, which is the fancy name for this
approach, where they give some suggestions for study, including
a function of the type used in simulations and conformation
of small L-J clusters.
- Note that multi-state spin models (Potts, etc.) always
produce such multi-minima states. Such models are used on
the New York Stock Exchange to model derivate buying.
- The Travelling Saleman Problem is in fact a
problem of this type (but you cannot choose this one).
(E.g, Yoshiyuki et al., Computers in Physics 10, 525 (1996)
Random Number Generators:
-
Test the ideas of quasi-random numbers for a integration of a function
which is not feasible with a grid-based method and compare to Monte Carlo
efficiencies. (see Computers in Physics Nov. 1989 )
-
For various psuedo-random number generators, use both tests of
their quality as far as correlation and randomness as well as
their efficiencies within a particular simulation algorithm,
such as 2-D Ising Model, to pick a Best Choice PRNG
for your application. (For Portable PRNG, see Marsaglia and Zaman,
Computers in Physics 8, 117 (1994); also,
P. Coddington, Tests of random number generators using Ising model
simulations , Int. J. of Mod. Phys. C, 7(3):295-303, 1996.)
Non-Equilibrium Phenomena: (Order-disorder, Spinodal Decompositions,
Liquid-solid Trans., etc., using Langevin Simulations
- Study phase separation in a binary alloy (Cahn-Hillard type equations)
using Langevin Dynamics. (See Ken Elder, Computers in Physics 7, 27
(1993) and note that CLAMPS can do some types of Langevin dynamics.)
- Active-walker models used to simulate growth phenomena in
open systems in non-equilibrium conditions. Large-scale versions
of this are the expansion or shrinkage of river basins (see
Environmental Simulation Idea above), or smaller-scale versions
are chemical and biological systems, like cell evolution,
snowflake formation, and so on. Study a type active-walker
model, but not just one out of sample papers, even your own.
(See, e.g., Lam and Pochy, Computers in Physics 7, 534 (1993).)
or about bacterial colonies by Ben-Jacob et al., Nature 368, 46 (1994).
- We're all getting older so, perform simulation of biological aging
using MC algorithm. See, for example, D. Stauffer article,
Computers in Physics 10, 341 (1996), where he has suggested
several topics for futher study. (Some of these are nothing more
than trivially altering code and running: Refrain from such inactivity.
You certainly can come with more interesting extensions.)
Phase Transition:
- Simulate the phase coexistence for complex molecules
by producing a configurational-biased, grand-canonical MC
program for L-J chain polymers. CLAMPS may be modified
to do this, or write your own specialized and short version.
A good discussion and some code can be found by Frenkel and Smit,
Computers in Physics 11, 247 (1997).
- Study the equilibrium thermodynamics (MC or MD) of simple binary
gas based on empirical potentials (I would use Double-Yukawa type
but it is not necessary) on the surface of a sphere
so that there are no Periodic Poundary Conditions. What, if anything
happens around the liquid-solid interface , for example?
- Implement so-called Cluster Algorithm for MC simulation,
which flips multiple sites rather than single sites sequentially.
Compare the MC efficiency from standard and cluster algorithm.
See, e.g., Selke, Talapov, Scheir, "Cluster-flipping MC algorithm
and correlation in a "good" RNG," JETP Lett. 58, 665 (1993).
(For simplisicity, it may be best to due this for 2-D Ising Model.
If so, then also compare what happens just below critical point
for conifgurations using both algorithms.)
- Simulation of Polymer Chains on surface of Sphere by altering
relevant parts of CLAMPS to change boundary conditions. (Check
with Prof. Cepereley whether this is big job.) This acts like
confined volume with artificial boundary conditions like
bags or boxes and limits the complexity. Density of polymers
can be controlled via sphere radius, for example. Does anything
change by maintaining density while varying radius?
- Implement the Mori-Zwanzig-Daubechies (Wavelet) decomposition
of Ising Model Monte Carlo Dynamics. (See, e.g.,
Phillies and Stott, Computers in Physics 9, 225 (1995).)
But first answer, why would you want to do this?
- Implement MC of hard-sphere gas on a 2-D Sphere and study the
entropy-driven phase transition. Determine the distribution of the
velocities. Determine how PV=nRT is recovered, or not, from simulation.
(see general discussion of problems in article by
Gould, Tobochnik adn Colonna-Romana,
Computers in Physics 11, 157 (1997)
Cellular Automata:
- While this is not really the basis of this course in
Atomic Scale Simulations, it does have obvious connections
and can be applied to numerous and widely varied systems:
Image Processing, Urban Development, Ant Colonies,
Reaction-Diffusion, Alloy Kinetics, ..... If yours is
interesting and relevant, why not? (To get started, e.g.,
Cellular Automata)