Free Web-Based Proton NMR Prediction and Assignment with NMRDB 2

Posted by Rich Apodaca Tue, 20 May 2008 19:14:00 GMT

NMR Prediction software can be a useful tool in spectral assignment and unknown identification. Until recently, the only available software consisted of rather expensive desktop-based packages. But a new Web service called nmrdb.org looks ready to change that.

About nmrdb.org

nmrdb.org is actually three services in one: NMR Resurrector; NMR Assigner; and NMR Predictor.

NMR Resurector is a remarkable tool that re-creates a proton NMR plot from tabulated peak frequencies. Output is available in PDF, and PNG image format.

NMR Assigner enables the interactive correlation of the atoms of a molecule with the peaks in a spectrum. Output is available in ACS format ready for inclusion in manuscripts, or as a text table.

NMR Predictor generates a complete proton NMR spectrum from an arbitrary chemical structure provided as a molfile or drawn with a structure editor. An interactive display (similar in concept to one discussed here recently) highlights both the atom giving rise to a signal and the signal itself in response to hovering with the mouse. Output is available in both PDF and PNG image format.

With each of nmrdb's services, a precompiled set of data can be used as a way to become familiar with what the service can do.

nmrdb.org a Web Service

Although useful as a standalone tool, NMR Resurector could be even more powerful when used as a Web service in combination with other Web applications. As a hint of the kinds of things that might be possible, nmrdb is capable of creating a predicted spectrum through a special URL into which a SMILES string is embedded. For example, click on the structure of cholesterol below (or use this link):

ChemSpider has added this capability to its compound summary pages under the link "NMR".

Conclusions

nmrdb.org is a very well thought-out service that could be of immediate benefit to chemists and developers alike. It also demonstrates that creating databases is but one way to chemically enable the Web.

The Art and Science of Chemical Structure Diagrams: ChemWriter as Chemically-Aware Vector Graphics System 2

Posted by Rich Apodaca Thu, 14 Feb 2008 18:13:00 GMT

Of the many problems to be solved when building software to view and manipulate 2D chemical structures, one of the trickiest is getting all features to scale proportionally. This problem is widespread because it can seldom be predicted at which resolution a chemical structure will be viewed.

This article describes some ways in which this problem was addressed in the Web-based chemical structure editor ChemWriter.

Chemically-Aware Vector Graphics

ChemWriter is at its a core chemically-aware vector graphics system. It was designed with the belief that chemical structures should remain readable regardless of size.

The ability to scale 2D chemical structures to any resolution and retain readability is essential when creating cheminformatics systems because magnification factors are so varied. For example, in many cases, structures are user-resizable. In others, the size of the structure is statically set by the developer. In others, the bond length needs to remain fixed and the overall image size needs to adapt accordingly. Even when a chemical structure display context may seem static, future design constraints may force a change.

A robust chemical structure graphics system needs to gracefully enable the resizing of its output.

A Demonstration

Your system needs Java to display this image.

The live applet shown above lets you scale a chemical structure using the ">" and "<" keys, or the View->Zoom In and View->Zoom Out menu items.

Note: if you haven't installed and activated Java in your browser, you'll need to do so before viewing the above demonstration.

Scaling Chemical Structure Features

Properly scaling 2D chemical structure diagrams may not seem that difficult, but consider some of the properties involved:

  • Atom Label Size. Hardcoding font sizes is simply not an option.

  • Atom Label Padding. The empty space around a heteroatom bond label prevents bonds from making direct contact with the atoms they connect.

  • Line Thickness. Lines have variable absolute thickness that ensure they're visible at lower magnification and not too thin at higher magnification.

  • Multiple Bond Offset Distance. Double and triple bonds contain lines that are offset from the center bond line.

  • Stereo Bond Maximum Width Wedge and hash bonds have a maximum thickness.

To retain readability, each of these properties must proportionally scale when a chemical structure is reduced or enlarged.

The ChemWriter System

What does it mean to resize a chemical structure?

