Skip to content

Latest commit

 

History

History
366 lines (229 loc) · 12.1 KB

v1.4_series.rst

File metadata and controls

366 lines (229 loc) · 12.1 KB

ProDy 1.4 Series

Upcoming changes:

  • Support for Python 3.1 and NumPy 1.5 will be dropped, meaning no Windows installers will be built for these versions of them.

Improvements:

>>> pdb_lines = """
... ATOM      1  O   WAT A   1       4.694  -3.891  -0.592  1.00  1.00
... ATOM      2  H1  WAT A   1       5.096  -3.068  -0.190  1.00  1.00
... ATOM      3  H2  WAT A   1       5.420  -4.544  -0.808  1.00  1.00
... TER
... ATOM      4  O   WAT A   1     -30.035  19.116  -2.193  1.00  1.00
... ATOM      5  H1  WAT A   1     -30.959  18.736  -2.244  1.00  1.00
... ATOM      6  H2  WAT A   1     -29.993  19.960  -2.728  1.00  1.00
... TER
... ATOM      7  O   WAT A   1     -77.584 -21.524 -37.894  1.00  1.00
... ATOM      8  H1  WAT A   1     -77.226 -21.966 -38.717  1.00  1.00
... ATOM      9  H2  WAT A   1     -77.023 -20.726 -37.674  1.00  1.00
... TER"""
>>> from StringIO import StringIO
>>> atoms = parsePDBStream(StringIO(pdb_lines))
Current behavior:
>>> print(atoms.numResidues())
1
>>> atoms['A', 1]
<Residue: WAT 1 from Chain A from Unknown (9 atoms)>
To activate the new behavior (which will be the default behavior in v1.5):
>>> hv = atoms.getHierView(ter=True)
>>> print(hv.numResidues())
>>> hv['A', 1]

Bugfixes:

New Features:

Improvements:

Bugfixes:

Improvements:

Bugfixes:

  • Selection problem with using :term:`resid` is fixed (:issue:`160`)
  • Fixed a memory leak in MSA parsers written in C. When dealing with large files, leak would cause a segmentation fault.
  • Fixed a memory leak in MSA parsers written in C. When dealing with large files, leak would cause a segmentation fault.
  • Fixed a reference counting problem in MSA parsers in C that would cause segmentation fault when reading files that uses the same label for multiple sequences.
  • Updated :func:`.fetchPDBLigand` to use PDB for fetching XML files.
  • Revised handling of MSA file formats to avoid exceptions for unknown extensions.

New Features:

  • :func:`.parsePDBHeader` function can parse space group information from header section specified as REMARK 290, e.g. parsePDBHeader('1mkp', 'space_group') or parsePDBHeader('1mkp')['space_group']
  • :term:`heavy` selection flag is defined as an alias for :term:`noh`.
  • :func:`.matchChains` function can match non-hydrogen atoms using subset='heavy' keyword argument.
  • Added update_coords keyword argument to :meth:`.PCA.builCovariance`, so that average coordinates calculated internally can be stored in ensemble or trajectory objects used as input.

Improvements:

  • Unit tests can be run with Python 2.6 when unittest2 module is installed.

Bugfixes:

  • Fixed problems with reading compressed PDB files using Python 3.3.
  • Fixed a bug in :func:`.parseSTRIDE` function that prevented reading files.
  • Improved parsing of biomolecular transformations.
  • Fixed memory allocation in C code used by :func:`.parseMSA` (Python 2.6).
  • Fixed a potential name error in trajectory classes.
  • Fixed problems in handling compressed files when using Python 2.6 and 3.3.
  • Fixed a problem with indexing :class:`.NMA` instances in Python 3 series.

Improvements:

Bugfixes:

Changes:

Bugfixes:

Improvements:

Changes:

Bugfixes:

  • Atom selection problems related to using :term:`all` and :term:`none` in composite selections, e.g. 'calpha and all', is fixed by defining these keywords as :ref:`flags`.
  • Fasta files with sequence labels using multiple pipe characters would cause C parser (and so :func:`.parseMSA`) to fail. This issue is fixed by completely disregarding pipe characters.
  • Empty chain identifiers for PDB hits would cause a problem in parsing XML results file and :func:`.blastPDB` would throw an exception. This case is handled by slicing the chain identifier string.
  • A problem in :func:`.viewNMDinVMD` related to module imports is fixed.
  • A problem with handling weights in :func:`.loadEnsemble` is fixed.

New Features:

Improvements:

  • :func:`.refineMSA` function and :ref:`evol-refine` application can perform MSA refinements by removing similar sequences.
  • :func:`.writePDB` function takes beta and occupancy arguments to be outputted in corresponding columns.
  • :class:`.MSA` indexing and slicing are revised and improved.
  • :func:`.parseMSA` is improved to handle indexing of sequences that have the same label in an MSA file, e.g. domains repeated in a protein.
  • :ref:`prody-anm`, :ref:`prody-gnm`, and :ref:`prody-pca` applications can write heatmap files for visualization using NMWiz and Heatmapper plugins.
  • Several improvements made to handling sequence labels in Pfam MSA files. Files that contain sequence parts with same protein UniProt ID are handled delicately.

Changes:

Bugfixes:

  • Fixed a syntax problem that prevented running ProDy using Python 2.6.
  • Fixed :class:`.NMA` indexing problem that was introduced in v1.4.
  • NMWiz can visualize heatmaps linked to structural view via Heatmapper. Clicking on the heatmap will highlight atom or residue pairs.
  • ProDy interface has the option to write and load cross-correlations.
  • NMWiz can determined whether a model is an extended model. For extended models plotting mobility has been improved. Only a single value per residue will be plotted, and clicking on the plot will highlight all of the residue atoms.

New Features:

Python 3 Support

  • ProDy has been refactored to support Python 3. Windows installers for Python 2.6, 2.7, 3.1, and 3.2 are available in :ref:`getprody`.
  • Unit tests are compatible with Python 2.7 and 3.2, and running them with other versions gives errors due to unavailability of some :mod:`unittest` features.

Sequence Analysis

Bugfix:

  • Fixed selection issues involving use of x or negative numbers.