Skip to content
quantification of posttranscriptional modifications
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Switch score inflation to a lookup by position of the ptm Jun 17, 2019 Leave in commented-out bit for setting a random seed Jun 21, 2019


qPTxM stands for quantification of posttranscriptional modifications. It is a program in python built upon the computational crystallography toolbox (cctbx) and Phenix.

To use this software you will need a recent Phenix installation. To take advantage of the visualization tool, you will also need an installation of Coot.

To run qPTxM, please supply a model (pdb or mmcif) and map (mrc or ccp4) and specify an estimated median resolution:

phenix.python model.pdb map.mrc d_min=3

Any modifications already present (if recognized) will be stripped off and searched for anew, and you will be shown some plots describing which possible modifications look promising and which were rejected. You can also load a copy of your model (ptms.pdb) with all proposed modifications modeled, and step through these positions with a custom script for Coot:

coot ptms.pdb

You may also like to load pruned.pdb to compare against the model with no modifications modeled. Under the menu option Custom, you will find the option to call up a panel of buttons to take you directly to each modeled modification.

Once you have decided on which proposed modifications to keep, remove any you want to reject from the file ptms.out and rerun with the additional argument selected_ptms=ptms.out (or whatever you may want to rename this). It will produce another model with just those modifications.

You may also find it useful to run with adjust_filters_only=True in order to test how many modifications are suggested if you adjust any of the optional parameters, like the minimum correlation coefficient of the model to the map (see below). This way is much faster but does not produce a new model and script. It also won't be able to adjust results based on an updated resolution estimate. You can also turn off plotting with plot=False or test choices of parameters on synthetic data (generated from your model but a calculated, noise-free map of the same dimensions) and see how accurately qptxm finds a randomly-modified 10% of positions in that map by setting synthetic_data=True.

Current release:



Stojković V, Myasnikov AG, Young ID, Frost A, Fraser JS, Fujimori DG. High-resolution cryo-electron microscopy structure of the Escherichia coli 50S subunit and validation of nucleotide modifications. Preprint available on bioRxiv and pending peer review.

You can’t perform that action at this time.