These ideas will help you diagnose some LAMMPS problems yourself. And
they will make it easier for people who read your message to help
figure out your problem.
Please note that the mail list gets a lot of traffic. While the last
suggestion #10 invites general questions, you should not think of the
list as a substitute for:
- Search the forum and mailing list archives here
since your question may have come up previously. There is an "Advanced
filters" option where you can further restrict matches and a dropdown
list where you can choose the order of the search results.
- Put some descriptive text in the subject line. This helps people who
search the archives.
- Select a suitable sub-category and apply tags (they will be created as needed)
identifying the topic of your post. That helps grouping topics and makes
browsing through the forum when looking for discussions of specific topics easier.
- State what version of LAMMPS you are using, which is a date. LAMMPS
will usually print the version as the first line of output. In the
source code it is found in the file "src/version.h". If you
downloaded from the LAMMPS WWW site, then when you unpack the tarball
it will create a directory (e.g. lammps-12Feb09) with a date which
will likely be later than the major release date, since the download
tarball is continually updated with bug fixes and new features
decribed on this page. This date tells you the version you
have is current up to and including the feature release of the same
date listed on this page. State this date.
Reporting the LAMMPS version helps us significantly, because we often
remember when a similar problem came up, and can tell if you are
encountering a bug that has already been fixed.
Note that if you are using a old version and your problem is something
that many users would run into, like a bug with input or output, then
we may tell you to upgrade to the most current version to see if your
problem goes away.
- If a LAMMPS command is not working as documented in the LAMMPS
documentation pages on the WWW site, and you
are using a non-current version of LAMMPS, then recognize that the doc
pages on the WWW site reflect the most recent feature release of LAMMPS
(develop branch on GitHub). To see doc pages for the current develop
branch (latest) or last stable release, go to the Manual
page on the website and click on "Version" at
the lower left. For older versions of LAMMPS, browse the HTML files in
the doc directory of your distribution, which can be created by typing
"make html" from within the doc directory.
- If you have a problem building LAMMPS or it doesn't recognize a
command that is part of a package, then read the
Build doc page carefully,
including the
Build_packages doc page.
If you don't understand the instructions there because you are
inexperienced with cmake or make, then you should find a local expert
or sys admin who can help you get LAMMPS setup on your machine. This
is because many build problems are hard to diagnose remotely. If you
think there is a problem with LAMMPS itself (e.g. the compiler
complains about a LAMMMPS source file), or you think others might have
a Makefile for your target platform, then post a question.
- If you don't know what line in your input script is causing LAMMPS to
generate an error, then use the -echo screen command-line
option when you run LAMMPS.
- If you are having a problem with a specific input script command,
carefully read the entire doc page associated with that
command. There may be text
somewhere on that page which answers your question.
- It's always a good idea to visualize your
system, especially if it runs
for a while before something goes wrong. Check that the initial
configuration of atoms is what you intended, then that atoms move as
you expect them to.
If things go bad on a particular timestep, then print out lots of
thermodynamics and dump lots of snapshots before that timestep.
Things may be going bad earlier than you expect. This can usually be
done easily by running near to the problem timestep, changing output
settings, then running past the problem timestep. For big problems,
you can write out a restart file before things go bad, then run from
the restart file with more output enabled.
- Recognize that your post will be seen by many hundreds of people who
follow, browse, or search the forum. Thus if your post is about a
problem you are having with LAMMPS, it should be as simple and
focused as possible. If you think there is a bug in LAMMPS, then
describe exactly what occurred and why you expected
the result to be diffferent.
"Simple" means that posts like the following are not good:
- I ran a million-atom problem for 10 hours on 100 processors with the
attached 1000 line input script and something bad happened. Help!
Please make an effort before you post, to isolate your problem and
reproduce it with as small a physical problem (number of atoms, number
of timesteps) and as short and simple an input script as possible.
Does the problem occur on one processor or only in parallel?
If you need to attach a data file for us to reproduce the problem,
make it small. If it has to be big, then don't attach it to your
email. Instead, tell us that you have it, and we'll ask you to email
it to us directly if needed.
The most important thing you can do for us, is to isolate your problem
to one (or a few interacting) commands which cause the problem. Since
you know your physical model and what you are trying to simulate, you
can often figure this out more quickly than us, by trying variants of
your input script that turn on/off various options.
- General questions are welcome such as:
- Can LAMMPS do this?
- Has anyone used LAMMPS to do this?
- Does anyone know of potentials for this material?
- How do I model this phenomenon with MD?
- I used this potential in LAMMPS to measure XYZ for this material and got a different answer than I thought I should. Why?
We will always answer the first kind of question. We may not answer
the other kinds if we don't have any suggestions for you. Note that
the last kind of question can be hard to answer and may not have
anything to do with LAMMPS, but more to do with the potential, or what
you are trying to measure, or how you are using molecular dynamics to
perform your simulation.
Finally, if in doubt, just post your question. You won't be the first
to have posted a strange message or a question with an obvious
answer.