File: Section_tools.html

package info (click to toggle)
liggghts 3.0.3%2Brepack-2
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 106,076 kB
  • ctags: 34,406
  • sloc: cpp: 363,723; python: 21,138; ansic: 9,146; perl: 3,687; sh: 2,841; fortran: 2,802; xml: 788; makefile: 485; objc: 238; lisp: 169; f90: 145; csh: 16; awk: 14
file content (517 lines) | stat: -rw-r--r-- 19,226 bytes parent folder | download | duplicates (2)
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
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
<HTML>
<CENTER><A HREF = "Section_perf.html">Previous Section</A> - <A HREF = "http://lammps.sandia.gov">LAMMPS WWW Site</A> - <A HREF = "Manual.html">LAMMPS
Documentation</A> - <A HREF = "Section_commands.html#comm">LAMMPS Commands</A> - <A HREF = "Section_modify.html">Next
Section</A> 
</CENTER>






<HR>

<H3>9. Additional tools 
</H3>
<P>LAMMPS is designed to be a computational kernel for performing
molecular dynamics computations.  Additional pre- and post-processing
steps are often necessary to setup and analyze a simulation.  A few
additional tools are provided with the LAMMPS distribution and are
described in this section.
</P>
<P>Our group has also written and released a separate toolkit called
<A HREF = "http://www.sandia.gov/~sjplimp/pizza.html">Pizza.py</A> which provides tools for doing setup, analysis,
plotting, and visualization for LAMMPS simulations.  Pizza.py is
written in <A HREF = "http://www.python.org">Python</A> and is available for download from <A HREF = "http://www.sandia.gov/~sjplimp/pizza.html">the
Pizza.py WWW site</A>.
</P>




<P>Note that many users write their own setup or analysis tools or use
other existing codes and convert their output to a LAMMPS input format
or vice versa.  The tools listed here are included in the LAMMPS
distribution as examples of auxiliary tools.  Some of them are not
actively supported by Sandia, as they were contributed by LAMMPS
users.  If you have problems using them, we can direct you to the
authors.
</P>
<P>The source code for each of these codes is in the tools sub-directory
of the LAMMPS distribution.  There is a Makefile (which you may need
to edit for your platform) which will build several of the tools which
reside in that directory.  Some of them are larger packages in their
own sub-directories with their own Makefiles.
</P>
<UL><LI><A HREF = "#amber">amber2lmp</A>
<LI><A HREF = "#binary">binary2txt</A>
<LI><A HREF = "#charmm">ch2lmp</A>
<LI><A HREF = "#chain">chain</A>
<LI><A HREF = "#create">createatoms</A>
<LI><A HREF = "#data">data2xmovie</A>
<LI><A HREF = "#eamdb">eam database</A>
<LI><A HREF = "#eamgn">eam generate</A>
<LI><A HREF = "#eff">eff</A>
<LI><A HREF = "#emacs">emacs</A>
<LI><A HREF = "#ipp">ipp</A>
<LI><A HREF = "#kate">kate</A>
<LI><A HREF = "#arc">lmp2arc</A>
<LI><A HREF = "#cfg">lmp2cfg</A>
<LI><A HREF = "#vmd">lmp2vmd</A>
<LI><A HREF = "#matlab">matlab</A>
<LI><A HREF = "#micelle">micelle2d</A>
<LI><A HREF = "#moltemplate">moltemplate</A>
<LI><A HREF = "#msi">msi2lmp</A>
<LI><A HREF = "#phonon">phonon</A>
<LI><A HREF = "#polybond">polymer bonding</A>
<LI><A HREF = "#pymol">pymol_asphere</A>
<LI><A HREF = "#pythontools">python</A>
<LI><A HREF = "#reax">reax</A>
<LI><A HREF = "#restart">restart2data</A>
<LI><A HREF = "#vim">vim</A>
<LI><A HREF = "#xmgrace">xmgrace</A>
<LI><A HREF = "#xmovie">xmovie</A> 
</UL>
<HR>

<H4><A NAME = "amber"></A>amber2lmp tool 
</H4>
<P>The amber2lmp sub-directory contains two Python scripts for converting
files back-and-forth between the AMBER MD code and LAMMPS.  See the
README file in amber2lmp for more information.
</P>
<P>These tools were written by Keir Novik while he was at Queen Mary
University of London.  Keir is no longer there and cannot support
these tools which are out-of-date with respect to the current LAMMPS
version (and maybe with respect to AMBER as well).  Since we don't use
these tools at Sandia, you'll need to experiment with them and make
necessary modifications yourself.
</P>
<HR>

