Macs in Chemistry

Insanely great science


MOE 2012 Review

MOE 2012.10 was recently released and I’ve now found time to have a look at it. After installation a couple of things are immediately apparent, a MOE icon is available and MOE can now be launched from the Mac OS X Desktop and Dock. However the dock icon does not update to show that MOE is running normally in Mac OS X when an application is running, the Dock displays an illuminated dash beneath the application's icon. I found you could drop some files onto the dock icon and have them open, (PDB, mdb, moe) but not sdf, mol or SMILES. You can also double-click on a .moe or .mdb file and have it open in MOE. If you right-click on a ,sdf file and choose “Open with” and navigate to MOE the file can be imported into a MOE database but I could not see an option to simply open it into a MOE window. If you use multiple monitors then you will be delighted to see that new windows seem to open in the window in which the mouse resides. Support for copy/paste of MOE images on the Mac is now also available.

Look and Feel Updates

The MOE interface has been updated and now has a mainly white text on a charcoal background, whilst these things are often just a matter of taste I must admit I find the new colour scheme easier to read. A new settings menu (highlighted in red below) in the MOE menu bar collects together configuration and customisation tools, including the option to return to the original lighter MOE_blanc scheme. Also in the top menu bar is DBV which lists open databases, very useful when a database gets hidden behind the main MOE window.


The “Open” dialog box has been updated, with easy access to structures from PSILO or the RCSB or the non-redundant PDB database distributed with MOE, there is also a navigational history (forward and back buttons), a favourite directories menu (star), and the currently listed directory can be reloaded by pressing the refresh icon (rightmost in the path textfield).


I also like the ability to navigate the directory hierarchy by clicking on the relevant part of the folder path as shown below. I’m already finding this an invaluable way to improve my workflow.


The “Set Working Folder” has now gone, instead right-click within a folder and a drop down menu appears as shown below, with a variety of options, one of which is “Set Working Folder”.


Keyboard Shortcuts

MOE now supports a number of keyboard short-cuts however there are a couple of quirks if you are using a Mac, particularly working on a laptop.

Del Deletes the currently selected object(s). This NOT the backspace key, on the extended keyboard the “Delete” key is highlighted below, if you want to achieve this on a laptop keyboard you need to press “function” (bottom left key) and backspace.


Ctrl-r brings all MOE windows to the front.
-z or Ctrl-z is Undo
-Shift-z or Ctrl-Shift-z is Redo
-y or Ctrl-y is Redo

Ctrl-c is copy
Ctrl-v is Paste which means you can select molecules or substructures in the MOE window and copy/paste to create a copy.

Mouse Controls

The new settings icon provides access to an updated mouse configuration panel, which allows the user a huge selection of configuration options.


If you use a trackpad instead of a mouse you may want to alter some of the configurations, I have changed the options such that when the Alt key is pressed the Left Button Drag is set to rotate, since emulating the middle button on a trackpad is often problematic. This also works with an external blue tooth trackpad.

System Manager

One of the big changes is the System Manager, this can now be attached directly to the MOE Window as shown below (it can also be detached into a separate window or viewed as a simple popup), this is convenient for visualising and manipulating multiple complexes or molecules. The current setting (attached/detached) is saved when MOE is closed and becomes the default for subsequent sessions. Clicking on the boxes next to each object gives the options for changing the atom or bond rendering, creating and controlling surface rendering and ribbon rendering style.


Forcefield Update

The bonded interaction evaluation has been restructured for speed, parallelism and more sophisticated default parameter selection. MOE now offers atom-type-free forcefield parameters based on 2D Extended Hueckel Theory (EHT) . A single EHT calculation is performed on the molecular system and standard molecular mechanics parameters are derived from the EHT charges and bond orders. The bond stretch, angle bend, out-of-plane and torsion parameters, and force constants are compatible with standard forcefields like Amber, CHARMM and MMFF94. The EHT parameters are available in MOE through the parameter default system. A new forcefield has been added which combines Amber12 and Extended Hueckel Theory (EHT) bonded parameters. Amber12EHT is suitable for small molecules, macromolecules or both.

The energy minimise dialog has been tided up and provides easy access to simple molecular mechanics forcefield-based minimizations together with the ability to create the input files for QM calculations using MOPAC, ADF, GAMESS, or Gaussian.


Command Line tools

The sdfilter program removes records from an input collection of SD files (based upon programmable filters) and writes the results to output SD files; sdfilter is an SVL program intended to be run in MOE/batch. The most interesting addition is the -expr filter this allows complex expressions such as 'weight<500 tpsa[100,140]’

ChrisMacbookPro:~ swain$ sdfilter -help
 sdfilter [options...] [inputfile...] [-o outfile] [-f filterfile]

    inputfile                  name of input file (- for stdin)
    outfile                    name of output file (- for stdout, . for null)
    filterfile                 name of filter file (- for stdout, . for null)

General Options:
    -help                      prints helpful information
    -quiet                     disable information printing
    -records    range          process only given records
    -elements   elist          legal element list (comma separated)
    -stripdata                 strip all data fields
    -verbose                   enable information printing
    -annotate                  add new field to filter file with reasoning

Boolean Filters:
    -druglike                  Lipinski's drug-like test
 -leadlike                  Oprea's lead-like test
    -nonreactive               retain non-reactive groups
 -smallring                 has only rings up to size 8
    -V2000                     strict V2000 records only (default)

Numeric Data Field Filter:
    -numfield fieldname range  value of numeric data field

Molecular Descriptor Filter:
    -expr filter               descriptor filter string
                           (such as 'weight<500 tpsa[100,140]')
