Jmol frequently asked questions

About the Jmol project

How do you write Jmol?

Capital J, lower case mol

Please do not write it any other way ... to avoid confusion with other projects ... keep reading ...

Is there another JMol?

Yes, there is a project called JMol ... but not Jmol ... note the difference in spelling.

Will York wrote the JMol viewer at the Complex Carbohydrate Research Center, University of Georgia, USA. The home page was at http://www.ccrc.uga.edu/~will/jmol/jmol.html (it is no longer there).

How do I reference Jmol in published papers?

Both on the web and in published papers you should reference Jmol in this way:
Jmol: an open-source Java viewer for chemical structures in 3D. http://www.jmol.org/
Should that not be suitable, you may pick some of the publications dealing with Jmol in the wiki.

What is the difference between Jmol and JSmol?

JSmol is the HTML5 modality of Jmol, able to be embedded into web pages. All the functionality of Jmol (as a standalone application) is also present in JSmol, since both are generated from the same source code. JSmol does not require Java and needs no installation on the users' machines.

Using Jmol

How can I learn to use Jmol?

See the home page for some hints.

Can Jmol be displayed in my language?

Yes, likely! Jmol is a fully internationalised program (meaning that it can adapt its interface to be displayed in one of several languages) and it has been localised (meaning that there are several translations available and built into the program).

Check the Wiki for the list of currently supported languages.

If your language is in the list, Jmol should automatically open using it. If it doesn't, either the language you want is not your operating system language (which is the one Jmol will choose), or something is failing (but this is uncommon). You can force Jmol into using any of the available languages in several ways:

If your language is not in the list, you may volunteer to collaborate as translator. Please, read instructions in this Wiki page and, if you need help, contact the developers team.

Hardware requirements

What are the hardware requirements?

There is no absolute minimum. Performance is a function of molecule size, window size, and image complexity.

Is OpenGL or 3D hardware required to run JSmol?

No special hardware is required to run JSmol inside web pages.

The graphics engine is a z-buffer implemented in Java, and designed for rendering molecules. (In fact, designed just for Jmol.) It has also been converted to JavaScript to be used in JSmol.

Application system requirements

What platforms does the Jmol application run on?

The Jmol application should run on any system that supports Java 1.4. Previous versions of Java are not supported.

Performance

Performance is great! Why is it so fast?

It does not use any Java graphics calls. The entire image is built offscreen and sent to the screen with one java.awt.Graphics.drawImage operation.

Will a 3D graphics card improve performance?

A high-performance graphics card will certainly help. The underlying system spends a lot of time blitting 32-bit RGB bitmaps to the screen. But no 3D capabilities of the card will be used.

Why does it get so much slower when I make the window bigger?

Twice as many pixels means twice as much work ... and if your applet is twice as wide and twice as high then you have 4 times as many pixels so you get 1/4 the speed.

Graphics and rendering

I see jaggies. Why aren't the graphics anti-aliased?

No java graphics calls are used in the construction of the image. The entire scene is constructed in memory and transferred to the screen with one drawImage operation.
Hey ... aren't you the person who was complaining about speed?

Recent versions of Jmol allow to use antialiasing, both for the display and for exported images. Check out Jmol Scripting Documentation.

But I need some higher-quality images ...

Export from the application to POV-Ray, or
increase the size of the application window, or
learn how to open Jmol in even larger sizes and export images without display, using the command line.

Does Jmol support isosurfaces?

Yes. Jmol has functionality for rendering isosurfaces. Check out Jmol Scripting Documentation.

What shapes does Jmol support for protein secondary structure?

Jmol current supports backbone, trace, strands, ribbons, meshribbons, cartoons, and rockets.

JSmol deployment

For JSmol, what must be installed on web client machines?

No special Jmol-specific software needs to be installed on the client machines.

Client machines do not need anything other than a web browser with JavaScript enabled. When a client visits a web page containing some JSmol objects, these get automatically downloaded from the web server and executed as part of the JavaScript in the page.

JSmol JavaScript Library

It is strongly recommended that you use the JSmol JavaScript Library to allocate your JSmol objects within your web pages.

Can JSmol be permanently installed locally, like a plug-in?

No.

The needed JavaScript files get cached in the local browser cache. Subsequent uses of JSmol will get them from the cache (after confirming that the date/time/size have not changed on the web server). At least, that's the theory ... and it works correctly on the browsers I have seen :-)

What MIME types must be installed on the server?

None. The web server needs no special configuration.