JIMP - The Interactive Molecule Program
[ Main | Features | Screenshots
| Documentation | Known Issues | Contact
| Register | Download ]
Click here to download the sample files...
Jimp 2 Citation
|
All publications and/or presentations that result from the use of Jimp 2 should
contain the following references: Hall, M. B.; Fenske, R. F. Inorg. Chem. 1972, 11, 768-779.
Manson, J.; Webster, C. E.; Pérez, L. M.; Hall, M. B. http://www.chem.tamu.edu/jimp2/index.html
|
Installation
|
========================
General
========================
If one would like to render images using POV-Ray, it is necessary
to have POV-Ray installed on one's computer. If it is not installed, the
scene file will still be generated if one wants to render on another
computer. A scene file is always created when the render button is
pressed, regardless of whether yes is chosen in the popup.
========================
Windows
========================
Unzip the archive to some place on one's hard drive that one will remember.
Unlike most Windows programs, it is necessary to add a few environment
variables to get JIMP to work. If the environment variables are not set,
there is a good chance that JIMP will crash, or at least not work correctly.
The way that they are set is different on different versions of Windows,
but in Windows 2000 it is possible to set them through
(Control Panel->System->Advanced->Environment Variables).
Regardless of how one sets them, they will need to look similar to one of these
examples, depending upon which version of JIMP one has.
Let us not get confused here. There are different setup instructions
for different versions of JIMP.
For versions prior to JIMP.v117, all four environment variables are required.
MOPLOT_DIR=C:\jimp\moplot
FENHALL_DIR=C:\jimp\fenhall
JIMP_DIR=C:\jimp\jimp
PATH=%PATH%;%MOPLOT_DIR%\bin;%FENHALL_DIR%\bin;%JIMP_DIR%\bin
For example, after opening the dialog box in the Control Panel,
one sets the environment variable for JIMP_DIR by:
- clicking "New..."
- typing "JIMP_DIR" in the text box for "Variable Name"
- typing "C:\jimp\jimp" in the text box for "Variable Value"
- clicking "Ok"
Repeat this process for all four of the environment variables.
Note: Add environment variables under the "User variables for...".
(Do not add the variables under "System variables".)
For version JIMP.v117, only these three environment variables are
required and the MOPLOT_DIR and FENHALL_DIR environment variables
are set the same as the JIMP_DIR environment variable.
MOPLOT_DIR=C:\jimp
FENHALL_DIR=C:\jimp
JIMP_DIR=C:\jimp
For example, after opening the dialog box in the Control Panel,
one sets the environment variable for JIMP_DIR by:
- clicking "New..."
- typing "JIMP_DIR" in the text box for "Variable Name"
- typing "C:\jimp" in the text box for "Variable Value"
- clicking "Ok"
Repeat this process for all three of the environment variables.
These examples assume that the archive was unzipped in the
directory "\jimp" on the C drive. However, one could unzip
this archive on the desktop of the administrator account, which
for Windows 2000 would make the path "C:\Documents and Settings\Administrator\Desktop\jimp".
Or one could create a directory in the "Program Files"
directory (open explorer, go to the "Program Files" directory,
add a new directory: File->New->Folder, change the name to jimp,
cut and paste the zip file into this new directory, and unzip archive).
This directory location would make the path "C:\Program Files\jimp".
Note: JIMP.v117 also requires version 1.0.3705 of Microsoft .NET Framework.
This prerequisite might require one to
upgrade windows
and/or install
.NET Framework 1.0 Service Pack 2.
One can also
determine which version of .Net one has installed.
If one has POV-Ray, modify the povray.bat file so that the part in
quotation marks is the full path to "pvengine.exe".
========================
Linux
========================
Unzip the archive.
% tar -xzvf jimp*linux*.gz
(where the % represents your prompt)
In one's startup script such as .bashrc or .bash_profile, one needs to add an
environment variables so that JIMP can find the programs that it
needs. Using bash syntax this may look like the following.
export JIMP_DIR=~/jimp/jimp
For the settings to take effect one needs to source the file.
% . .bashrc
As one may have noticed, the instructions on how to install JIMP assume
that the user does not have any root privileges. To make the program available
to all users on a system, we would suggest unzipping the archive the
/usr/local/ directory, then creating symbolic links to the
executables in /usr/local/bin/.
|
Loading molecular structures
|
Possibly the most important part of a molecular visualization and
experimentation program is the ability to load files. In JIMP, opening
a file is done in the same way as one would expect of any other windows
program, namely through "File->Open".
Simple as this is, there are a few concerns specific to JIMP that must
be taken into consideration. As JIMP is currently set up, it is assumed that
one will be working with one molecule at a time, and when a molecule is opened,
it is automatically added as a layer in the currently selected window.
If one intends for the molecule to be in its own window, first, one must
create a new window. New windows are created with and empty layer by
default, so it is a good idea to remove that layer. Now one may open the
intended file into its own window.
Currently, there are four file formats supported by JIMP. For each one, I will
describe briefly their features and limitations as imposed by JIMP.
|
JML
This format is specific to JIMP. The intent of the format is to store all of
the data available to JIMP in a manor that is compact.
|
MSI
MSI files are used by the company Accelrys, which was formerly named MSI, or
Molecular Simulations Incorporated. The reason for its support is that the
program Cerius2 is used extensively in our lab.
Currently, JIMP can read the connectivity information and basic atom properties
from the format. The amount of information that can be stored in one of these
files is much larger than that, but oh well. It may be better supported in the
future.
|
XYZ
XYZ files are simply the coordinates of the atoms in XYZ format (in units of
angstroms), i.e. four columns, the first column giving the element followed
by three columns for the X, Y, and Z coordinates (in free format).
Currently, JIMP does not provide any connectivity when an XYZ file is opened,
but JIMP can calculate it based on (scaled) van der Waals radii, namely through
"Calculate->Clean->Calc Bonding"
|
PDB
PDB files are widely used for storing protein structures. The format gets
its name from The Protein Data Bank, which is an organization that provides
a huge collection of protein structures free of charge. We suggest that users check
out the PDB molecule of the month feature.
JIMP is designed primarily to work with small molecules, but it also has some basic
functionality for visualizing proteins. Properties such as heterogens, alternate
atom positions, connectivity, and backbones of multiple subunits are supported
(Check under "Edit->Protein Subunit Properties").
|
JWS
Okay, so I lied, there are five formats... the fifth is JWS.
However, JWS (JIMP Work Space) files are not exactly new, they are
an extension to JML files. JWS files save the information about the current workspace,
i.e., the current information and settings for the open molecules and locations of
surface files for all of the layers in a workspace (or window).
A word of caution: currently JWS files save the absolute path for file locations,
not the relative path; i.e., if one moves files that were saved into a JWS file,
the JWS file format will not open correctly.
|
Inspecting one's molecule
|
Often, a great deal of one's time will be spent looking at molecules. When
inspecting, it is often helpful to be able to manipulate one's view. In JIMP
this is done with the mouse in conjunction with holding command keys on the
keyboard. For ease of typing the Right Mouse Button is shortened to RMB. The
left one is shortened to LMB.
For simply rotating the view, one drags the mouse while holding the
RMB. In order to rotate the view around the direction
of one's view, do the same thing, but make sure that when one first presses
the RMB that the mouse is in a corner of the window that contains the molecule
that one wishes to rotate.
To zoom in or out, hold Ctrl+LMB while moving the mouse forward or backward.
It is a bit to remember, but holding Alt+Shift+LMB while moving the mouse will
translate the view up, down, left, and right.
Here is a summary of keypad/mouse combinations:
- LMB+drag --> select
- Ctrl^A --> select all
- Alt^A --> changes to atom selection mode
- Alt^B --> changes to bond selection mode
- Shift+LMB+click --> toggle selection
- Ctrl+LMB+drag --> zoom view
- RMB+drag --> rotate view for all
- Ctrl+RMB+drag --> rotate selected
- Shift+RMB+drag --> rotate view for layer
- Alt+Shift+LMB+drag --> translate view for all
- Ctrl+Shift+RMB+drag --> translate selected
- Alt+Shift+RMB+drag --> translate view for layer
- Ctrl^R --> reset view
- Ctrl^D --> shortcut for "Sketch"
- Ctrl^Z --> undo
- Ctrl^A --> select all
- Ctrl^C --> copy selection
- Ctrl^X --> cut selection
- Ctrl^V --> paste selection
- backspace --> delete selection
- Ctrl^M --> opens "Move atom/view/layer menu"
- Ctrl^N --> opens new window
- Ctrl^W --> close window (does not save, nor does it prompt one to save)
- Ctrl^S --> saves window (to current format)
- Alt+Ctrl^S --> saves current workspace (to .jws format)
Notes:
- Saving a file or workspace does not save the background color, which
defaults to black.
- In sketch mode, the default atom type is carbon. To end drawing, right
click once. To increase the bond order, redraw over bond and click on the first
atom. Hold down Ctrl while clicking to increment the bond order by one-half.
While the bond will not continue to display after "four bonds", the bond order
does not cycle back to "zero", it will continue to increase. The bond order
can also be adjusted under "Edit-->Bond Properties".
- Comments on the "Smart Selector":
- It is accessed through "Calculate->Select"
- It has features of "Add", "Remove", "And", and "Toggle".
- "Add" adds atoms to the current selection list.
- "Remove" removes atoms from the current selection list.
- "And" combines Actions of the selection lists.
- "Toggle" toggles the selection from the current selection.
- To select a range of element types, use "to" between element types, e.g.,
"H to C" selects all atoms of the periodic table between hydrogen and carbon.
ALL is a valid entry to select all atoms of periodic table. Individual elements
may be entered and separated by commas, e.g., "H, O" selects all hydrogen and
oxygen.
- To select a range of atom ID's, use "to" between the numbers, e.g.,
"1 to 5" selects atoms with ID's between 1 and 5.
- To select atoms within a radius of the center of currently selected atoms,
enter a distance in angstroms.
- To select atoms connected to the currently selected atoms,
click "Connected".
- To select all atoms of a bonded fragment (not a Fenske-Hall fragment),
select an atom (or a set of atoms) and click "Fragment".
|
Giving atoms and bonds volume
|
To make all atoms or bonds solid instead of lines, as is the default,
press Ctrl+A to select all, then use "Edit->Atom Properties" or
"Edit->Bond Properties". Toggle the property box that says "Solid" to be true,
then click OK.
|
Generating pictures for publication!
|
The dialog to create screen captured images (of any resolution) is located
under "Calculate->Grab Screen"
- First, give atoms and bonds volume (see above)
- Add atom labels, bond distance labels, etc. as desired using the "Atom
Properties" and "Bond Properties" dialogs
- Orient the molecule in the desired locale (this screen capture is WYSIWYG, What You See Is What You Get).
- Add any desired fields, such as orbitals (including solid, lined, and dotted isosurfaces).
- Open "Calculate->Grab Screen"
- Set the desired resolution (in pixel width and height)
- Type the desired file name in "Title:" and set the desired file location by clicking "Dir"
- Click "Grab"
Notes:
Conveniently insert the generated file ("your file name here.png") into your favorite word
processing package or presentation maker. For example, in Microsoft Word, click "Insert"
form the main toolbar, and "Insert->Picture->From File" and select the previously
generated file "your file name here.png".
The thickness of the line produced from "Field Properties->Line/Point Size" is the
actual pixel width produced in the screen capture. If one desires thicker lines or
larger dots, increase this value.
The dialog to create scene files (#.pov) and ray-traced images (#.png) with POV-Ray
[Persistence-of-Vision Ray-tracer] (of any resolution) is located
under "Calculate->Povray". One must have POV-Ray installed to create the PNG file, but
the scene file is created regardless.
- First, give atoms and bonds volume (see above)
- Add atom labels, bond distance labels, etc. as desired using the "Atom
Properties" and "Bond Properties" dialogs
- Orient the molecule in the desired orientation, however this rendering is not
WYSIWYG.
- Add any desired fields, such as orbitals. (Sorry, solid fields only.)
- Open "Calculate->Povray"
- Set the desired resolution (in pixel width and height)
- Type the desired file name in "Title:" and set the desired file location by clicking "Dir"
- Click "Render"
- Answer "Yes" or "No" to complete the full resolution rendering. The scene file is
generated regardless of the answer.
HINT: Remember, the rendered view is not WYSIWYG; therefore one may need to adjust the
translation of the view (with Alt-Shift-RMB). Use the thumbnail feature to determine if
view translation is required.
|
Running Fenske-Hall Self Consistent Field (SCF) Calculations
|
The dialog to perform a Fenske-Hall SCF is located under "Calculate->Fenske-Hall".
Shortlist of commands to run the SCF calculations:
- Build or open a molecule
- Run SCF on the molecule (or cluster)
- View and analyze results "by hand" and with the JIMP interface to MOPLOT2
- Possibly perform a fragment analysis (see section below)
HINT: Always translate your molecule to the origin (select all and use "Calculate->Move->Move to"
with Position at 0 0 0) and rotate your molecule so that the highest order rotational axis
(from the point group symmetry of the molecule) is aligned with the z-axis in cartesian space
(The z-axis is perpendicular to the screen after one has reset the view with Ctrl^R). These
actions will make the interpretation of the molecular orbitals easier.
Running an SCF on a molecule (or cluster):
- Open the Fenske-Hall dialog box "Calculate->Fenske-Hall"
- Click "Base Dir" and change to the top level directory in which
the directory named in "Title" will be created. Under "Basic" at "Title:",
enter the name of the directory in which all of the results
(Fenske-Hall and MOPLOT2) will be stored.
- Under "Additional", enter the charge and number of unpaired electrons for
the entire molecule (or cluster). (The format for the charge must be
the sign followed by an integer, i.e., it must be -2 for a dianion.)
- Click the "Run" button at the top of the dialog box.
- Details of the progression of the calculation are printed to the terminal in which
JIMP was started.
- Further details of the calculation are written to the output file (output.txt)
in the "Title" directory, which also contains the Fenske-Hall input file (input.fhi)
and the converged eigenvectors file (vector.vec). The "orbital-contrib" file contains
a short summary of the calculation results (that were also printed to the JIMP console).
HINT: The output from Fenske-Hall will be put into a directory under
the base directory (either previously set or defaulted to JIMP_DIR). The
name of this directory will be the one from the set title. In order to
change these options from their default settings, 1) change the title
(from "untitled", the default directory name) by selecting the text and
typing to replace it and 2) click the "Base dir" button and change the base
directory to the desired one.
Once these options have been set, simply clicking the "Run" button at the
top of the dialog box will perform an SCF with the entered (and default) settings.
HINTS for SCF CONVERGENCE:
One could increase the number of cycles, but this will not necessarily
lead to convergence. More specifically, several parameters affect
convergence:
- The number of SCF cycles (default = 15)
- Damping between SCF cycles (default = 0.65)
- Extrapolation limit, the population deviation set in the "extrapolation
limit" must be achieved before extrapolation turns on (default = 0.2)
- Convergence criteria for the population deviation (default = 0.001)
Several key factors to ensure SCF convergence:
- Make sure that the geometry is reasonable (crystal structure or
optimized by some external means).
- Make sure that the charge and number of unpaired electrons is
appropriate for the molecule.
- Watch the population deviation: the extrapolation is performed
after every three SCF cycles. If the oscillation is periodic every
three cycles, turn off extrapolation (achieved by setting extrapolation
limit = 0.0).
- Damping decreases the oscillation between SCF cycles. Increase
the value only after convergence has started.
So again, watch the population deviation. If the population deviation starts to go down and
then oscillates, increase damping and decrease the extrapolation limit.
These steps may lead to SCF convergence:
- Increase number of cycles (default = 15)
- Increase damping between cycles (default = 0.65)
- Decrease the extrapolation limit (default = 0.2)
- Decrease convergence criteria (set it to no less than 0.01)
- If the molecule has a degeneracy issue, one can "unpair" electrons
|
Showing molecular orbitals through the JIMP interface to MOPLOT2
|
The dialog to visualize molecular orbitals is located under "Calculate->Moplot".
Running a Self Consistent Field calculation with Fenske-Hall is a
prerequisite to showing any Fenske-Hall molecular orbitals, because the
orbitals are determined from Fenske-Hall output.
The output from Fenske-Hall will be put into a directory under
the base directory that was set. The name of this directory will
be the title that was selected. In order to plot any orbitals one must
choose this directory by clicking on "Set Fenske-Hall output directory".
If everything was done correctly, there should now be a number of
entries in the leftmost list. Before an orbital can be displayed, it must
be calculated, which is done by double-clicking the orbital number in the
leftmost list that one wishes to see. A new entry should now show in the
rightmost list that shows which orbitals have been calculated thus far.
To actually show an orbital, simply double-click on its number in the
rightmost list. Since it can take a while to calculate orbitals for
large molecules, and a lot of clicking, the calculated orbitals are stored
in the Fenske-Hall calculation directory for future use.
HINT: If one would like to view several molecular orbitals at once, for example
several fragment MO's concurently, just add a layer, change to that layer, and open
the field from the "Calculate->Moplot" menu or load the field from the "Field Properties"
dialog box with "Load field".
|
Converting Gaussian produced cube files to JIMP format to view surfaces (molecular orbitals, etc.)
|
The dialog to convert Gaussian cube files to JIMP format is located under
"Calculate->Gaussian cube converter".
The converter creates a JML file named gaussian_molecule.jml (the native JIMP
molecule format), which may be opened to view the molecule for which the orbital
was created. (Note: Currently, the converter is limited to one field per cube
file, i.e., one orbital per cube file. This limitation holds even for unrestricted
orbitals; one must create alpha and beta orbitals separately!).
To open the orbital file:
- First, open the molecule from the gaussian_molecule.jml file
- Open the "Field Properties" dialog box (from the main
toolbar or "Edit->Field Properties")
- Click "Load field" and select the orbital file (gaussian_orbital_#.fld) to open
|
Making orbitals "prettier"
|
Any particular molecular orbital is essentially a 4D field, meaning that
for every point in 3D, there is a value. There are a couple of ways that JIMP
is capable of showing fields, and the default way that it uses is the worst
looking, but fastest running.
All of the options for showing fields are changeable through "Edit->Field Properties".
One can choose to show the field as points beyond the cutoffs, as a planar slice
through the field that has changing colors based on the strength of the field in
that plane, or as an isosurface.
An isosurface is the 3D surface at a given value in a 4D function. It is similar
in concept to the 2D lines drawn on a topographical map, which are used to show
the height of terrain as a function of the longitude and latitude.
|
Running Fenske-Hall Fragment Analysis
|
Shortlist of commands to run the fragment analysis:
- Assign the fragments
- Run SCF on fragments
- Run Fragment Analysis
- Assign the fragments
- Select atoms for the current "fragment"
- Open the "Atom Properties" dialog box (from the main
toolbar or "Edit->Atom Properties") and enter the fragment
number in the "Fragment:" box. Click "Apply" or "OK" (see notes below).
- Repeat for each fragment.
- Run SCF on fragments
- Open the Fenske-Hall dialog box "Calculate->Fenske-Hall"
- Under "Additional", enter the charge and number of unpaired
electrons for a particular fragment (see notes below).
- Under "Fragment" at "Fragment number:", enter the number of the same
particular fragment to calculate.
- Click "Run Fragment" (JIMP automatically creates fragment directories in the Title directory).
- Repeat for each fragment.
- Run Fragment Analysis
- Change the charge and number of unpaired electrons to appropriate
values for the whole molecule.
- Click "Run Fragment Analysis". (Do not use the "Run" button at the
top of the dialog box--this will run the SCF for the whole molecule
without regard to the assigned fragment numbers.)
Notes:
- Reassigning fragment numbers:
- Select the atoms to be reassigned
- Open the "Atom Properties" dialog box and either
- Enter "-1" as the fragment number in the "Fragment:" box,
then Click "Apply" or "OK". This resets the fragment number
for the selected atoms.
- Enter a new number for the fragment number in the "Fragment:"
box, then Click "Apply" or "OK". This reassigns the fragment number
for the selected atoms.
- The color of the atom in the fragment should change to a new uniform
color for each fragment.
- Take care when running Fenske-Hall fragment analysis with one fragment as an atom.
- In order to have an atom as a fragment in a Fenske-Hall fragment
analysis simply leave the atom out of the fragment list. The program
will automatically generate an atomic guess for the atom in the
fragment input file.
- Also, while one can run highly charged fragments (e.g., TiCl4 with Ti4+
as 4+ and four Cl- as 4-), it is best to run fragments as
close to neutral as possible, i.e., (1+, 1-, or 0). Of course, the
sum of the charges of the fragments should equal the total charge
of the molecule (or cluster).
HINT: If one would like to view several fragment MO's simultaneously, just add a layer,
change to that layer, and open the field from the "Calculate->Moplot" menu or use "Load field"
from the "Field Properties" dialog box.
|
|