Chemistry on Linux

GNU/Linux is well-suited (and popular) for performing calculations in computational chemistry. With the rapid development of user-freindly desktop Linux distributions, the IT infrastructure and support required to do chemistry on a "real computer" has become simple enough to be approachable by a novice computer hobbyist.

I don't have any professional computer science or IT training. I have, however, been using Linux as my primary operating system for the last eight years. I'm interested in the potential to use open source software and older computer hardware (which would otherwise be useless thanks to Windows Vista) to build computational resources for chemistry education. An example might be a cluster that students could submit computational jobs to remotely through their web browser, where graphics and results could be documented by the students using an integrated multimedia content authoring system like Drupal, WordPress or MediaWiki (which are amazingly simple to setup and use). 

Contents

1. It's trendy!
2. Installation is easy.
3. List of scientific software I use
4. And some office software
5. I have had a few minor problems.
   GNU/Linux Penguin Picture

Linux keeps up with the latest trends

This is a funny ad by Novell (Suse Linux), spoofing the popular-to-spoof Apple ads:


I thought that was clever.

Easy Installation

Most desktop Linux distributions these days will install on any PC desktop or laptop. My favorite distro is Ubuntu. Everything else equal, they have the best community and help available.  If there is anything you would like to do with your Ubuntu box, you can be certain that someone has not only written a howto on the subject, but also may be willing to walk you through any problems you encounter.  Installing all of the software listed below is automatic.  For example, if you want GNU Octave, just type 

  $ sudo aptitude install octave

and the computer will download and install it for you. Installing http, ssh and ftp server daemons is just that easy, with automatic configuration.  You can control which servers are running through a gui. Ubuntu Linux uses the Debian software repositories, which provide the largest selection of open-source scientific software anywhere.  

Science and Math Software

chemtool --  Draws 2d chemical structures and exports nice graphics.

CLC Bio Free Workbench -- This is not open-source software. I've just included it here because I use it all the time in Linux.  It  is a very user-friendly tool for doing all kinds of bioinformatics tasks quickly, with pretty graphics. It is a Java program, so it will run on any computer (as long as you have a lot of memory!). You can't apt-get it; it's distributed by clcbio.com.

G3Data Graph Analyzer -- This program is a dream-come-true! Have you ever had data in a graph which you wish you had in table or spreadsheet format, so you could actually use the data? Import the graphic into G3Data, and you can convert it to tabulated data! It is very cool.

ghemical -- Use the mouse to draw 3d molecules, including peptide and nucleotide sequences, and run MM, MD, semi-empirical, and ab-initiocalculations and optimizations, while watching the output progress live on the screen, with 3D graphics. Computations are (by default) performed via an interface with MOPAC7 and MPQC, both of which are also open-source software packages. Ghemical certainly lacks the control and versatility of major research software, but it provides a great interface for educational purposes. In some ways, you might compare it to Chem3D or PC-Model. One problem: in quantum mechanics, you can choose all kinds of different basis sets, but there is no indication whatsoever what level of theory you are using. HF? B3LYP? Who knows. It's disconcerting that it is not really noted anywhere. [Note: I just found this information online. It uses HF, closed-shell level of theory.]  Also, I haven't tried this, but the Univesity of Iowa has developed some extensions to link ghemical with GAMESS, which I suspect makes ghemical infinitely more useful.

GNU Octave -- Similar to MatLab. Really easy to learn, and writing programs is fast. Or, if you want to buy the real MatLab, you can always run that on Linux too. I like Octave better, though. Graphs are made using gnuplot, so they are pretty. And, if your hacker skillz are moderate, you can write and compile add-on fuctions in C, so your programs will run wicked fast.

gnuplot -- Not only creates beautiful graphs, but also can perform non-linear least-squares data-fitting, considering errorbars, arbitrary equations, many parameters, and will yield best-fit values including asymptotic standard errors for the parameters.

grace -- The best GUI for graphing scientific data I have ever used. It is intuitive, full-featured, and exports beautiful postscript graphics. There is an option for non-linear least-squares data fitting to arbitrary equations, which you can define.

xdrawchem  --  Another 2d drawing program. Graphical output is not as nice as chemtool, but there are a lot of extra SAR calculations such as predicting KOW values using the XlogP algorithm, and predicting IR, 13C-NMR and 1H-NMR spectra (in a very simple sense).

yacas -- I've used this program for solving integrals/derivatives. I'm sure it does a lot of other things too. You could perhaps compare it to Mathematica (commercial software, also available for Linux).

Everyday Office and Publishing Software

OpenOffice.org(OOo) --  I seldom ever miss Microsoft Office. I have used OpenOffice.org for writing journal papers, grant proposals, my thesis, spreadsheets, and presentations, with very few problems, mostly related to interpolability with other people's documents containing EndNote references. If you have experience in Solaris, this has forked from StarOffice (and is developing much more quickly).

The GNU Image Manipulation Program (GIMP) -- Great for editing and converting any image file.  Don't overlook the usefulness of importing PDF files. You can make a PDF figure in OOo Impress, which has infinitely-scalable resolution, and convert it to any image format for whatever purpose/resolution you currently require, from web thumbnails to publication-quality artwork. Compare GIMP to Adobe Photoshop.

Nvu -- WYSIWYG HTML publisher which can use CSS. This webpage was made in Nvu (pronounced "N-view").

Problems

There are two things for which I still have to use Windows:

  1. If someone sends me a document containing EndNote notation, it doesn't work in Linux.
  2. You can't use SciFinder Scholar in Linux.
There are limited solutions to these problems:
  1. There's currently no way for a user to deal with the EndNote problem.  OpenOffice.org, however, does have a team actively trying to address this problem. The only way to use EndNote in Linux, currently, is to install old versions of Microsoft Office and EndNote using Cross-Over Office
  2. SciFinder runs perfectly using wine (a windows emulator for linux). The easiest way to get SciFinder working is to buy the Cross-Over Office version of wine (from Codeweavers), but the vanilla wine seems to run SciFinder just fine, with very few problems.