-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
188 lines (105 loc) · 3.02 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
A simple program to use and test models from the KIM project.
The Makefile assumes that nlopt (https://nlopt.readthedocs.io/) and its
headers are installed in standard system paths.
************************************************************************
Commands that are read by the main program's command line:
box
===
box <name>
<lattice> <lattice constant> <cubic box?>
<repeat a> <repeat b> <repeat c>
<periodic a?> <periodic b?> <periodic c?>
<atom type> [<atom type> ...]
Create a new box with a given pre-defined lattice. Options with a
question mark are booleans (true/false).
random_box
==========
random_box <name>
<periodic a?> <periodic b?> <periodic c?>
<minimum distance between atoms>
<atom type> [<atom type> ...]
Create a box randomly filled with atoms with a minimum distance
between them. The box is a cube with side length equal to five times
the minimum distance. If more than one atom type is provided, they are
chosen randomly for the atoms.
copy_box
========
copy_box <src> <dst>
Copy a box named <src> and name the copy <dst>.
delete_atom
===========
delete_atom <box name> [<i>]
Delete atom <i> from the given box. If <i> is not provided, delete a
random atom.
model
=====
model <name> <box name> <KIM model name>
Init a KIM model (wrapper). Needs an existing box.
change_box
==========
change_box <model name> <box name>
Associate the given box to the given model.
switch_boxes
============
Not implemented.
deform_box
==========
deform_box <model name> <Dxx> <Dyy> <Dzz> <Dyz> <Dxz> <Dxy>
Deform the box registered with the provided model. The values are the
deformation matrix in Voigt notation, where the deformation matrix is
defined as the sum of the strain matrix ε and the identity matrix I.
write_box
=========
write_box <box name> <file name>
Write the given box to a file in extended XYZ format.
compute
=======
compute <model name> [<n iterations>]
Compute and store values for the given model using its currently
associated box.
Optionally, the compute can be repeated n times. This is mostly useful
for benchmarking (after all the result should be the same every
time). If n is greater than 1, the walltime needed to do all the
calculations is printed.
check_testfile
==============
TODO
optimize_positions
==============
TODO
bulk_modulus_energy
==============
TODO
bulk_modulus_pressure
==============
TODO
stiffness_tensor
==============
TODO
numer_forces_deriv
==============
TODO
numer_forces_deriv_fast
==============
TODO
diff_total_energy_vs_particle_energy
==============
TODO
diff_total_virial_vs_particle_virial
==============
TODO
diff_total_virial_vs_virial_from_forces
==============
TODO
diff_total_virial_vs_virial_from_dEdr
==============
TODO
print
=====
print <msg>
Print <msg> to screen. Here, <msg> is everything after "print "
(including one space) up to the next newline character (excluded).
println
=======
println <msg>
Like "print", but also print a newline.