The dimensions of a structure are determined by its underlying atom coordinates. Resizing a chemical structure scales these coordinates. It's convenient to think of this process as a proportional change in the absolute length of the bonds between atoms; relative bond lengths, and relative atom positions remain fixed.

Given that only bond lengths change during scaling, it's useful to adopt bond length as a yardstick. Although not all bonds in a molecule will have the same length, for the most part these values will be tightly clustered around a median.

For this reason, a molecule's median bond length is the standard unit of measurement in ChemWriter.

As an example, setting atom label height can be done by calling ChemWriter's setAtomLabelHeight method (or using the atomLabelHeight parameter). The double-precision value represents a fraction of the median bond length. To make atom labels appear half as high as the median bond length, use a value of 0.5. To make them appear smaller by half, use a value of 0.25.

Your system needs Java to display this image.Your system needs Java to display this image.

The demonstration above shows the effect of each of these settings.

Conclusions

ChemWriter uses a vector graphics system that can create consistent, readable output for a wide range of image sizes. This flexibility is essential in creating cheminformatics systems that work well across a broad range of platforms and output formats.

Image Credit: cattypumkinhead

The Chemically-Enabled User Interface: An Introduction to Leafcutter

Posted by Rich Apodaca Wed, 06 Feb 2008 14:15:00 GMT

ChemWriter is a 2D chemical structure editor for the Web. Because it's written in Java and uses both the Swing and Java2D APIs, ChemWriter could be plugged into a variety of chemically-enabled user interfaces deployed within a browser, on the desktop, or in other contexts. The availability of this kind of developer tool would open the door to a large new area of interactive cheminformatics applications. This article, the first in a series, introduces Leafcutter, a new product designed to make this possible.

About the Software

Leafcutter is a framework consisting of reusable Swing components and supporting libraries for building chemically-enabled user interfaces. Based on ChemWriter, Leafcutter will contain most of the functionality of the 2D structure editor, but packaged as a set of highly customizable components. Whereas ChemWriter consists of configurable but finished applets for editing and rendering, Leafcutter will consist of components that can be used to build entirely new applets, desktop applications and other Rich Clients.

An alpha-stage developer preview is now available by request from Metamolecular. The package contains API documentation and source code for a sample Swing application (shown below).

The design constraints for tools used to build custom chemically-enabled user interfaces can vary significantly, but fine-grained control over appearance and behavior are top considerations. Depending on the specific use, controlling deployment footprint can also be critical. Leafcutter's design and implementation will address these needs uniquely.

What's New Here?

Although Leafcutter can be used to build traditional Cheminformatics applications, its main purpose will be to enable new kinds of applications that speak the language of 2D chemical structures natively.

Many of today's cheminformatics applications accept 2D chemical structures as input and render the same as output. But they're not generally designed to combine 2D chemical structures with their associated information in an interactive way.

For example, consider "Retro," a hypothetical application that enables Curt, a synthetic chemist, to plan his next synthetic route. Curt would draw his target molecule into a ChemWriter-like editor, as is typical for most reaction databases. But unlike other applications, Retro would interactively give Curt information about possible synthetic routes.

Clicking on a bond displays a side panel summarizing the number of published synthetic procedures that might be applicable. Clicking on the "Accept" button makes the bond disconnection and records the procedure hitset for later retrieval. Clicking on a "Suggest" button, highlights bonds representing viable disconnections, some of which might not have occurred to Curt otherwise.

Most synthetic organic chemistry databases are designed to be maps; Retro is designed to be a GPS device. A recent talk at the San Diego section of the ACS by Jun Xu offered some useful insight into the difference between these two approaches.

In addition, Curt communicates with Retro in his native language, the language of 2D chemical structures, by drawing, pointing and listening. It's the same way he communicates with his colleagues about chemistry.

The same concept could be applied to areas as diverse NMR and IR spectrum assignment and query, mass spectrometry, analyte detection, molecular mechanics calculations, and teaching reaction mechanisms.

Conclusions

If you plan to develop custom user interfaces that draw or manipulate 2D chemical structures, regardless of their design, Leafcutter will provide a powerful new tool for doing so.

Image Credit: Gavatron