1 |
gezelter |
1066 |
#!/bin/sh |
2 |
gezelter |
1805 |
OPENMD_HOME=@CMAKE_INSTALL_PREFIX@ |
3 |
gezelter |
1066 |
# This is a collection of sample commands that can be used to build |
4 |
gezelter |
1390 |
# OpenMD start files. In OpenMD, the start files have a <MetaData> |
5 |
gezelter |
1066 |
# block to give information about the kind of simulation being performed. |
6 |
|
|
# The start files also contain at least one <Snapshot> block which contains |
7 |
|
|
# information about the instantaneous configuration. |
8 |
|
|
# |
9 |
|
|
# One of the difficult tasks in using any simulation program is figuring |
10 |
gezelter |
1390 |
# out how to format the start file correctly. OpenMD includes a set of |
11 |
gezelter |
1066 |
# "builder" programs to make that process a bit less painful. |
12 |
|
|
# |
13 |
|
|
# Example 1: |
14 |
gezelter |
1067 |
# Builds an FCC lattice from the <MetaData> block in one_component.md |
15 |
|
|
# Uses 5 unit cells in each direction, a density of 1.0 g / cm^3, and |
16 |
gezelter |
1390 |
# places the output (which can be used to start an OpenMD job) in |
17 |
gezelter |
1067 |
# FCC.md |
18 |
|
|
# |
19 |
|
|
# Note that builders will rewrite the number of molecules in each component |
20 |
|
|
# to match the number of lattice sites. |
21 |
|
|
# |
22 |
gezelter |
1083 |
# The thermalizer command takes the FCC.md file and resamples the velocities |
23 |
gezelter |
1079 |
# from a Maxwell-Boltzmann distribution set to 100K: |
24 |
|
|
# |
25 |
gezelter |
1805 |
${OPENMD_HOME}/bin/simpleBuilder -o FCC.md --nx=5 --ny=5 --nz=5 --density=1.0 one_component.md |
26 |
|
|
${OPENMD_HOME}/bin/thermalizer -o FCC-100K.md -t 100 FCC.md |
27 |
gezelter |
1067 |
# |
28 |
|
|
# Example 2: |
29 |
gezelter |
1066 |
# Builds an FCC lattice from the <MetaData> block in three_component.md |
30 |
|
|
# uses 4 unit cells in each direction, a density of 1.0 g / cm^3, and |
31 |
|
|
# molFractions of 0.4, 0.4, and 0.2 for the three components. Places |
32 |
gezelter |
1390 |
# the output (which can be used to start an OpenMD job) in random_FCC.md |
33 |
gezelter |
1066 |
# |
34 |
|
|
# Note that builders will rewrite the number of molecules in each component |
35 |
|
|
# to match the number of lattice sites. |
36 |
|
|
# |
37 |
gezelter |
1805 |
${OPENMD_HOME}/bin/randomBuilder -o random_FCC.md --nx=4 --ny=4 --nz=4 --density=1.0 --molFraction=0.4 --molFraction=0.4 three_component.md |
38 |
|
|
${OPENMD_HOME}/bin/thermalizer -o random_FCC-100K.md -t 100 random_FCC.md |
39 |
gezelter |
1076 |
# |
40 |
|
|
# Example 3: |
41 |
|
|
# Builds a spherical nanoparticle (FCC) from the <MetaData> block in gold.md |
42 |
|
|
# using a particle radius of 30 Angstroms, and a lattice constant of 4.09 |
43 |
gezelter |
1390 |
# angstroms. Places the output (which can be used to start an OpenMD job) in |
44 |
gezelter |
1076 |
# gold_sphere.md |
45 |
|
|
# |
46 |
|
|
# Note that builders will rewrite the number of molecules in each component |
47 |
|
|
# to match the number of lattice sites. |
48 |
|
|
# |
49 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanoparticleBuilder -o gold_sphere.md --radius=30.0 --latticeConstant=4.09 gold.md |
50 |
|
|
${OPENMD_HOME}/bin/thermalizer -o gold_sphere-500K.md -t 500.0 gold_sphere.md |
51 |
gezelter |
1076 |
# |
52 |
|
|
# Example 4: |
53 |
|
|
# Builds a random alloy spherical nanoparticle (FCC) from the <MetaData> |
54 |
|
|
# block in bimetallic.md using a particle radius of 30 Angstroms, a |
55 |
|
|
# lattice constant of 4.09 angstroms, and a mole fraction for the gold of 0.4. |
56 |
gezelter |
1390 |
# Places the output (which can be used to start an OpenMD job) in |
57 |
gezelter |
1076 |
# Au_Ag_alloy.md |
58 |
|
|
# |
59 |
|
|
# Note that builders will rewrite the number of molecules in each component |
60 |
|
|
# to match the number of lattice sites. |
61 |
|
|
# |
62 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanoparticleBuilder -o Au_Ag_alloy.md --radius=30.0 --latticeConstant=4.09 --molFraction=0.4 bimetallic.md |
63 |
|
|
${OPENMD_HOME}/bin/thermalizer -o Au_Ag_alloy-600K.md -t 600 Au_Ag_alloy.md |
64 |
gezelter |
1076 |
# |
65 |
|
|
# Example 5: |
66 |
|
|
# Builds a Au(core)-Ag(shell) spherical nanoparticle (FCC) from the <MetaData> |
67 |
|
|
# block in bimetallic.md using a particle radius of 25 Angstroms, a |
68 |
|
|
# lattice constant of 4.09 angstroms, and a core radius for the gold atoms |
69 |
|
|
# of 12.5 angstroms. Places the output (which can be used to start an |
70 |
gezelter |
1390 |
# OpenMD job) in Au(core)-Ag(shell).md |
71 |
gezelter |
1076 |
# |
72 |
|
|
# Note that builders will rewrite the number of molecules in each component |
73 |
|
|
# to match the number of lattice sites. |
74 |
|
|
# |
75 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanoparticleBuilder -o Au-core-Ag-shell.md --radius=30.0 --latticeConstant=4.09 --shellRadius=12.5 bimetallic.md |
76 |
|
|
${OPENMD_HOME}/bin/thermalizer -o Au-core-Ag-shell-800K.md -t 800.0 Au-core-Ag-shell.md |
77 |
gezelter |
1076 |
# |
78 |
|
|
# Example 6: |
79 |
|
|
# Reverses example 5 by building a Ag(core)-Au(shell) spherical nanoparticle. |
80 |
|
|
# Uses the same <MetaData> block from bimetallic.md, |
81 |
|
|
# a particle radius of 25 Angstroms, a lattice constant of 4.09 angstroms, |
82 |
|
|
# and a core radius for the silver atoms of 12.5 angstroms. |
83 |
gezelter |
1390 |
# Places the output (which can be used to start an OpenMD job) in |
84 |
gezelter |
1076 |
# Ag(core)-Au(shell).md |
85 |
|
|
# |
86 |
|
|
# Note that the last radius in Example 5 was taken as the particle radius, |
87 |
|
|
# but since the components are reversed in this example, both are specified: |
88 |
|
|
# |
89 |
|
|
# |
90 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanoparticleBuilder -o Ag-core-Au-shell.md --radius=30.0 --latticeConstant=4.09 --shellRadius=30.0,12.5 bimetallic.md |
91 |
|
|
${OPENMD_HOME}/bin/thermalizer -o Ag-core-Au-shell-800K.md -t 800.0 Ag-core-Au-shell.md |
92 |
gezelter |
1076 |
# |
93 |
|
|
# Example 7: |
94 |
|
|
# Builds a Au(core)-Ag(shell) spherical nanoparticle (FCC) from the <MetaData> |
95 |
|
|
# block in bimetallic.md using a particle radius of 25 Angstroms, a |
96 |
|
|
# lattice constant of 4.09 angstroms, and a core radius for the gold atoms |
97 |
|
|
# of 12.5 angstroms. Places the output (which can be used to start an |
98 |
gezelter |
1390 |
# OpenMD job) in Au(core)-Ag(shell).md |
99 |
gezelter |
1076 |
# |
100 |
|
|
# This example also introduces 70% vacancies in a 6 angstrom radial band |
101 |
|
|
# around the bimetallic interface: |
102 |
|
|
# |
103 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanoparticleBuilder -o vacancy_interface.md --radius=20.0 --latticeConstant=4.09 --shellRadius=12.5 --vacancyPercent=70 --vacancyInnerRadius=9.5 --vacancyOuterRadius=15.5 bimetallic.md |
104 |
|
|
${OPENMD_HOME}/bin/thermalizer -o vacancy_interface-800K.md -t 800 vacancy_interface.md |
105 |
gezelter |
1076 |
# |
106 |
|
|
# Example 8: |
107 |
|
|
# Builds a random alloy spherical nanoparticle with 30% vacancies using the |
108 |
|
|
# <MetaData> block in bimetallic.md, a particle radius of 30 Angstroms, a |
109 |
|
|
# lattice constant of 4.09 angstroms, and a mole fraction for the gold of 0.4. |
110 |
gezelter |
1390 |
# Places the output (which can be used to start an OpenMD job) in |
111 |
gezelter |
1076 |
# vacancy_alloy.md |
112 |
|
|
# |
113 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanoparticleBuilder -o vacancy_alloy.md --radius=30.0 --latticeConstant=4.09 --molFraction=0.4 --vacancyPercent=80 bimetallic.md |
114 |
|
|
${OPENMD_HOME}/bin/thermalizer -o vacancy_alloy-900K.md -t 900 vacancy_alloy.md |
115 |
gezelter |
1782 |
# |
116 |
|
|
#Example 9: |
117 |
|
|
# Builds a spherically-capped nanorod (FCC) from the <MetaData> block in gold.md |
118 |
|
|
# using a nanorod radius of 20 Angstroms, a length of 50 Angstroms and a lattice constant of 4.08 |
119 |
|
|
# angstroms. Places the output (which can be used to start an OpenMD job) in |
120 |
|
|
# gold_fccrod.md |
121 |
|
|
# |
122 |
|
|
# Note that builders will rewrite the number of molecules in each component |
123 |
|
|
# to match the number of lattice sites. |
124 |
|
|
# |
125 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanorodBuilder -o gold_fccrod.md --radius=20.0 --length=50.0 --latticeConstant=4.08 gold.md |
126 |
gezelter |
1782 |
# |
127 |
|
|
#Example 10: |
128 |
|
|
# Builds a pentagonal nanorod from the <MetaData> block in gold.md |
129 |
|
|
# using a nanorod radius of 15 Angstroms, a length of 64 Angstroms and a lattice constant of 4.08 |
130 |
|
|
# angstroms. Places the output (which can be used to start an OpenMD job) in |
131 |
|
|
# gold_pentrod.md |
132 |
|
|
# |
133 |
|
|
# Note that builders will rewrite the number of molecules in each component |
134 |
|
|
# to match the number of lattice sites. |
135 |
|
|
# |
136 |
gezelter |
1805 |
${OPENMD_HOME}/bin/nanorod_pentBuilder -o gold_pentrod.md --radius=15.0 --length=64.0 --latticeConstant=4.08 gold.md |
137 |
gezelter |
1861 |
# |
138 |
|
|
#Example 11: |
139 |
|
|
# Builds a Mackay icosahedral nanoparticle from the <MetaData> block in gold.md |
140 |
|
|
# using a 8 shells, and a lattice constant of 4.08 angstroms. |
141 |
|
|
# Places the output (which can be used to start an OpenMD job) in |
142 |
|
|
# gold_ico.md |
143 |
|
|
# |
144 |
|
|
# Note that builders will rewrite the number of molecules in each component |
145 |
|
|
# to match the number of lattice sites. |
146 |
|
|
# |
147 |
|
|
${OPENMD_HOME}/bin/icosahedralBuilder -o gold_ico.md --shells=8 --latticeConstant=4.08 gold.md |
148 |
|
|
${OPENMD_HOME}/bin/thermalizer -o gold_ico_300K.md -t 300 gold_ico.md |