About GEMS

GEMS stands for GLYCAM Extensible Modeling Script.  It uses SWIG to allow the user to write simple and clean scripts in Python that call on the powerful capabilities of the GMML C++ library.  It will eventually function similarly to AMBER‘s LEaP.

What this means is that you get to use a C++ molecular modeling library, but you don’t have to write and compile a new C++ program every time you want to use it.  Python gives us a pre-written language, complete with for loops, if statements and the like.  GMML gives us a fast, flexible library of functions.  Swig lets us directly access GMML from Python.  GEMS, therefore, is merely a collection of pre-made example scripts.  You can use the ones we wrote or write your own.  You can even extend GMML if you need.

Eventually, you will be able to:

  • Read in structures from PDB, AMBER prmtop and other sources.
  • Manipulate the molecular structures.
  • Assign force field information to the structures.
  • Write out new files (PDB, AMBER parm7 & rst7, etc.).

Currently, you can:

  • Read in these file types:
    • PDB; AMBER: parm7 & rst7, prep, lib, parm
  • Modify and write out:
    • PDB (and possibly others)

Getting Started

You will probably want to start with the download and installation instructions.  Then, you might want to learn how to write a first GEMS script of your own.  Advanced users might be interested in the GEMS GitHub site.

Earlier versions

For those who are interested, the old site for GEMS is also available.  The new version is considerably changed from the old.  The historical development of the current code can be interrogated using git (see Download and Install).