<H4><A NAME = "binary"></A>binary2txt tool 
</H4>
<P>The file binary2txt.cpp converts one or more binary LAMMPS dump file
into ASCII text files.  The syntax for running the tool is
</P>
<PRE>binary2txt file1 file2 ... 
</PRE>
<P>which creates file1.txt, file2.txt, etc.  This tool must be compiled
on a platform that can read the binary file created by a LAMMPS run,
since binary files are not compatible across all platforms.
</P>
<HR>

<H4><A NAME = "charmm"></A>ch2lmp tool 
</H4>
<P>The ch2lmp sub-directory contains tools for converting files
back-and-forth between the CHARMM MD code and LAMMPS. 
</P>
<P>They are intended to make it easy to use CHARMM as a builder and as a
post-processor for LAMMPS. Using charmm2lammps.pl, you can convert an
ensemble built in CHARMM into its LAMMPS equivalent.  Using
lammps2pdb.pl you can convert LAMMPS atom dumps into pdb files.
</P>
<P>See the README file in the ch2lmp sub-directory for more information.
</P>
<P>These tools were created by Pieter in't Veld (pjintve at sandia.gov)
and Paul Crozier (pscrozi at sandia.gov) at Sandia.
</P>
<HR>

<H4><A NAME = "chain"></A>chain tool 
</H4>
<P>The file chain.f creates a LAMMPS data file containing bead-spring
polymer chains and/or monomer solvent atoms.  It uses a text file
containing chain definition parameters as an input.  The created
chains and solvent atoms can strongly overlap, so LAMMPS needs to run
the system initially with a "soft" pair potential to un-overlap it.
The syntax for running the tool is
</P>
<PRE>chain < def.chain > data.file 
</PRE>
<P>See the def.chain or def.chain.ab files in the tools directory for
examples of definition files.  This tool was used to create the
system for the <A HREF = "Section_perf.html">chain benchmark</A>.
</P>
<HR>

<H4><A NAME = "create"></A>createatoms tool 
</H4>
<P>The tools/createatoms directory contains a Fortran program called
createAtoms.f which can generate a variety of interesting crystal
structures and geometries and output the resulting list of atom
coordinates in LAMMPS or other formats.
</P>
<P>See the included Manual.pdf for details.
</P>
<P>The tool is authored by Xiaowang Zhou (Sandia), xzhou at sandia.gov.
</P>
<HR>

<H4><A NAME = "data"></A>data2xmovie tool 
</H4>
<P>The file data2xmovie.c converts a LAMMPS data file into a snapshot
suitable for visualizing with the <A HREF = "#xmovie">xmovie</A> tool, as if it had
been output with a dump command from LAMMPS itself.  The syntax for
running the tool is
</P>
<PRE>data2xmovie <B>options</B> < infile > outfile 
</PRE>
<P>See the top of the data2xmovie.c file for a discussion of the options.
</P>
<HR>

<H4><A NAME = "eamdb"></A>eam database tool 
</H4>
<P>The tools/eam_database directory contains a Fortran program that will
generate EAM alloy setfl potential files for any combination of 16
elements: Cu, Ag, Au, Ni, Pd, Pt, Al, Pb, Fe, Mo, Ta, W, Mg, Co, Ti,
Zr.  The files can then be used with the <A HREF = "pair_eam.html">pair_style
eam/alloy</A> command.
</P>
<P>The tool is authored by Xiaowang Zhou (Sandia), xzhou at sandia.gov,
and is based on his paper:
</P>
<P>X. W. Zhou, R. A. Johnson, and H. N. G. Wadley, Phys. Rev. B, 69,
144113 (2004).
</P>
<HR>

<H4><A NAME = "eamgn"></A>eam generate tool 
</H4>
<P>The tools/eam_generate directory contains several one-file C programs
that convert an analytic formula into a tabulated <A HREF = "pair_eam.html">embedded atom
method (EAM)</A> setfl potential file.  The potentials they
produce are in the potentials directory, and can be used with the
<A HREF = "pair_eam.html">pair_style eam/alloy</A> command.
</P>
<P>The source files and potentials were provided by Gerolf Ziegenhain
(gerolf at ziegenhain.com).
</P>
<HR>

