ProDy 1.2 Series =============================================================================== .. contents:: :local: 1.2.1 (Sep 6, 2012) ------------------------------------------------------------------------------- If you are upgrading from ProDy v1.1, see also the below changes introduced in v1.2. **Bugfix**: * A problem in :mod:`select` module regarding Numpy numeric types is fixed. Problem would emerge on platforms which do not offer some numeric types, e.f. ``np.float16``. * Fixed problems in :ref:`prody-anm`, :ref:`prody-gnm`, and :ref:`prody-fetch` related to writing output files. **Changes**: * The way that :ref:`prody-fetch` command handles files containing PDB identifiers has changed. 1.2 (Aug 30, 2012) ------------------------------------------------------------------------------- **Important Changes**: Package folder :file:`prody` is moved into :file:`lib` folder to prevent exceptions related to importing compiled packages from the installation folder. Some changes in :class:`.Trajectory` and :class:`.Ensemble` methods related to linking, setting, and selecting atoms were made to make the interface more intuitive. These changes, which may break your code, are as follows: * :class:`.AtomGroup` instances can be linked to a :class:`.Trajectory` using :meth:`.Trajectory.link` method and linking status of an instance can be checked using :meth:`.Trajectory.isLinked` medhod. * :meth:`.Trajectory.setAtoms` method accepts :class:`.AtomGroup` and :class:`.Selection` instances and should be used to select a subset of atoms. This method will not link :class:`.AtomGroup` instance to the trajectory and also will not update the reference coordinates of the instance. * :meth:`.Trajectory.select` and :meth:`.Ensemble.select` methods are removed and their functions are overloaded to :meth:`.Trajectory.setAtoms` and :meth:`.Ensemble.setAtoms` methods, respectively. * :meth:`.Trajectory.getSelection` and :meth:`.Ensemble.getSelection` methods are removed, use :meth:`.Trajectory.getAtoms` and :meth:`.Ensemble.getAtoms` instead. * :class:`.Trajectory` reference coordinates must be changed using :meth:`.Trajectory.setCoords` method. For usage examples see :ref:`trajectory`, :ref:`trajectory2`, :ref:`frame`, and :ref:`outputtraj`. **New Features**: * :ref:`flags`, that are used in :ref:`selections`, is implemented. See its documentation for handy usage examples. * :func:`.sortAtoms` function is implemented. * :func:`.pickCentralConf` function is implemented to pick the conformation or the active coordinate set that is closest to the average of coordinate sets. * :func:`.writePSF`, a simple PSF file writer, is implemented. * :func:`.glob` utility function is implemented. * :func:`.iterPDBFilenames` function is implemented, which can be used to iterate over all PDB files stored in a local mirror of Protein Data Bank. * :func:`.findPDBFiles` function is implemented, which can be used to access PDB files in a path. **Improvements**: * :class:`.HierView` instances are built more efficiently. Two times speed-up is achieved by delaying instantiation of :class:`.Chain` and :class:`.Residue` instances until they are needed. * Multiple :ref:`flags` can be used in :ref:`selections` without using ``'and'`` operator, e.g. ``'sidechain carbon'`` is the same as ``'sidechain and carbon'``. * :func:`.writePDB` accepts :class:`.Ensemble`, :class:`.Conformation`, and :class:`.Frame` instances as atoms argument. * :func:`.writePDB` function is around 25% faster. * :func:`.pickCentral` is extended to accept :class:`.Atomic` and :class:`.Ensemble` instances. Old function is now :func:`.pickCentralAtom`. * :ref:`prody-align` command and :func:`.prody_align` function can handle non-protein atom selections (see examples for :ref:`prody-align`). * :func:`.parsePDB` and :func:`.writePDB` supports 100K and more atoms. **Changes**: * :func:`.showOverlapTable` displays first set of modes along x axis of the plot. * :meth:`.AtomGroup.setData` does not accept arrays with boolean data type, use :meth:`.AtomGroup.setFlags` instead. * :func:`.writePDB` function argument *model* is changed to *csets* that indicates the coordinate set index of *atoms* argument. * :meth:`.PackageLogger.timing` does not return elapsed time, only logs this information. * :meth:`.PackageLogger.startLogfile` is deprecated for removal in v1.3, use :meth:`.PackageLogger.start` instead. * :meth:`.PackageLogger.closeLogfile` is deprecated for removal in v1.3, use :meth:`.PackageLogger.close` instead. * ``from prody.utilities import *`` will not work anymore due to potential name conflicts with Python standard library functions. Import required functions explicitly. * :func:`.writePDB` appends :file:`.pdb` extension to filename when it is not present * :ref:`prody-select` command positional argument order is changed to allow for handling multiple PDBs at a time. Old older will be supported until v1.4, but a warning message will be issued. * *select* argument in :func:`.alignCoordsets` is removed, make selection outside of the function instead. **Deprecations**: * :meth:`.AtomGroup.getHeteros` method has been deprecated for removal in v1.3, use ``getFlags('hetatm')`` instead. * :meth:`.AtomMap.getMappedFlags` and :meth:`.AtomMap.getDummyFlags` methods have been deprecated for removal in v1.3, use ``getFlags('mapped')`` and ``getFlags('dummy')`` instead. * :func:`.getVerbosity` and :func:`.setVerbosity` are deprecated for removal in v1.3, use :func:`.confProDy` instead which save changes permanently. * :meth:`.NMA.getModes` and :meth:`.ModeSet.getModes` methods are deprecated for removal in v1.3, use :func:`list`, e.g. ``list(model)``, instead. **Bugfixes**: * Fixed a bug in :ref:`prody-contacts` command that arose problems when when selecting a subset of the target atoms. Normal Mode Wizard ^^^^^^^^^^^^^^^^^^ **Improvements**: * :guilabel:`ProDy Interface` shows the size of the trajectory output file for PCA calculations. * :guilabel:`Mode Graphics Options` allows for copying arrows settings from one mode to another. * Color scale method and midpoint for protein coloring based on mobility and bfactors can be adjusted from :guilabel:`Protein Graphics Options` panel.