SVL Function Filter:
    -svl name range            value of named global SVL function

    range = n                  equal to n
    range = n-                 less than or equal to n
    range = n+                 greater than or equal to n
 range = n,m                n through m (inclusive)

files and formats (apply to all subsequent files):
    filename         input file in most recent format
    -o outfile       output file: . for none; - for stdout (default)
    -f outfile       filter file: . for none (default); - for stdout
    -sdf             SD file (default)
    -smi             SMILES (ASCII) whitespace separated, no quotes
    -smi:[wcmt][q]   SMILES (ASCII) with specified format
         w=space, c=comma, m=semicolon, t=tab, q=quote

The $MOE/bin/sdfrag command line tool has been enhanced to support 3D fragmentation. When the -3D option is used, the coordinates of molecule fragmented (presumed to be conformations) will be retained.

2D Sketcher Integration

Third-party sketchers can now be launched directly from the MOE Window and seamlessly integrated into SVL applications. The invoked sketcher can be used to edit a molecule in the MOE Window or to create a new molecule. The sketch will be automatically embedded to generate the 3D structure in MOE.

However when I first tried this I got an error that the Marvin editor could not be found, I added these lines to my BASH profile

export SVL_JVM=/usr/bin/java
export CLASSPATH=/Applications/ChemAxon/MarvinBeans/lib/MarvinBeans.jar

I found that if I started up MOE from a Terminal window then I could invoke Marvin as the 2D sketcher, however if I started up MOE using the dock icon Marvin was not initiated. After a lot of discussions with CCG it seems that the MOE app launcher is not started (like every "real" MacOSX application) from a terminal, so all shell initialisation scripts will not propagate any environment variable. In theory it should be possible to edit launched.conf to solve this but I was not able to get it to work.

Instead I had a quick look inside the MOE application bundle, to do so right-click on the MOE icon and select “Show Package Contents”


Look for a file called and open it with a text editor, I used BBEdit.


I then added to lines

export SVL_JVM=/usr/bin/java
export CLASSPATH=/Applications/ChemAxon/MarvinBeans/lib/MarvinBeans.jar

and saved the file, the full script is shown below.

#  run moe and show error messages in applescript dialog
#   13-mar-2012 (mk) created

# Start in home directory
cd "$HOME"

export SVL_JVM=/usr/bin/java
export CLASSPATH=/Applications/ChemAxon/MarvinBeans/lib/MarvinBeans.jar

# Initialize pasteboard (workaround for X11 pbproxy bug)

if [ -f /usr/bin/pbcopy ]; then
 /usr/bin/pbcopy < /dev/null

# Run script, get the last 20 lines of error messages
_S=`$@ 2>&1 | tail -20`

# If there are no error messages quit here.
if [ -z "$_S" ]; then

# Assemble message and Button text (to stretch window as far as possible).
_S="MOE ouput:\n\n...\n$_S"
_B=".                                               \
OK                                                    ."

# Show messages with applescript dialog.
osascript \
 -e 'tell application "System Events"' \
  -e "display dialog \"$_S\" with title \"MOE\" with icon 0 buttons {\"$_B\"}" \
  -e 'end tell' \
 > /dev/null

This time when I started MOE and clicked on the sketcher button, Marvin started up, you can draw a structure and transfer in to MOE.


Of course this will need to be reimplemented with any MOE upgrades.

Anyone who would like to use ChemBioDraw as the 2D sketcher might like to have a look at this Applescript I wrote.

Reaction Based Library Enumeration

Whilst MOE already contains compound enumeration tools, this release adds another option reaction-based combinatorial enumeration of virtual libraries. In the previous release MOE allowed the user to define a scaffold, connection points and potential substituents. In this release the user can define a transformation (reaction), this can then be applied to a database of reagents to enumerate a library. The resulting library can then be filtered based on calculated properties, SMARTS pattern matches, QSAR, Fingerprint or Pharmacophore models. One potential advantage of this approach is that hopefully the resulting library will consist of readily accessible compounds. A database combi_reagent.mdb contains over 3000 well curated reagents, to work with 111 potential reactions. Both databases can be added to by the user.


The buttons below the scheme indicate how many appropriate reagents are available, you can of course create your own reagents database.

Protein Design Applications

The interface to the protein design tools has been reworked to aid workflow. This contains five applications integrated into a single interface.

There are several new tools, protein surfaces can be analysed for hydrophobicity modulation using the new Protein Patch Analyzer application. The surface is composed of hydrophobic, negative and positive patch regions. These patches are ranked by the propensity for enhancing fluorescence intensity upon aggregation. Comparing the results to a wild type can be instructive for rational design work such as minimizing protein:protein aggregation, controlling viscosity and highlighting regions where oxidation/de-amidation and glycolysis may occur. Over 25 2D and 3D physicochemical protein properties, including isoelectric point, percent helicity, zeta potential, mobility, residue surface area, exposure, etc., are now readily available using the Protein Properties application. Measurements can be made under variable conditions (pH, salt concentration, temperature, viscosity, etc.). Titration is performed for evaluating certain pH-dependent properties.


The results may be useful as physically relevant descriptors for QPSR modeling and may help rationalize protein solubility, solution viscosity, stability and aggregation. A new Alignment Similarity application exists for displaying similarity information as a table, with either heat map or gray scale coloring, or a dendrogram, for a currently-loaded alignment. The displayed information can be exported to an image file. There is also a Post-Translational Modification site identification utility.


This is an excellent update, it builds on the workflow improvements introduced in the last update and also adds a number of very useful new features.

There is a collection of software reviews here.

Updated 17 December 2012