<H4><A NAME = "eff"></A>eff tool 
</H4>
<P>The tools/eff directory contains various scripts for generating
structures and post-processing output for simulations using the
electron force field (eFF).
</P>
<P>These tools were provided by Andres Jaramillo-Botero at CalTech
(ajaramil at wag.caltech.edu).
</P>
<HR>

<H4><A NAME = "emacs"></A>emacs tool 
</H4>
<P>The tools/emacs directory contains a Lips add-on file for Emacs that
enables a lammps-mode for editing of input scripts when using Emacs,
with various highlighting options setup.
</P>
<P>These tools were provided by Aidan Thompson at Sandia
(athomps at sandia.gov).
</P>
<HR>

<H4><A NAME = "ipp"></A>ipp tool 
</H4>
<P>The tools/ipp directory contains a Perl script ipp which can be used
to facilitate the creation of a complicated file (say, a lammps input
script or tools/createatoms input file) using a template file.
</P>
<P>ipp was created and is maintained by Reese Jones (Sandia), rjones at
sandia.gov.
</P>
<P>See two examples in the tools/ipp directory.  One of them is for the
tools/createatoms tool's input file.
</P>
<HR>

<H4><A NAME = "kate"></A>kate tool 
</H4>
<P>The file in the tools/kate directory is an add-on to the Kate editor
in the KDE suite that allow syntax highlighting of LAMMPS input
scripts.  See the README.txt file for details.
</P>
<P>The file was provided by Alessandro Luigi Sellerio
(alessandro.sellerio at ieni.cnr.it).
</P>
<HR>

<H4><A NAME = "arc"></A>lmp2arc tool 
</H4>
<P>The lmp2arc sub-directory contains a tool for converting LAMMPS output
files to the format for Accelrys' Insight MD code (formerly
MSI/Biosym and its Discover MD code).  See the README file for more
information.
</P>
<P>This tool was written by John Carpenter (Cray), Michael Peachey
(Cray), and Steve Lustig (Dupont).  John is now at the Mayo Clinic
(jec at mayo.edu), but still fields questions about the tool.
</P>
<P>This tool was updated for the current LAMMPS C++ version by Jeff
Greathouse at Sandia (jagreat at sandia.gov).
</P>
<HR>

<H4><A NAME = "cfg"></A>lmp2cfg tool 
</H4>
<P>The lmp2cfg sub-directory contains a tool for converting LAMMPS output
files into a series of *.cfg files which can be read into the
<A HREF = "http://mt.seas.upenn.edu/Archive/Graphics/A">AtomEye</A> visualizer.  See
the README file for more information.
</P>
<P>This tool was written by Ara Kooser at Sandia (askoose at sandia.gov).
</P>
<HR>

<H4><A NAME = "vmd"></A>lmp2vmd tool 
</H4>
<P>The lmp2vmd sub-directory contains a README.txt file that describes
details of scripts and plugin support within the <A HREF = "http://www.ks.uiuc.edu/Research/vmd">VMD
package</A> for visualizing LAMMPS
dump files.
</P>
<P>The VMD plugins and other supporting scripts were written by Axel
Kohlmeyer (akohlmey at cmm.chem.upenn.edu) at U Penn.
</P>
<HR>

<H4><A NAME = "matlab"></A>matlab tool 
</H4>
<P>The matlab sub-directory contains several <A HREF = "http://www.mathworks.com">MATLAB</A> scripts for
post-processing LAMMPS output.  The scripts include readers for log
and dump files, a reader for EAM potential files, and a converter that
reads LAMMPS dump files and produces CFG files that can be visualized
with the <A HREF = "http://mt.seas.upenn.edu/Archive/Graphics/A">AtomEye</A>
visualizer.
</P>
<P>See the README.pdf file for more information.
</P>
<P>These scripts were written by Arun Subramaniyan at Purdue Univ
(asubrama at purdue.edu).
</P>


<HR>

