Jmol/Cavities pockets and tunnels: Difference between revisions
Eric Martz (talk | contribs) No edit summary |
Eric Martz (talk | contribs) No edit summary |
||
Line 148: | Line 148: | ||
:2. Color the isosurface(s). Coloring by depth from the surface was [[#Coloring By Depth|described above]]. For a plain color, first you must know the ID of the isosurface if there are more than one. If no ID was assigned when you created it, the ID is "isosurface1". | :2. Color the isosurface(s). Coloring by depth from the surface was [[#Coloring By Depth|described above]]. For a plain color, first you must know the ID of the isosurface if there are more than one. If no ID was assigned when you created it, the ID is "isosurface1". | ||
::<tt>isosurface ~poc # Select the isosurface to color. Unnecessary if there is only one. | ::<tt>isosurface ~poc # Select the isosurface to color. Unnecessary if there is only one. | ||
:: | ::color isosurface pink # color name | ||
:: | ::isosurface ~bur # Select a different isosurface to color. | ||
:: | ::color isosurface [x4060FF] # [https://www.rapidtables.com/web/color/RGB_Color.html RGB color]</tt> | ||
:2. Write each isosurface as a jvxl (Jmol Voxel) file. | :2. Write each isosurface as a jvxl (Jmol Voxel) file. |
Revision as of 22:09, 1 January 2021
CAUTION: This page is under construction and is not ready for use. When this page is adequately completed, this notice will be removed. Eric Martz 01:02, 1 January 2021 (UTC)
Jmol can find and display cavities, pockets, and tunnels as isosurfaces. This page explains how to do that, and how to show the results in Proteopedia. An alternative method for finding and displaying cavities is PACUPP. Several other methods are summarized at Cavity programs. TerminologyFor definitions of the terms cavity, pocket, tunnel, channel and void please see Cavity programs. How To Show Cavities In ProteopediaBelow are shown Jmol commands to identify and display cavities as isosurfaces, with their results. Using these commands, and displaying the results in Proeopedia, require several extra steps outside of Proteopedia's usual Scene Authoring Tools (SAT). In brief, cavity isosurfaces should be generated in the stand-alone Jmol application and captured "cached" in a PNGJ file, which is then uploaded to Proteopedia for use in the SAT. Instructions are at the end of this page under Preparing Isosurface Scenes for Proteopedia. You may also wish to consider an alternative method which represents cavities with pseudoatoms, PACUPP. Two ProbesJmol uses two "rolling" spherical probes to identify cavities.
Small Cavity ExampleThe coronavirus (SARS-CoV-2 and others) spike protein has a small, membrane proximal cavity (). It is a potential drug target. The simplest Jmol cavity command is This produces pockets, tunnels, and cavities of all sizes. There are 426 separate surfaces. The largest is a convoluted tunnel with many mouths, volume 60,197 Å3. Many are very tiny. Hiding Tiny Cavities: minsetSince we are not interested in the tiny ones, we can hide them by specifying a value for minset. Cavities rendered with fewer than the number of triangles specified for minset will not be shown. By trial and error, a good minset number is 1000, making the Jmol command:
Legend: Spike protein 6zgi: isosurface minset 1000 cavity. Now only the largest two cavities are shown. The larger one is a convoluted tunnel with many mouths, volume 60,197 Å3. The smaller one is the membrane-proximal cavity of interest, volume 7,591 Å3. Isolating One CavityThe command to display only the smaller cavity is:
Legend: Spike protein 6zgi showing the membrane-proximal cavity with probe radius 1.2 Å. Coloring By DepthIt is revealing to color this cavity by distance from the surface with this command:
Legend: Spike protein 6zgi showing the membrane-proximal cavity: At Surface, Deeper. GREEN LINK Close examination 6zgi-m1000-cav-set2-sd-detail.pngj Ditto legend + mouths closed. shows that the red parts, which are at or near the protein surface, are mostly closed. The "cavity" command, without modifiers, generates closed isosurfaces. Pockets vs. Interior CavitiesTo show the entrances or mouths of a cavity as open, the modifier pockets is needed. This modifier also hides cavities that lack openings to the macromolecular surface at the cavity probe radius employed.
Here is the command to show our cavity-of-interest's entrances from the protein surface as open:
Legend: Spike protein 6zgi showing the membrane-proximal cavity with entrances open: At Surface, Deeper. Spike protein is a homotrimer. The membrane-proximal cavity has three narrow tunnels, between protein chains, to wider pockets opening to the protein surface. Cavity Volumes: Closed OnlyJmol is not able to calculate a meaningful volume for a pocket rendered with open entrances. Volumes reported by Jmol for its closed rendering of the membrane-proximal cavity of the spike protein 6zgi are in rough agreement with those independently determined by PACUPP -- best at cavity probe radii of 1.5 or 2.0 Å.
Increasing the Cavity Probe RadiusAs the cavity probe radius increases, cavities are displayed with less detail. Also, cavities or tunnel connections between cavities that are smaller than the probe may fail to be detected. Recall that the deeper chamber of our membrane-proximal cavity of interest is connected to three entrance pockets by narrow tunnels. As the cavity probe radius increases, those narrow tunnels are no longer detected. At 2.0 Å, two of the entrances are no longer connected to the deeper chamber. At 2.5 Å, none are connected. The cavity probe radius in Å can be added to the end of Jmol's isosurface command like this:
Legend: Spike protein 6zgi membrane-proximal cavity as 4 disconnected pieces resulting from a cavity probe radius of 2.5 Å. At Surface, Deeper. Because the deeper chamber has no entrances from the surface, it will not be shown when the entrance pockets are rendered open with the pockets modifier. Those open pockets must be combined with a separate isosurface calculation for the interior chamber. xxxxxxxxxxxxxxxxxxxx
Large Cavity Example. An X-ray structure, 3hyc, reveals a large central cavity, approximately 35 Å in diameter. This cavity connects to the protein surface with four "mouth" openings, each about 10-12 Å in diameter. These openings are in a plane, 90° apart. Here, you can .
|
|
Preparing Isosurface Scenes for ProteopediaPreparing Isosurface Scenes for Proteopedia
This section is under construction and awaits major revisions. It is not ready for use.
Speed of RenderingSpeed of Rendering
If you use the isosurface commands below, do so in the Jmol Java application, not in JSmol in Proteopedia. Depending on the size of the molecule, cavity isosurface commands take about a minute to complete in the Java application, which is many times faster than JSmol. You would have to wait many minutes for completion in JSmol.
Use PNGJ FilesUse PNGJ Files
The best way to include cavity isosurfaces in a Proteopedia scene (green link) is to upload a properly prepared PNGJ file that includes the cached isosurfaces. Proteopedia's Molecular Scene Authoring Tools (SAT) load molecule tab accepts an uploaded PNGJ file.
Before saving the scene, you can add a caption that will display under the molecular display. The caption can include
- Links to pages within Proteopedia using double brackets, such as 6zgi (wikitext [[6zgi]]).
- Links to pages outside Proteopedia using single brackets, such as jmol.org (wikitext [http://jmol.org jmol.org]).
- Color keys using colored text. Coloring of text in captions must be done using span classes: see instructions at Coloring text. (In this example: <span class="text-red"><b>colored</b></span> <span class="bg-yellow">text</span>.)
Preparing PNGJ Files With Cached IsosurfacesPreparing PNGJ Files With Cached Isosurfaces
It is important to cache the isosurface(s) in your scene before saving the PNGJ file so the scene can load rapidly. If the PNGJ file is saved without caching, JSmol will re-calculate the isosurface(s) before the scene is displayed. This could easily take 10 minutes!
Here are the steps:
I. In the Jmol Java application:
- 1. Calculate the isosurface(s). Commands are explained above in earlier sections of this article. If you will need more than one isosurface, for example one for pockets and one for interior cavities, assign each a distinct ID when you create them. Prefixing the ID with tilde (~) ensures the ID name does not conflict with an existing term in Jmol. In a Jmol command line, anything after # is a comment, ignored by Jmol. For example:
- isosurface ~poc minset 100 pocket cavity
- isosurface ~bur minset 100 interior cavity # "buried"
- 2. Color the isosurface(s). Coloring by depth from the surface was described above. For a plain color, first you must know the ID of the isosurface if there are more than one. If no ID was assigned when you created it, the ID is "isosurface1".
- isosurface ~poc # Select the isosurface to color. Unnecessary if there is only one.
- color isosurface pink # color name
- isosurface ~bur # Select a different isosurface to color.
- color isosurface [x4060FF] # RGB color
- 2. Write each isosurface as a jvxl (Jmol Voxel) file.
- write filename.jvxl
- write $isosurface1 filename.jvxl
- In a new Jmol session, load the jvxl file(s).
- Cache the isosurface(s).
- After rendering the isosurfaces and macromolecule as desired, write a PNGJ file.
II. In Proteopedia:
- Upload your PNGJ file.
- Load your PNGJ file in the SAT.
- Add a caption that may include links and color keys.
- Save a scene (green link) to display your scene.
In order to speed up the green links below, the isosurfaces were pre-calculated in the Jmol Java application and then saved into .jvxl (Jmol voxel) files (and uploaded to Proteopedia). These can be quickly loaded without re-computing the isosurfaces. After a cavity isosurface command has completed, the calculated surfaces can be saved with the Jmol command
write filename.jvxl
Later, you can load the saved isosurfaces without re-calculating them using the command
isosurface filename.jvxl
Generating Cavity IsosurfacesGenerating Cavity Isosurfaces
The Jmol commands for generating cavity isosurfaces will be found in the Jmol/JSmol Interacive Scripting Documention under isosurfaces: molecular/solvent surfaces. Near the bottom of that very long section, important commands for after the cavity isosurfaces are calculated:
- isosurface area set (integer) reports the surface area of one isosurface in Å2.
- isosurface delete to clear existing isosurfaces before a new calculation.
- isosurface set (integer) displays just one of the isosurfaces.
- isosurface set 0 displays all of the isosurfaces.
- isosurface volume set (integer) reports the volume of one isosurface in Å3.
See AlsoSee Also
References and NotesReferences and Notes
- ↑ Bondi, A., J. Phys. Chem. 68:441, 1964.
- ↑ Diameter of water molecule at B10NUMB3R5, a collaboration between Harvard Medical School and the Weizmann Institute of Science. See also Distance between water molecules in bulk water.
- ↑ Volume of water molecule bound to an amino acid at B10NUMB3R5, a collaboration between Harvard Medical School and the Weizmann Institute of Science.
- ↑ 4.0 4.1 Cavity of interest was manually disconnected from the largest cavity.
- ↑ Sum of volumes of cavity sets 5 and 11.
- ↑ Sum of volumes of 2 clusters of pseudoatoms.
- ↑ Sum of volumes of cavity sets 6, 9, 10, and 12.
- ↑ Sum of volumes of 2 clusters of pseudoatoms. One quarter of the cavity failed to be detected with a cavity probe radius of 2.5 Å.
- ↑ PACUPP in offset mode fails to find 3/4 of the cavity with a cavity probe radius of 2.5 Å.