从模拟轨迹中获取可处理残基的pKa值
项目描述
README: propkatraj
propkatraj.py
可以用于计算蛋白质残基的 pKa 值。我们采用集合方法,通过平衡分子动力学模拟采样许多不同的构象。然后,我们将快速启发式 pKa 预测器 PROPKA 3 应用于轨迹的各个帧。通过分析 pKa 预测的统计数据,可以比从单个静态构象的 pKa 预测中获得更一致的图像。
所需软件
- PROPKA 3(作为 Python 包使用)
- MDAnalysis
- pandas
有关如何安装所有内容的说明,请参阅 INSTALL.md。
使用方法
propkatraj.PropkaTraj
类包含所有功能。使用以下方式导入:
from propkatraj import PropkaTraj
它接受一个 MDAnalysis.AtomGroup
或 MDAnalysis.Universe
实例作为参数进行初始化,并在调用 run()
方法时在轨迹的每个帧上运行 PROPKA。有关详细信息,请参阅 help(PropkaTraj)
。
pkatraj = PropkaTraj(atomgroup, select='protein', skip_failure=False)
Runs :program:`propka` on the titrateable residues of the selected AtomGroup
on each frame in the trajectory.
Parameters
----------
atomgroup : :class:`MDAnalysis.Universe` or :class:`MDAnalysis.AtomGroup`
Group of atoms containing the residues for pKa analysis. Please note
that :class:`MDAnalysis.UpdatingAtomGroup` are not supported and will
be automatically converted to :class:`MDAnalysis.AtomGroup`.
select : str
Selection string to use for selecting a subsection of atoms to use
from the input ``atomgroup``. Note: passing non-protein residues to
:program:`propka` may lead to incorrect results (see notes). [`protein`]
skip_failure : bool
If set to ``True``, skip frames where :program:`propka` fails. A list
of failed frames is made available in
:attr:`PropkaTraj.failed_frames_log`. If ``False`` raise a
RuntimeError exception on those frames. [`False`]
Notes
-----
Currently only the default behaviour supplemented with the `--quiet` flag
of :program:`propka` is used.
Temporary :program:`propka` files are written in the current working
directory. This will leave a ``current.pka`` and ``current.propka_input``
file. These are the temporary files for the final frame and can be removed
safely.
Current known issues:
1. Due to the current behaviour of the MDAnalysis PDBWriter, non-protein
atoms are written to PDBs using `ATOM` records instead of `HETATM`.
This is likely to lead to undefined behaviour in :program:`propka`,
which will likely expect `HETATM` inputs. We recommend users to only
pass protein atoms for now. See the following issue for more details:
https://github.com/Becksteinlab/propkatraj/issues/24
pkatraj.run()
Perform the calculation
Parameters
----------
start : int, optional
start frame of analysis
stop : int, optional
stop frame of analysis
step : int, optional
number of frames to skip between each analysed frame
verbose : bool, optional
Turn on verbosity
调用 run()
方法将创建一个 pandas.DataFrame,通过 results.pkas
访问,其中包含时间作为第一列,残基编号作为后续列。对于每个时间步,存储此残基的预测 pKa 值。处理 DataFrame
以获得如 Documentation 中所示的统计数据。例如,您可以按以下方式获取时间序列统计信息的摘要
pkatraj.results.pkas.describe()
文档
有关如何使用 propkatraj.PropkaTraj
在示例轨迹上以及如何使用 seaborn 绘制数据的说明,请参阅 Jupyter 笔记本 docs/propkatraj-example.ipynb。
引用
如果您在已发表的论文中使用 propkatraj
,请引用 PROPKA 3.1 的参考文献 1 和本身合成的参考文献 2。参考文献 3 是如果您需要特定软件引用的话。
-
C. R. Søndergaard, M. H. M. Olsson, M. Rostkowski, and J. H. Jensen. Improved treatment of ligands and coupling effects in empirical calculation and rationalization of pKa values. J Chemical Theory and Computation, 7(7):2284–2295, 2011. doi: 10.1021/ct200133y.
-
C. Lee, S. Yashiro, D. L. Dotson, P. Uzdavinys, S. Iwata, M. S. P. Sansom, C. von Ballmoos, O. Beckstein, D. Drew, and A. D. Cameron. Crystal structure of the sodium-proton antiporter NhaA dimer and new mechanistic insights. J Gen Physiol, 144(6):529–544, 2014. doi: 10.1085/jgp.201411219.
-
David Dotson, Irfan Alibay, Rick Sexton, Shujie Fan, Armin Zijajo, Oliver Beckstein. (2020). Becksteinlab/propkatraj: 1.1.x. Zenodo. https://doi.org/10.5281/zenodo.3228425
联系方式
请在 问题跟踪器 中提出问题。
项目详情
下载文件
下载适用于您的平台的文件。如果您不确定要选择哪个,请了解更多关于 安装包 的信息。