<H4><A NAME = "micelle"></A>micelle2d tool 
</H4>
<P>The file micelle2d.f creates a LAMMPS data file containing short lipid
chains in a monomer solution.  It uses a text file containing lipid
definition parameters as an input.  The created molecules and solvent
atoms can strongly overlap, so LAMMPS needs to run the system
initially with a "soft" pair potential to un-overlap it.  The syntax
for running the tool is
</P>
<PRE>micelle2d < def.micelle2d > data.file 
</PRE>
<P>See the def.micelle2d file in the tools directory for an example of a
definition file.  This tool was used to create the system for the
<A HREF = "Section_example.html">micelle example</A>.
</P>
<HR>

<H4><A NAME = "moltemplate"></A>moltemplate tool 
</H4>
<P>The moltemplate sub-directory contains a Python-based tool for
building molecular systems based on a text-file description, and
creating LAMMPS data files that encode their molecular topology as
lists of bonds, angles, dihedrals, etc.  See the README.TXT file for
more information.
</P>
<P>This tool was written by Andrew Jewett (jewett.aij at gmail.com), who
supports it.  It has its own WWW page at
<A HREF = "http://moltemplate.org">http://moltemplate.org</A>.
</P>
<HR>

<H4><A NAME = "msi"></A>msi2lmp tool 
</H4>
<P>The msi2lmp sub-directory contains a tool for creating LAMMPS input
data files from Accelrys' Insight MD code (formerly MSI/Biosym and
its Discover MD code).  See the README file for more information.
</P>
<P>This tool was written by John Carpenter (Cray), Michael Peachey
(Cray), and Steve Lustig (Dupont).  John is now at the Mayo Clinic
(jec at mayo.edu), but still fields questions about the tool.
</P>
<P>This tool may be out-of-date with respect to the current LAMMPS and
Insight versions.  Since we don't use it at Sandia, you'll need to
experiment with it yourself.
</P>
<HR>

<H4><A NAME = "phonon"></A>phonon tool 
</H4>
<P>The phonon sub-directory contains a post-processing tool useful for
analyzing the output of the <A HREF = "fix_phonon.html">fix phonon</A> command in
the USER-PHONON package.
</P>
<P>See the README file for instruction on building the tool and what
library it needs.  And see the examples/USER/phonon directory
for example problems that can be post-processed with this tool.
</P>
<P>This tool was written by Ling-Ti Kong at Shanghai Jiao Tong
University.
</P>
<HR>

<H4><A NAME = "polybond"></A>polymer bonding tool 
</H4>
<P>The polybond sub-directory contains a Python-based tool useful for
performing "programmable polymer bonding".  The Python file
lmpsdata.py provides a "Lmpsdata" class with various methods which can
be invoked by a user-written Python script to create data files with
complex bonding topologies.
</P>
<P>See the Manual.pdf for details and example scripts.
</P>
<P>This tool was written by Zachary Kraus at Georgia Tech.
</P>
<HR>

<H4><A NAME = "pymol"></A>pymol_asphere tool 
</H4>
<P>The pymol_asphere sub-directory contains a tool for converting a
LAMMPS dump file that contains orientation info for ellipsoidal
particles into an input file for the <A HREF = "http://pymol.sourceforge.net">PyMol visualization
package</A>.
</P>


<P>Specifically, the tool triangulates the ellipsoids so they can be
viewed as true ellipsoidal particles within PyMol.  See the README and
examples directory within pymol_asphere for more information.
</P>
<P>This tool was written by Mike Brown at Sandia.
</P>
<HR>

<H4><A NAME = "pythontools"></A>python tool 
</H4>
<P>The python sub-directory contains several Python scripts
that perform common LAMMPS post-processing tasks, such as:
</P>
<UL><LI>extract thermodynamic info from a log file as columns of numbers
<LI>plot two columns of thermodynamic info from a log file using GnuPlot
<LI>sort the snapshots in a dump file by atom ID
<LI>convert multiple <A HREF = "neb.html">NEB</A> dump files into one dump file for viz
<LI>convert dump files into XYZ, CFG, or PDB format for viz by other packages 
</UL>
<P>These are simple scripts built on <A HREF = "http://www.sandia.gov/~sjplimp/pizza.html">Pizza.py</A> modules.  See the
README for more info on Pizza.py and how to use these scripts.
</P>
<HR>

