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).
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:
If someone sends me a document containing
EndNote notation, it doesn't work in Linux.
You can't use SciFinder Scholar in Linux.
There are limited solutions to these problems:
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.
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.