Macs in Chemistry

Insanely Great Science

Swift 4.1 in a Jupyter Notebook


I'm a great fan of Jupyter Notebooks but I only ever use python.

The Jupyter Notebook is an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text

A recent post by Ray Yamamoto Hilton caught my eye who recently put together a little experiment to demonstrate using Swift 4.1 from within Jupyter Notebooks.

You can download a demo notebook here.



Amber 18 and AmberTools 18released


Amber is a suite of biomolecular simulation programs. It began in the late 1970's, and is maintained by an active develpment community

Amber 18 ajor new features include:

  • Free energy calculations on GPUs
  • GPU support for 12-6-4 ion potentials
  • Domain decomposition for CPU-parallelism
  • Nudged elastic band calculations for pmemd (CPU and partial GPU implementation)
  • Constant redox potential calculations, to supplement constant pH simulations
  • Support and significant performance improvements for the latest Maxwell, Pascal and Volta GPUs from NVIDIA.
  • New pmemd.gem code for advanced force fields, including AMOEB

AmberTools 18 new features include

  • CUDA-enabled pbsa solver; extensions for membrane modeling with PB *lambda-dynamics method for constant pH simulations *packmol_memgen tool for building lipids and bilayers *New ("middle") integration algorithms in sander *Build tools based on CMake *Continued updates and extensions to cpptraj: *ability to obtain energies from snapshots of PME simulations *Pairlist and other speedups *improved scripting abilities

Instructions for installing Amber under Mac OSX are here

You will need to install gfortran, whilst you can download the binary it might be worth considering using Homebrew as described here


NWChem updated


Just catching up.

NWChem 6.8 is now available on Github

NWChem provides many methods for computing the properties of molecular and periodic systems using standard quantum mechanical descriptions of the electronic wavefunction or density. Its classical molecular dynamics capabilities provide for the simulation of macromolecules and solutions, including the computation of free energies using a variety of force fields. These approaches may be combined to perform mixed quantum-mechanics and molecular-mechanics simulations.

Instructions for compiling NWChem on various platforms including Mac OSX


STK: A Python Toolkit for Supramolecular Assembly


I bookmarked this paper a while back but have only just had time to read it through, STK: A Python Toolkit for Supramolecular Assembly. STK is a tool for the automated assembly, molecular optimization and property calculation of supramolecular materials. It has a simple Python API and integration with third party computational codes.

The source code of the program can be found at and the detailed documentation is here.

Additional linking functional groups can be defined as SMARTS and STK can be extended by adding additional optimisation force-fields.



Top 12 unix commands for data scientists.


A really useful post on KDnuggets.

With the beautiful intuitive interface it is sometimes easy to forget that Mac OS X has unix underpinnings and that the Terminal gives access to whole set of invaluable tools.

This post is a short overview of a dozen Unix-like operating system command line tools which can be useful for data science tasks. The list does not include any general file management commands (pwd, ls, mkdir, rm, ...) or remote session management tools (rsh, ssh, ...), but is instead made up of utilities which would be useful from a data science perspective, generally those related to varying degrees of data inspection and processing. They are all included within a typical Unix-like operating system as well.

If you regularly have to deal with very large data files some of these commands will be invaluable, for example:

head outputs the first n lines of a file (10, by default) to standard output. The number of lines displayed can be set with the -n option.

head -n 5 my file.txt

Read more here.