Posts tagged ‘lammps’

LAMMPS has no API document

According to this thread, LAMMPS has no API document available for developers, which is a pity! Similar discuss can be found for Gromacs here, which tells there is no API document neither. Both of them are powerful simulation codes and can be used as libraries, but apparently this is not the encouraged usage. Although in the official user manuals, extending methods are discussed more or less, but those are far from enough to fully get the ideas of the design and architecture of the sophisticated packages. People (developers) often have to turn to the mailing lists and hope to get peer help from other users, which can be misleading without the help from the original software designers. On the other hand, if complete API documents are available for the end users, I believe the community and the software itself will thrive rapidly and become much stronger.

Lammps is booming

Since October of 2009, many new features have been added to lammps, a powerful simulation software developed at Sandia national laboratories. I can’t list all of them, but you can find a patch list at here. Data manipulation and output for diagnostic or analysis purposes has been improved by introducing some new computes, such as compute */local, compute */molecule, compute reduce, fix ave/histo.  New feature for visualizer interaction (fix imd) has been implemented. This promotes lammps to be an dispensable simulation engine in the tool chain of simulation work. New algorithms were also integrated, such as PRD and hessian free energy minimizer. The development of lammps keeps very active. It’s absolutely the first choice for my work.

Python and pizza.py


Pizza.py is a post-processing tool package for lammps – a MD package. I downloaded it and unpacked in a local directory. Each time I have to start it with a command like “python -f abs_path/pizza.py” where the abs_path is the absolute path to pizza.py source directory. However this directory is very long on my computer and it’s not a directory recognized by python. I found a convenient way to make the call easier. Just add the abs_path to a system environment variable named “PYTHONPATH” (if you have no such env variable, create it), then to use pizza.py we can start python as usual by typing “python” and then type in “import pizza” (no .py suffix!), then we have all the module defined in pizza at the interactive command line no matter what is your current working directory. PYTHONPATH will be add to the search path for modules if it’s not empty. I also add the abs_path to the PATH system environment variable, which makes I could type “pizza.py -f ***.py” directly in any working directory. Continue reading ‘Python and pizza.py’ »

Keywords highlight and auto-completion for lammps input file in Notepad++

Lammps is a powerful multi-purpose  simulation software. To run a simulation with lammps, one needs to prepare an input script file in which commands are issued to control the work flow. There are MANY commands  and lots of keywords supported by lammps. I found it’s good if there is a text editor capable of highlighting the keywords and keyword auto-completion. Notepad++ is one of the best free text editor. To add support of highlighting and auto-completion is pretty easy in Notepad++ cause it has a user-friendly interface (a dialog) to allow user to define new keywords, symbols, comments, operators for a new language. I just made the support  for lammps commands. Continue reading ‘Keywords highlight and auto-completion for lammps input file in Notepad++’ »