|This code has been put under version control in the project Pymol-script-repo|
PyTMs is a PyMOL plugin that enables to easily introduce a set of common post-translational modifications (PTMs) into protein models.
Latest version: 1.2 (November 2015)
Using the GUI
In PyMOL, navigate to: Plugin --> PyTMs
The supported PTM can be selected from the left panel. The options will appear on the right. For help, click the help button.
Note that available objects/selection can be selected using the buttons or be entered into the field. Target atoms are automatically sub-selected and do not need to be specified.
PyMOL API functions
|List of functions|
|PTM||PyTMs API command||p.PTM property selector *||Target amino acid(s)||Modifyable N-terminus? **|
|acetylation||acetylate||acetylation||Lysine||Yes, biologically relvant|
|cysteine oxidations||oxidize_cys||oxidation_cys||Cysteine /(Seleno-)||No|
|malondialdehyde adducts||mda_modify||MDA||Lysine||Yes, biologically relevant|
|methionine oxidation||oxidize_met||oxidation_met||Methionine /(Seleno-)||No|
|phosphorylation||phosphorylate||phosphorylation||Serine, Threonine, Tyrosine||No|
- (*) requires incentive PyMOL version 1.7, or higher
- (**) N-terminal modifiactions excluding Proline
- Note that each function has an individual help description, callable by entering, e.g.:
Selections and custom property selectors
PTM amino acids have altered names, and altered/added atoms are identifyable by unique names.
The nomenclature is adapted mostly from RCSB.
Examples select resn CIR # citrullines select resn NIY # nitro-tyrosines # etc. ...
- Note that more information can be found in the associated help of individual functions
- Hint: using the label command is a convenient way to get hold of the names of atoms or residues
Incentive PyMOL version (>1.7) support custom property selectors.
PyTMs supports these by intoducting the property p.PTM selector (cf. table above), which will select the altered PTM atoms:
# To select a PTM, use e.g.: select p.PTM in nitration #selects nitro groups select p.PTM in * #selects any PTM
PyTMs in python scripts
In simple API scripts, the API commands can be used directly.
For use in python scripts PyTMs can also be imported, e.g.:
import pmg_tk.startup.pytms pmg_tk.startup.pytms.mda_modify()
Basic residue-based optimization, animation, vdW clashes, surface selections
Some functions (MDA & phosphorylation) support basic structure optimization that is used to position PTMs in more favorable locations.
Note that this optimization is based solely on sterical vdW strain and currently ignores charge. Due to interation of testing, there may be a significant calculation time associated with this procedure.
The optimization can be followed in the console and graphically in the PyMOL window (only in case the GUI is used). There is an option to animate the states from original to final after calculation for reference (cf. example).
| Animation of optimization with steric vdW clashes:|
- console output appears first in the PyMOL console prior to the API interface
- when using the GUI menu, the modification process can be followed in the display window
''' 0.90 pre release testing 1.00 first release * minor changes and typo correction * fixed non-incentive users receiving error messages related to the 'alter' command * new feature: integrated surface selection * new feature: integrated display of vdW clashes for all PTMs * new function: display of vdW clashes indpendent of modification 1.1 Minor fixes * changed boolean processing of 'delocalized' keyword 1.2 Additional function and minor improvements * fixed crashed related to random selections * new function: nitrosylate (Cysteine S-Nitrosylation) * updated usage descriptions * the user interface window is now resizable * changes in nitrate-function: * the torsion angle can now be defined for the nitro group and has a default of ~22.352 (slight angle); this feature is currently only supported for Tyrosines! * selecting a surface cutoff in conjuction with random placement of CE1 or CE2 for Nitro-tyrosines will now select the most accessible CE atom rather than a random one * font size can now be adjusted from the Main menu '''