What is Computational Chemistry?
This list focuses on free software that is useful to chemistry students and teachers.
Chemistry Software
Structure drawing
Small molecule visualization
TINKER - Software Tools for Molecular Design
Crystallographic Database Free Software: Mercury
Free Alternative to Gaussview: Avogadro
Macromolecule visualization
Electronic structure
GaussSum: Software for processing output; especially useful for density of states plots from Gaussian calculations. See the GaussSum installation for mac below in the Macports section and see
for the tar file. This page also has the all-in-one installer for Windows.
Molecular dynamics
Solid State Structures
Atomic Simulation Environment or ASE
See instructions below for install ASE via Macports and pip.
Data Visualization
- The free, scriptable Gnuplot software is capable of creating presentation-grade quality output, as can be seen at the blog Gnuplot Tricks or, more concisely, at the web page Impossible gnuplot graphs. See the gnu plot commands in the Macports list below.
- A popular alternative is xmgrace. See the xmgr/grace commands in the Macports list below.
- The Dislin package by the German Max-Planck-Gesellschaft is a graphical library for scientific data presentation that can be called from a variety of programming environments, including perl scripts, and is free for non-commercial use.
Miscellaneous
Text Editors
Terminal
A nice Emacs guide for beginners
Vim - the most popular Vi clone, typically found in all Linux systems.
Nano: Easy to use alternative to Emacs and VI
Graphical
Textpad - good shareware editor for Windows.
Notepad++ - greatsource code editor for Windows
TextWrangler - greatsource code editor for Mac
Programming
An overview of programming with an emphasis on academic computing. Includes easy-start guides for FORTRAN, C/C++, bash shell, and Perl in a linux environment, as well as links to LATEX, php, HTML, awk resources and more
Gnu Debug debugger
Prof. Langsam Computer Science Courses, Brooklyn College
Codeblocks: Easy-to-use Internal Development Environment for C, C++, and Fortran 90
Operating systems
An overview with an emphasis on academic computing; includes lots of intros and FAQs as well as a reference card.
The beginners area of linuxgeek.net
A one page linux manual (pdf download)
Other utilities
Latex the Wikibook.
Short introduction to LaTeX from CTAN.
A collection of LaTeX tutorials.
TeX for the Impatient contents pdf.
The recommended way to install TeX on the Mac is to go through
MacTex.
Unix Software Packages for Mac
Suggested Downloads
These have been found on macports, but are probably also in the other packages.
You may also need to download xquartz or x11.
These instructions for setting up Macports, then Python through Macports are recommended.
- tree
creates a tree out of the ls command
- openmpi
special compiler
- xpdf
open pdf from the terminal
- dos2unix
convert between old mac, pc, and linux file types.
- gcc47
gfortran, gcc, g++, and similar compilers
- grace
graphing software to use from terminal
- xmgr
older version of grace if it the newerdoes not work
If it prints a lot of uninteresting complaints, use
xmgr 2> /dev/null
to suppress them.
- gnuplot
alternative graphing software to use from terminal
If gnuplot from macports keeps upgrading from version 4 to 5 without you wanting it, you can undo it this way with the full name of whatever gnuplot version you are using instead of the one below:
sudo port activate gnuplot @4.6.5_2+aquaterm+luaterm+pangocairo+wxwidgets+x11
- xclock
analog clock
- openbabel
converts between chemical file types
- pymol
software for viewing molecules, especially biomolecules
- py27-openbabel
python chemistry related software
- py27-scientific
python scientific related software
- fdupes
checks for duplicate files in your directory system
- py34-numpy
- py34-matplotlib +tkinter
These commands will let you use the python3.4 command to to launch GaussSum 3, mentioned above in Electronic Structure.
- ImageMagick
terminal commands for manipulating photos
- rmtrash
alternative to rm that moves files to Mac's trash
- poppler
gives you the pdfunite command to combine pdf documents, as described at this link.
- xorg-server demeter
software for viewing EXAFS spectra. This may require the use of the following Macport, which should be reinstalled (courtesy, Mikhail Askerka):
- xorg-libXt +flat_namespace
- py27-pip
- py34-pip
These commands will set up pip on your computer without needing to do it outside of Macports as suggested here. Afterwords, you should run the command:
sudo port select --set pip pip27 or sudo port select --set pip pip34 to get it to work. Then for some applications (courtesy, Mikhail Askerka) you may also need to add python modules as shown below:
pip install --upgrade ase
pip install --upgrade numpy scipy matplotlib
To get these python commands to work, adding these export statements to your .bash_profile would help:
export PYTHONPATH=/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:$PYTHONPATH
export PATH=/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin:$PATH
- py27-pygtk
This Macport will run you run some aspects of ASE which allow for the visualization of solid structures.
Suggested Aliases and Other Additions to your Command Line (comments in bold)
Note: Put these in your ~/.bash_profile file and then use the source command on that to make it active.
alias gasum='python3.4 /Applications/GaussSum-3.0.1/GaussSum.py'
This will run GaussSum for you if you installed python via Macports as described above.
You can also install the previous version of GaussSum and run it by
alias gasum2='python2.7 /Applications/GaussSum-2.2.6.1/GaussSum.py'
alias avo='open -a /Applications/[NameOfApplication].app'
Note: replace "[NameOfApplication]" with the name of the .app file, such as Avogadro, to be able to use this command to open programs from the terminal
alias bc='bc -l'
Note: enables bc to start with full Math available e.g. 1/2 will be 0.5 not 0
alias [firstletterofcommand]old='history | grep command | tail
Note: replace "[firstletterofcommand]" to make a short shortcut command to find this first command in your history
alias gibbs='grep "Sum of electronic and thermal Free Energies" '
alias scf='grep "SCF Done" '
Note: replace "finds the free energy (top) or electronic energy (bottom) in a Gaussian output file that is the 1st argument after this command
alias graph='for f in *gpt ; do echo $f ; gnuplot < $f ; done ; open *eps'
Note: lets you graph all the Gnuplot files in your folder and open them.
alias ll='ls -lrth'
Note: Our preferred form of the ls command
alias sftp[Server]='sftp [username]@[Server]'
alias to[Server]='ssh [username]@[Server]'
Note: Let's you do the sftp (top) and ssh (bottom) command fast if you replace [username] and [Server]' appropriately
alias siestaE='find . -name \*.out -exec egrep -H '\''siesta: Total'\'' {} \;'
Note: Let's you find the final energy in all output files from SIESTA in the current folder and its child folders
alias tst='grep "Frequencies --" '
Note: Let's you find the frequencies in your Gaussian output file (1st argument)
alias vmd='/Applications/VMD/VMD\ 1.9.1.app/Contents/vmd/vmd_MACOSXX86'
Note: Let's you open VMD from the terminal if you installed it with the above path
function tab_title {
echo -n -e "\033]0;${PWD##*/}\007"
}
PROMPT_COMMAND="tab_title ; $PROMPT_COMMAND"
Note: Let's you open new tabs that have the name of the current folder (not full path) in the tab title
PS1=‘hostname`’:$PWD=>'
Note: Has the prompt that precedes your typing in the terminal give the full path to your current folder
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
Note: Required for MacPorts to work properly
Computational Chemistry Courses and Tutorials
Prof. Batista's Lecture Notes and Solutions to Problems, 2006 Summer School on Computational Materials Science (MCC-UIUC), Yale University.
Prof. Batista's classes and tutorials, Yale University.
Prof. Preskill's CS/Phys 229, Caltech.
Course on Computational Chemistry
Computational Chemistry Course, Minnesota. Contains problem sets and exams, useful for independent newbies.
Computational Chemistry, Joel Bowman
Computational Quantum Mechanics of Molecular and Extended Systems, MIT Fall 2004
Computational chemistry course at Cornell
Oviedo Quantum Chemistry Group software
Burkard Schmidt
Dave Young's topics, including a first-timer's guide to Gaussian and other useful monologues
PY 502, Computational Physics (Fall 2005) Anders Sandvik, Department of Physics, Boston University.
The CCCBDB, contains links to Experimental and computational thermochemical data for a selected set of 684 gas-phase atoms and molecules, and has some nice resources like a glossary and a description of the thermochemical quantities and methods.
Computational Chemistry Wiki Contains computational results for selected molecules.
Tutorial for using Gaussian with Avogadro.
Recommended Books
C++ Language
Langsam, Yedidyah. Workbook for C++. 3rd Edition. Pearson Learning Solutions, 2009. ISBN: 0558347533, 9780558347536.
Jones, Jacqueline A., Keith Harrow. Problem Solving with C++. 2nd Edition. Pearson Custom Publishing, 2009. ISBN: 0558206514, 978-0558206512.
Liberty, Jesse. Sam's Teach Yourself C++ in 21 Days. 3rd Edition. Sams Publishing, 1999. ISBN: 0672315645, 9780672315640.
Fortran Language
Nyhoff, Larry, Sanford Leestma. FORTRAN 90 for Engineers and Scientists. 1st Edition. Pearson, 1996. ISBN: 0135197295, 9780135197295.
LaTeX Language
Kopka, Helmut, Patrick W. Daly. Guide to LaTeX. 4th Edition. Addison-Wesley Professional, 2003. 0321173856, 9780321173850.