Please Read This First: Guidelines and Suggestions for posting LAMMPS questions

The LAMMPS categories on MatSci.org are the primary way to get help with installing, running, programming the LAMMPS Molecular Dynamics software package and to facilitate exchange between LAMMPS users and developers. The main motivation of using a forum versus the traditional mailing list is, that this allows anybody to join a discussion at any time and try to provide assistance, even when they have not been around when the original question was posted. As the LAMMPS community is growing, the pool of people that can potentially help others needs to grow as well. Users are often better equipped to explain how to use software effectively to other users than developers who tend to be more focused on the programming aspects of a software project.

Please always keep in mind that people here are volunteering their time. So please be respectful to anybody that makes the effort to respond to your posts, even if you feel slighted or unfairly treated. Communication via text is limited, and we have people here communicating with very different cultural backgrounds, so what may be acceptable for one, can be beyond the limit for others.

Below are several guidelines to assist with using the forum effectively and to avoid wasting anybody’s time. Thus please read and follow them carefully. You can find additional, more in-depth guidelines and suggestions on the LAMMPS homepage.

Click on the triangles to see more detailed explanations for the individual guidelines.

Check out the general Discourse documentation

There is a general documentation for forums managed by the Discourse software at:
Using Discourse - Discourse Meta

This explains many things about how the forum works, how you can use its features, and what you have to keep in mind when writing or reading posts.

Write your post in English

To have maximum reach, please write all posts and responses in English, even if the person responding to you may be obvious to know your preferred (native) language. The purpose of having public discussions is not only to resolve your specific problem, but also to make the solution available for people in the future that come across the same issue.

Format your post so it is readable

The LAMMPS forum posts are formatted using Markdown and BBCode. Markdown is a simple markup language that uses special characters such as * $ and other to render equation, bold words, titles etc. BBCode’s spirit is the same but with some tag system.