<H4><A NAME = "reax"></A>reax tool 
</H4>
<P>The reax sub-directory contains stand-alond codes that can
post-process the output of the <A HREF = "fix_reax_bonds.html">fix reax/bonds</A>
command from a LAMMPS simulation using <A HREF = "pair_reax.html">ReaxFF</A>.  See
the README.txt file for more info.
</P>
<P>These tools were written by Aidan Thompson at Sandia.
</P>
<HR>

<H4><A NAME = "restart"></A>restart2data tool 
</H4>
<P>IMPORTANT NOTE: This tool is now obsolete and is not included in the
current LAMMPS distribution.  This is becaues there is now a
<A HREF = "write_data.html">write_data</A> command, which can create a data file
from within an input script.  Running LAMMPS with the "-r"
<A HREF = "Section_start.html#start_7">command-line switch</A> as follows:
</P>
<P>lmp_g++ -r restartfile datafile
</P>
<P>is the same as running a 2-line input script:
</P>
<P>read_restart restartfile
write_data datafile
</P>
<P>which will produce the same data file that the restart2data tool used
to create.  The following information is included in case you have an
older version of LAMMPS which still includes the restart2data tool.
</P>
<P>The file restart2data.cpp converts a binary LAMMPS restart file into
an ASCII data file.  The syntax for running the tool is
</P>
<PRE>restart2data restart-file data-file (input-file) 
</PRE>
<P>Input-file is optional and if specified will contain LAMMPS input
commands for the masses and force field parameters, instead of putting
those in the data-file.  Only a few force field styles currently
support this option.
</P>
<P>This tool must be compiled on a platform that can read the binary file
created by a LAMMPS run, since binary files are not compatible across
all platforms.
</P>
<P>Note that a text data file has less precision than a binary restart
file.  Hence, continuing a run from a converted data file will
typically not conform as closely to a previous run as will restarting
from a binary restart file.
</P>
<P>If a "%" appears in the specified restart-file, the tool expects a set
of multiple files to exist.  See the <A HREF = "restart.html">restart</A> and
<A HREF = "write_restart.html">write_restart</A> commands for info on how such sets
of files are written by LAMMPS, and how the files are named.
</P>
<HR>

<H4><A NAME = "vim"></A>vim tool 
</H4>
<P>The files in the tools/vim directory are add-ons to the VIM editor
that allow easier editing of LAMMPS input scripts.  See the README.txt
file for details.
</P>
<P>These files were provided by Gerolf Ziegenhain (gerolf at
ziegenhain.com)
</P>
<HR>

<H4><A NAME = "xmgrace"></A>xmgrace tool 
</H4>
<P>The files in the tools/xmgrace directory can be used to plot the
thermodynamic data in LAMMPS log files via the xmgrace plotting
package.  There are several tools in the directory that can be used in
post-processing mode.  The lammpsplot.cpp file can be compiled and
used to create plots from the current state of a running LAMMPS
simulation.
</P>
<P>See the README file for details.
</P>
<P>These files were provided by Vikas Varshney (vv0210 at gmail.com)
</P>
<HR>

<H4><A NAME = "xmovie"></A>xmovie tool 
</H4>
<P>The xmovie tool is an X-based visualization package that can read
LAMMPS dump files and animate them.  It is in its own sub-directory
with the tools directory.  You may need to modify its Makefile so that
it can find the appropriate X libraries to link against.
</P>
<P>The syntax for running xmovie is
</P>
<PRE>xmovie <B>options</B> dump.file1 dump.file2 ... 
</PRE>
<P>If you just type "xmovie" you will see a list of options.  Note that
by default, LAMMPS dump files are in scaled coordinates, so you
typically need to use the -scale option with xmovie.  When xmovie runs
it opens a visualization window and a control window.  The control
options are straightforward to use.
</P>
<P>Xmovie was mostly written by Mike Uttormark (U Wisconsin) while he
spent a summer at Sandia.  It displays 2d projections of a 3d domain.
While simple in design, it is an amazingly fast program that can
render large numbers of atoms very quickly.  It's a useful tool for
debugging LAMMPS input and output and making sure your simulation is
doing what you think it should.  The animations on the Examples page
of the <A HREF = "http://lammps.sandia.gov">LAMMPS WWW site</A> were created with xmovie.
</P>
<P>I've lost contact with Mike, so I hope he's comfortable with us
distributing his great tool!
</P>
</HTML>