This has two main consequences:

  1. PLEASE: Do not copy and paste your LAMMPS input file as is. The forum formatting engine will make your post hard to read and may drop important details. In any case, avoid posting your full file if it is too big and try to isolate the commands that you think are causing the problem. If you then want to copy and paste lines from your file, enclose them between three backquote characters (```). Be sure to use backquote ` and not apostrophes '.
  2. You can format your post to make it easier to read and go through. Markdown is easy to grasp and even has a dedicated 10 min tutorial on the Commonmark website. Do not hesitate to go through it. You can also have a look at the BBCode tag system.

The forum offers a preview of your message before posting. Please use that to format your posts beforehand and ensure it looks correct. Also, you can also edit your post afterwards, if you notice an issue. Appearances matter, so if you post looks like you do not care, then you are much less likely to get a (good) response.

Talk with local people *first*

The practice and learning of science is better done in direct contact with people. An advisor, a mentor, a tutor, or a colleague which you can directly explain your problem to, is very likely to provide more meaningful help than people on the internet. You often do not know about the level of expertise of a remote person and how much care that person has spent reading your post. And the remote person does not know anything about you or your research. This is also valid for installation related problems, as your local system administrator is the person that will know the most about your system.

It is very tempting to come back and ask more questions, once you have found useful help, and you may be in need of advice on how to do your research project and not just how to master LAMMPS (or how to program it), but if the only connection to LAMMPS is the fact that you are using LAMMPS, then the question is likely off-topic.

Post in the correct category

The MatSci.org server hosts discussion forums for multiple materials science related topics and multiple software packages. To have your post show up in the LAMMPS related area where other LAMMPS users and enthusiasts can see and respond to it. Do not use the default.

To organize discussions within the LAMMPS category, there are sub-categories. Please always choose the most appropriate one:

  • LAMMPS Beginners: for people that are not very experienced with using LAMMPS. People will be more forgiving if you make mistakes, but don’t be offended when you get explanations for what you already know
  • LAMMPS Development: for discussions about programming LAMMPS, using the library interface or python module or possible bugs
  • LAMMPS Installation: for questions about compiling or installing LAMMPS
  • LAMMPS General Discussion: for all other topics. This assumes that you know the science, so responses may just point you to a source of information. Don’t be offended when not all details are explained

Questions related to pre-processing, post-processing or visualization of your data using software other than LAMMPS are very likely to fall outside of the LAMMPS forum scope. These would better be posted using the dedicated channels related to the software you are using. In some cases, they are just a different category within the MatSci.org server.

*Always* report your LAMMPS version and platform

The behavior of LAMMPS changes over time. New features are added, obsolete ones removed, syntax changed and more. Mentioning the exact version of LAMMPS being used (it is printed as the first line of output or at the top of lmp -h) can be crucial information for anybody trying to provide an answer. Please do not use terms like “the latest version” or “the stable version”. Those can be very different depending on how you obtain LAMMPS and they will change over time.

The LAMMPS version has the format of a date (e.g. 8 Feb 2023). This is what you should report.

Reporting the LAMMPS version helps significantly, because the developers may remember or can look up 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 you might be told to upgrade to the most current version to see if your problem goes away. You can preempt that by running tests on the latest version yourself. There are non-MPI brinary packages of LAMMPS posted on GitHub with the release notes for those versions.

Be concise and specific; do not make any assumptions about how easy it is to find a solution

The quality of any assistance available to you crucially depends on several things. For example:

  • how well you describe your problem
  • what solutions you have tried
  • how easy it is to reproduce your issue

Most users of the forum are not likely experts in your specific area of research. Thus avoid domain specific slang terms (specific acronyms and so on), explain all details relevant for a non-expert, and try to simplify your input to focus on the problem at hand. It is important for other readers to understand how what you expected differs from what you obtained.

A recurring issue is that people ask about one specific detail assuming that addressing this detail will resolve the situation. However, the solutions often require an understanding of the context and the solution may be that you need to follow a different approach.

The worst you could do is to attach your input and say “it doesn’t work”. Competent and helpful responses require context. This kind of post has none.

Please read *all* of a response *and* have the courtesy to respond to *all* questions

It can be frustrating to a person responding, when the person posting the original question follows up only to the first part of the response and seems to disregard the rest. Nobody likes to be ignored when they invest the effort to write a detailed response. The same is true for not answering questions that you are being asked. At the very least explain why you cannot answer a question, if there is a reason. Questions are often asked for a good reason and with the purpose of making you think about something and thus find the solution of your problem on your own or at least to better understand it. Experienced LAMMPS users often can anticipate the next questions a less experienced person would have after resolving an initial problem. This is often done to save time. Thus, even if it may not apply currently, please read everything and keep it in your mind, having to explain the same thing multiple times can be very annoying.

You can see it this way: while you get your problem resolved without having to pay for it with money, you can pay back by respecting the effort and satisfying the curiosity of the person responding.

Provide specific references and quotes

Same as when writing papers, it is extremely important to provide specific and accurate references to statements and sources of information. When information is posted on the web, provide an URL to the specific page or part of page. When referring to the LAMMPS manual, mention the title (not the page number) and for which version of LAMMPS. When your information is informal and based on something your overheard or were told in a conversation or lecture, say so.

When a simulation does not behave as expected, it means that either your expectations, or your input, or the commands used in the simulation are not correct. However, without context and specific information on how to reproduce the situation and how you justify your expectations, it is impossible to provide assistance.

When reporting errors, provide the entire error message (and not just say that there was an error). Most error messages in LAMMPS have a source file and line number associated with them, these can provide crucial information about the nature of the error and possibly the cause, specifically when you also report the exact version of LAMMPS.

Don’t use phrases like “we all know”, but rather repeat/quote what you are referring to. Don’t be afraid to be redundant.

What you should *not* expect from this forum

Since this forum is dedicated on the use of the LAMMPS software, keep in mind that the forum is in no way a replacement for:

  • Operating software manuals (Linux, Mac, or Windows)
  • Reading the LAMMPS manual
  • Programming lessons
  • Physics or chemistry classes
  • General advice on how to conduct research by your adviser
  • Literature research and web searches
  • Consult with the user support experts of your HPC system

Thus the following kinds of posts are not likely to get you the response you expect:

  • Please provide me with a potential file for elements …
  • My input produces an error. Can you check it out and tell me my mistake?
  • Is this the correct way of doing this kind of study?
  • Please provide me with an example input for my research on …

Keep in mind that there is only a small number of people that respond to questions and thus requests to provide you with specific example inputs or potential files are not likely to get a response.

A good way to learn what to expect (and what not, is to just read through existing topics for a while before posting your own topics. You should quickly see that some exchanges are brief and concise and others complex and belabored with the people responding asking for many more details. Since the forum allows to acknowledge good questions and good answers with a “like”, you should specifically check out messages with multiple likes.

Be sure to research your problem before posting

It is always better to show that you have already tried to solve your problem on your own before asking for help. Be sure to read the LAMMPS manual sections that correspond to the commands you used. Also, before asking what a given error/warning message means, please be sure to read the dedicated section from the manual. This section contains information related to common errors, how to report a bug and detailed descriptions of the error and warning messages.

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.

As there are many people using the LAMMPS software and since LAMMPS has been around for a long time, it is likely that someone already had the same issue before that you currently have and plan to ask about. You can research previous posts using the research function of the forum before posting. Some questions have been answered dozen of times and the forum already contains a lot of information. In addition to forum posts, there is the LAMMPS subcategory with the archives of the old LAMMPS users mailing-list that ran from 2005 to June 2022. These archives are also accessible through the search function.

In the case where you find a thread relating/responding to a problem similar to yours, please do not post in this thread. This is called ‘necroposting’ and is very bad forum practice. If you’re not able to find a solution to your issue, create a new dedicated thread and include a reference to the old post, if it is sufficiently relevant.

Visualize your simulation

It is always a good idea to have a look at what is happening in your simulations. If your results make no sense, be sure to check if something catastrophic is may be happening or if your starting configuration is not bogus to begin with. LAMMPS data and dump files can be visualized with several software packages. You can see a incomplete list on the LAMMPS website. You may need to change your input to output data more frequently and shorten runs.

If your simulation is not going according to what you expected, do not assume firsthand that the software is doing things wrong. It is very common that an unphysical simulation actually results from some bad combination of commands or some wrong starting setup.

Start small before building complexity

You should (even before you run into errors) build small, simple systems that give straightforward results that you fully understand, before adding in complexity. For example, you should simulate a polymer at equilibrium before trying to shear it, and you should simulate a liquid at uniform temperature before trying a thermal gradient. You should not use polarizability, many-body potentials, or ReaxFF, unless you can clearly justify the extra accuracy compared to nonpolarizable, pair potential, or non-reactive simulations respectively.

Small systems (in terms of volume and particle number) are also very valuable because they run faster, crash faster, and are faster to visualize. They therefore save you lots of time. Also, fluctuation magnitudes (and thus, notably, diffusivities) change in interesting ways against system size, and the easiest way to convince yourself that a simulation is “big enough” is to simulate something slightly larger and see that there is no change in your (intensive) observable of interest.

Your system just does what your force field, input settings, and equations of motion say

The foundational inputs to LAMMPS are your force field – that is, given a set of coordinates, what the forces between particles are – and your equations of motion – that is, are particles’ velocities and positions altered in any way beyond Newton’s laws. Many LAMMPS (indeed, MD) problems boil down to either inappropriate force fields or inappropriate equations of motion.

When a simulation does not behave the way you expect it. The solution is usually not to force it to behave the way you expect, but to try and understand why this happens and then correct the cause. This is similar to a doctor needing to cure the disease and not just make the symptoms go away. If you suppress the symptoms, you are still sick.

Force fields are tricky beasts and you should tell us clearly what force fields you are using, with a reference if possible. Note that a force field is the complete description of all interactions between all particle types in a system, and mixing different coefficients from different publications creates an all-new force field. So, for example, MD simulations of DMSO with water show different miscibilities depending on whether SPC/E or TIP3P parameters are used (https://pubs.acs.org/doi/abs/10.1021/jp0007336).

'fix nve' and similar are *integrators* not ensembles

The fixes fix nve, fix nvt and so on are integrators – that is, they update particles’ positions based on the calculated forces and velocities. While these integrators can include thermostats or barostats, these -stat components do not ensure that your simulation samples a particular thermodynamic ensemble, unless no additional forces are imposed or velocities modified, and you have a uniform bulk system with periodic boundaries.

To drive this point home, consider the following two script fragments:

fix 1 all setforce 0 0 0
fix 2 all nvt temp 300 300 100

The fix nvt integrator is used here, but clearly LAMMPS cannot sample the NVT ensemble using this script.

fix 1 all nve
fix 2 all langevin 300 300 100 6734534

This is clearly not an NVE ensemble since it uses the Langevin thermostat.

Make use of the forum's 'like' feature

By clicking on the heart symbol you can indicate that a question was well formed or a response well put and helpful. Adding likes to such messages is very useful since it allows the forum software to learn what it should rank higher within search results. If everybody follows this advice, everybody will benefit. Also, you can see from the number of likes how active and how much appreciated somebody is, which can help you to assess the credibility of somebody’s suggestions.

Please do not use 'chatbot' created text for posting

While large language model (LLM) based chatbots can be useful in certain circumstances, please do NOT use chatbot created content to formulate topics here (e.g. to get confirmation whether something an AI suggested is reasonable) or use them for posting answers.

The majority of the forum users responding to questions do not want to spend their time correcting an AI, but rather want you to make decisions of their own and then formulate questions based on your personal understanding. While that may feel harsh at times, it is done with the intention to improve your skills as a scientist.

Be *very* careful when asking a 'chatbot' to create an input deck for you

Large language model (LLM) based chatbots seem to know “everything” and some will also be able to provide you with LAMMPS input files. However, you must be extremely careful with those, and check every detail because chatbots do not understand physics. Rather they are trained on language and thus try to produce something that looks like the text you are asking for. However, experiments have shown that the resulting files often have syntax errors, used parameters and settings for different units in the same input and sometimes even use contents from the LAMMPS source code as input.

Thus, the LAMMPS developers strongly advise to build input yourself, possibly using the AI generated input as inspiration, and check at every step carefully all settings with the documentation. For basic simulation tasks, it is usually better to practice your skills by working through some of the available LAMMPS tutorials.

19 Likes
Glass-forming liquid
Lammps output verification
Doubt using read_data command multiple times in the same code
Temperature initialization problems: Langevin thermostat
No fixes with time integration, atoms won't move
Simulation getting stuck while running in cluster
Unable to replicate same result from same input file
ERROR: Non-numeric pressure - simulation unstable
Brownian/asphere with gayberne potential of ellipsoid
Setting up a step geometry in LAMMPS
Sgcmc cannot work
LAMMPS in Windows and Linux
Crack propagation in amorphous polyethylene
LAMMPS structure rotation
Lammps 2020-5-5 version restart
LAMMPS GPU Monte Carlo
Segementation fault ,addres not mapped
Machining of Al-zn part - diamond tool
Molecule command: 98 atom molecule not loading ERROR
A question about the variable reading
Hybrid pair coefficient error Incorrect args for pair coefficients (…/pair_lj_cut.cpp:471)
Why does LAMMPS randomly move a single coordinate along the x axis?
The thermal conductivity of SiC is too low when using LAMMPS with Alamode
Question about setting a gaussian distribution of charge in granular sphere
Solid liquid interface
How to dump the angle of particles?
How to convert the C atoms in this system into C2 molecules without changing the basic data file?
Problems that occur when using the fix ave/time command
Potential File issue
ERROR: All pair coeffs are not set
Lammps on Slurm different results for different tasks per node
Crystalline structure FCC percentage
Thermal conductivity calculation
Fluid Frozen When Restarting
Incorrect args for pair style meam coefficients (src/MEAM/pair_meam.cpp:204)
How can I load my output data from output file 4.pair.p into a lammps.tjr file?
Invalid force field file format
ERROR: Incorrect args for pair coefficients (../pair_eam.cpp:376)
Viscosity calculation using Green-kubo method
How to delete atoms outside of a defined region
Inserting molecules into a LAMMPS (output) data file with constraints?
How to control the uniform velocity of dpd particles placed in parallel plates which are moved with constant velocity
Shear Flow - Fix deform - SLLOD - PBC issue
Variable/atom does not update compute
Compute used in variable between runs is not current
Lammps task11: Segmentation fault
Problem in thermal conductivity calculations
Trying to make the simulation periodic and avoid mismatched atoms
machining with lammps
Particle diameter setting issue
Simulation stoped without any error
Error in necking and fracture behaviour during tension test
Lammps command for debonding fracture
Delete atoms command
Unable to find a suitable force field and code run error
Cannot get data file by combining Packmol with Moltemplate
Reading the dump file for minimizing the potential energy of each configuration
Issues with bop CdTe
Electrostatic and vanderwals force
How to creat Amorphous/Glassy Carbon Structure?
Fix GCMC for adsorption uptake
I would like to code epoxy simulation to calculate thermal conductivity , very much new with lammps what are some methods and how shall i code helps are very much needed
Using the BPM package, I seem to have noticed that the package doesn't handle the 2D mesh in a single-connected way, resulting in all six bonds of an atom breaking in the triangular lattice
Help! I want to use LAMMPS to create a simulation for EDM, but I'm encountering some problems
Problem with creating a molecule using the create_atoms command
Electrodes splitting while doing NPT simulation
Lammps Balance command
ERROR: Domain too large for neighbor bins
Freezing of SPC water
GPU accelerated LAMMPS running for a while then stop with Cuda driver error 4
ERROR on proc 0: Non-numeric atom coords - simulation unstable (src/OPENMP/domain_omp.cpp:58)
Stress-strain curves
AI trained LAMMPSbot soon to help LAMMPS developers to respond to forum questions
Bond atoms missing in systems with > 1200 atoms
How to keep a rigid body stationary
There is a request for a BPM package
Repeated steps for a double for loop
Drift in the system even with 'fix momentum' for an Fe-Cr system with one defect
Submitting scripts to HPC
How to plot the curve of applied force-deflection? "bending of a silicon cantilever nanobeam "
How to set the user defined variable to zero and broadcasted before every step
Question regarding the number of molecules
I want to know how one can change the sign of variable each time randomly
DPD Force
Visualizing von Mises stress during nanoindentation simulations
Developing an input script for modeling a nanowire composed of ferrous (iron) and carbon atoms
Atoms in the liquid and solid phases get mixed up
Pair_style table buck/coul/long
Run time error: arccos of invalid value in variable formula (../variable.cpp:3373)
I have created a simulation for 3 atoms but the output (OVITO) shows only 1,is there any possible explanation?
OPLS-AA naphthalene
Simulation got stuck after this message "Per MPI rank memory allocation (min/avg/max) = 68.21 | 68.21 | 68.21 Mbytes"
Calculating Force components on Atomic indenter
Adding an atom onto a surface while using fix wall/region
Make mpi problem
Here is a problem in building lammps with cmake in the last step "make install"
GPU for minimizing
How to generate Lammps input script for Coarse Grained Polymer?
ERROR: Cannot zero momentum of no atoms (../velocity.cpp:744)
Output a fix print at specific timesteps defined from a file
How to unfix NPT ensemble?
I tried to change the names of the columns with the "dump_modify dump -ID colname ID string" command. It was successfully executed in the Windows version of "LAMMPS"( "LAMMPS-64bit-Latest.exe"), but failed to execute in LINUX version of "LAMMPS"
Moltemplate cannot create Data Atoms file
Using two force field files
Lammps "if statement"
Need help for choosing potential
Changing atom types
Please help me
Add force to only one ion in an ion group
Building LAMMPS with GPU single precision support on v100 nodes
Modeling the movement of salt ions in aqueous solution under the influence of electric fields
Negative value for pairwise interaction between like charges
Restraining force in z direction
How to write data in binary file with python
Lammps exiting without error and without results
Segmentation fault during simulation
Dynamic group
Lost atom error
Running a loop for a specific work
Fix gcmc does not absorb gas
WARNING: Fix qeq some charges not bound within the domain
Limit of number of images
MSD curve of Ni-Al
Pair_style ilp/graphene/hbn
Generating a spherical shell with an entry hole
Error (UUID) when compiling fitSNAP+LAMMPS
Atoms of the plates has crossed the boundary
Discrepancy in particle coordinates using rigid/small style in a linear molecule (trimer) model
MEAM, zbl=1 -blend the MEAM with the ZBL potential for small atom separations
Too many neighbors , check the configuration
How does lammps convert unscaled coordinates into scaled coordinates while writing dump files
A representative ESA oligomer model (e.g., C₁₉H₂₂O₅ or C₅₇H₆₂O₁₅) is commonly used for DFT-based parameterization because it better captures polymer connectivity and local chemical environment than small monomeric model compounds
ERROR: Non-numeric pressure - simulation unstable
Bond atoms 16825 16826 missing
unstable and lost atoms in
Shearing microgels
Si irradiation - Simulation runs but no Implantation and Vacancy profile on output
Inquiry Regarding LAMMPS Performance Optimization and Update
LAMMPS Simulation Help: Troubleshooting High Thermal Conductivity and Other Issues
Lammps gpu acceleration
I have been trying to add deposit in a reaxff forcefield and it is working well except the part where when the molecule interacts with the substrate slab it disappears the i get this error. Any idea on why it is happening
Lost Atoms error with no motion?
Error debugging
Running vesicle simulation using lammps
Interatomic potential for K2O-Na2O-CaO-SiO2 glasses
Buckingham potential about W-O
MEAM Potential
Holes are produced when minimizing
Wobbly potential energy scan
Lammps delete_atoms
Adding single-layer graphene using reaxff force field error:Incorrect args for pair coefficients
Argon Temperature Exceeds The Heating Substrate Temperature
Dynamic Addition of Atoms in LAMMPS Beam Model Causes Overlap and Excessive Force
Msd
Unreasonable shape of MSD curve
Error using REAXFF with lj/cut/tip4p/long in pair style hybrid
Questions about the REAXFF force field file
Ti coating on diamond In-plane thermal conductivity
ERROR : compute chunk/atom molecule for non-molecular system