Skip to content

Tags: salilab/imp

Tags

2.7.0

Toggle 2.7.0's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.7.0 release

- New applications of IMP are now available:
  - [Modeling of the yeast Mediator complex](https://salilab.org/mediator/)
  - [Modeling of the yeast and human TFIIH complex](https://salilab.org/tfiih/)
  - [Modeling of complexes between the 26S proteasome and proteasome interacting proteins](https://salilab.org/26S-PIPs)
  - [Human Complement modeling](https://salilab.org/Complement)
  - [Modeling of a region of the fly genome](https://integrativemodeling.org/systems/?sys=22) using IMP and [TADbit](http://sgt.cnag.cat/3dg/tadbit/)
- Memory and CPU performance improvements across the code, particularly
  in IMP::pmi.
- Preview of mmCIF support for deposition of integrative models in
  [PDB-dev](https://pdb-dev.rcsb.rutgers.edu/). See the IMP::pmi::mmcif
  module for more details.
- This will be the last release that includes packages for RedHat Enterprise
  Linux 5 (and variants, such as CentOS 5), since RHEL 5 has reached end
  of life.
- The IMP::em::SurfaceShellDensityMap::binaries() method has been replaced
  with the (correctly spelled) IMP::em::SurfaceShellDensityMap::binarize()
  method.
- IMP::multifit::WeightedExcludedVolumeRestraint no longer expects that the
  IMP::core::RigidBody particles it acts on are also IMP::atom::Hierarchy
  objects.  Use an IMP::multifit::RigidLeavesRefiner in place of
  IMP::core::LeavesRefiner to get the old behavior.
- IMP::modeller::MultipleBinormalRestraint has moved to the IMP::core
  module.
- The IMP::core::setup_as_rigid_body() method has been removed.
  Use IMP::core::create_rigid_body() instead.
- IMP::test:TempDir and IMP::test::RunInTempDir are deprecated in favor
  of similar functions that work as Python context managers
  (IMP::test::temporary_directory() and IMP::Test::temporary_working_directory()
  respectively).

2.6.2

Toggle 2.6.2's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.6.2 release

- Add support for SWIG 3.0.8.
- Add support for Ubuntu 16.04, Xenial Xerus.
- Minor documentation fixes.
- Bugfix: fix detection of termini in IMP::atom::Selection.

2.6.1

Toggle 2.6.1's commit message

Verified

This tag was signed with the committer’s verified signature.
benmwebb Ben Webb
IMP 2.6.1 release

- The 'cluster' binary is now called 'rmsd_cluster' to avoid conflicts with
  other packages (e.g. graphviz also provides a 'cluster' binary).
- Minor bug fixes to PMI.
- Minor documentation fixes.

2.6.0

Toggle 2.6.0's commit message
IMP 2.6.0 release

- This release includes most of the functionality of PMI2. This is an improved
  version of PMI that is faster than PMI1, more modular, and easier to use.
  See IMP::pmi for more information.

- A new application of IMP is now available:
  [Modeling of exosome complexes from cross-link MS data](http://salilab.org/exosome).

- The IMP::base and IMP::kernel namespaces have been removed (use the top-level
  IMP namespace instead).

- The IMP::display::ChimeraWriter class has been removed (use IMP::rmf instead).

- IMP::Model no longer has an implicit scoring function. This means that
  Model::evaluate() and Model::add_restraint() have been removed (use an
  IMP::ScoringFunction instead). IMP::Optimizer and IMP::Sampler now also
  require an IMP::ScoringFunction to be explicitly set before they are used.

- IMP::atom::Hierarchy::get_as_xxx() methods are deprecated; use regular
  decorators instead. For example, instead of h.get_as_residue() use
  Residue(h). If you want to check for validity first,
  use Residue::get_is_setup(h).

- IMP::atom::Selection can now select by element.

- IMP::modeller::load_restraints_file() and IMP::modeller::read_pdb() have
  been removed. Use the IMP::modeller::ModelLoader class instead.

- IMP::atom::PDBSelector subclasses are more flexible, with a new
  IMP::atom::XorPDBSelector class, and can be combined using standard
  Python operators, in similar fashion to sets (&, |, ^, -, ~ operators).

- The following modules that use FFTW (which is licensed under the GPL)
  are themselves now also licensed under the GPL: IMP::EMageFit,
  IMP::cnmultifit, IMP::em2d, IMP::integrative_docking, and IMP::multifit.

- Bugfix: sampled EM density maps should now handle resolution correctly; maps
  generated by the fixed code agree well with those generated by EMAN. The old
  radius-dependent kernel parameter code is no longer used.

2.5.0

Toggle 2.5.0's commit message
IMP 2.5.0 release

- Documentation has been revised and updated; the main manual now gives a
  gentler introduction to IMP, with more technical details on the code
  provided in a separate reference guide.

- The IMP::base and IMP::kernel namespaces are now deprecated. Functionality
  in both base and kernel now lives in the top-level "IMP" namespace.

- IMP::atom::Selection::get_selected_particle_indexes() has a new
  'with_representation' parameter. If turned on (the default), Selection
  returns all representational (XYZ) particles that match the request -
  for example, selecting a residue will typically return all of its atoms.
  If turned off, Selection returns the highest matching particle instead -
  so, in this case, the residue particle itself.

- All IMP::RAII objects (e.g. IMP::SetLogState) now support the context
  manager protocol in Python (e.g. "with IMP.SetLogState() as s:")

- Several long-deprecated functions have been removed. These include:
  - Several Restraint constructors that take Particles. Use equivalent
    constructors that take an IMP::Model pointer and ParticleIndexes instead.
  - IMP::core::MonteCarlo::get_number_of_forward_steps() (use
    get_number_of_accepted_steps() instead).
  - IMP::Model::remove_restraint(), IMP::Model::get_restraints(),
    IMP::Model::get_number_of_restraints(), IMP::Model::get_restraints().
    Store your restraints in an IMP::RestraintSet or use an
    IMP::core::RestraintsScoringFunction. Related methods such as
    IMP::Model::evaluate() will be removed in the next IMP release.
  - IMP::Model::set_maximum_score() and related methods. Set the maximum
    scores on the IMP::Restraint or IMP::RestraintSet directly, using
    IMP::Restraint::set_maximum_score().
  - IMP::Restraint::get_input_containers() and
    IMP::Restraint::get_input_particles(). Use IMP::Restraint::get_inputs()
    instead (similarly for get_outputs()).
  - IMP::rmf::save_frame() no longer takes a frame index argument (it was
    previously ignored anyway).

- Several functions have been deprecated in this release (and will be removed
  in the next). These include several Restraint constructors that take Particle
  or Particles objects (use constructors that take an IMP::Model and
  ParticleIndex or ParticleIndexes) instead; and add_particle*(),
  set_particle*() and clear_particle*() in several Container objects (use add(),
  set() and clear() with particle indexes instead).

- On platforms that support it, OpenMP is turned on by default. To speed up
  some parts of IMP, call IMP::base::set_number_of_threads(). By default,
  only a single thread is used.

- The RPM packages now include an -mpich subpackage that can be installed
  to enable parallel computation, using the IMP.mpi module in concert
  with the mpich library.

- We now provide packages for both of the currently-supported Ubuntu LTS
  releases: Ubuntu 12.04 (Precise Pangolin) and Ubuntu 14.04 (Trusty Tahr).

- The default log level has changed from NONE to WARNING.

- A new command line tool, `multi_foxs`, allows for enumeration and scoring
  of multi-state models against SAXS profiles.

- A new command line tool, `ligand_score_multiple`, acts similarly to the
  existing `ligand_score` tool but scores each ligand pose generated by
  docking software (such as PatchDock).

- New applications of IMP are now available:
  - Multi-state modeling of the histidine kinase, PhoQ
  - Determination of the molecular architecture of the 40S•eIF1•eIF3
    translation initiation complex

- IMP::domino::DiscreteSampler::set_restraints() now allows the set of
  restraints used in DOMINO filtering to be controlled (previously, all
  restraints in the IMP::Model were used).

- IMP::modeller::IMPRestraints now transfers an IMP::ScoringFunction into the
  MODELLER score, not the implicit (and deprecated) score of the
  entire IMP::Model.

- Bugfix #775: coordinates of voxels in EM maps were previously inconsistently
  treated (they are supposed to be the centers of the voxels, but in some
  cases they were the lower left edge). The fix may result in maps and their
  bounding boxes appearing shifted by half the voxel size.

2.4.0

Toggle 2.4.0's commit message
IMP 2.4.0 release

- Python 3 is now supported.

- Command line tools are now placed in the `bin` directory of modules (the
  old `bin` directory, used for utility programs that are not installed, is
  now called `utility`). The `applications` directory is removed.

- Several Python modules that were only used by EMageFit have been moved from
  IMP::em2d to IMP::EMageFit.

- A new tutorial that uses the IMP::pmi module is now available (modeling of
  the RNA Polymerase II stalk).

2.3.1

Toggle 2.3.1's commit message
IMP 2.3.1 release

- Minor bug fixes.

- Update to IMP::pmi to support the Nup84 and rnapolii biological systems.

2.3.0

Toggle 2.3.0's commit message
IMP 2.3.0 release

- A new IMP::pmi module was added, containing high-level Python classes to
  simplify the representation, scoring, sampling and analyzing of models
  in IMP. This module is still under heavy development, and should be
  considered experimental.

- Binary installers for 64-bit Windows are now available.

- The `.py` extension has been removed from all Python applications, so that
  they are consistent with the C++ extensions.

- IMP::atom::Selection objects can now be combined using basic set operations
  (union, intersection, difference, symmetric difference). In Python the
  equivalent operators (|, &, -, ^ respectively) can be used.

- The integrative docking (idock) application now employs SOAP to improve
  the scoring.

- IMP::atom::CHARMMParameters::create_topology() now works with a wider range
  of hierarchies (previously it would only accept Residues that were direct
  children of Chains). For example, it should do the right thing when given
  a Hierarchy that contains no Chain particles, or one where Residues are
  grouped under Fragments.

- Only Python 2.6 or later is now supported. We still provide IMP for
  RedHat Enterprise 5 (which ships with Python 2.4) but you will need to use
  the `python26` binary (part of EPEL) rather than the system default Python.

2.2.1

Toggle 2.2.1's commit message
IMP 2.2.1 release

- Bugfix: PoseScore (see the ligand_score application) should now match
  that used by the Pose&Rank web server (http://salilab.org/poseandrank/)

- Minor other build and documentation fixes.

2.2.0

Toggle 2.2.0's commit message
IMP 2.2.0 release

- A module IMP.template was added to act as a template for creating new
  external modules. It includes setting up git hooks for format checks and
  things like that.

- The python support for grids was cleaned up. Hopefully this makes it more
  robust. If you were using a grid in python that no longer exists, ping us,
  we can add it back.

- The generic geometry functions were simplified slightly and renamed to
  IMP::algebra::get_vector_geometry().

- The IMP::base::Flag class was added to simplify adding flags in C++.

- The `--log_level` and `--check_level` command line argument now take
  strings (eg VERBOSE) to specify their values, rather than cryptic (and a
  bit unstable) numbers.

- Command line options are now divided into normal and advanced ones.
  You do `--help_advanced` to show the advanced ones.

- Support for computing Connolly surfaces was added with
  IMP::algebra::get_connolly_surface(). In addition, there is now
  IMP::algebra::get_uniform_surface_cover(const IMP::algebra::Sphere3Ds&,double)
  to sample the surface of a collection of balls.

- IMP::atom:: create_simplified_from_volume() was added to create a simplified
  representation of a hierarchy that preserves the surface are and occupied
  volume. It uses IMP::algebra::get_simplified_from_volume(). If you want to
  play with such representations, you can use the rmf_simply application.

- IMP::atom::get_rmsd(IMP::atom::Selection, IMP::atom::Selection,
                      const IMP::algebra::Transformation3D&) was deprecated.
  Use IMP::atom::get_rmsd_transforming_first() instead.

- IMP::algebra::get_rmsd() and IMP::algebra::get_rmsd_transforming_first()
  were added.

- The family of macros IMP_BASE_[SMALL,LARGE]_[UNORDERED,ORDERED]_[MAP,SET]
  have been added (eg IMP_BASE_SMALL_ORDERED_SET ()). They provide platform
  and boost-version independent ways to take advantage of the best set/map for
  an application. In particular, they use boost::container::flat_set and kin
  when available.

- IMP::atom::State and IMP::atom::Representation decorators have been added
  to provide support for multiple states and multiple representation schemes.
  They are integrated with RMFs and IMP::atom::Selection.
  See atom/multiresolution.py and atom/multistate.py for examples.

- The container implementations has been cleaned up and simplified a bit.
  This should not change most usage.

- [RMF](http://salilab.github.io/rmf) has been updated. There are a few minor
  API changes, in addition to a new, faster format (`.rmf3`).

- [Eigen](#Eigen) is now included with IMP.

- The deprecated function IMP::kernel::Optimizer::set_restraints() was
  removed. Use IMP::kernel::Optimizer::set_scoring_function() instead.

- The deprecated constructor for IMP::kernel::ModelObject that does not take
  an IMP::kernel::Model was removed. This propagates to constructors
  IMP::kernel::Restraint, IMP::kernel::ScoreState and kin. Make sure you pass
  an IMP::kernel::Model as the first constructor argument. Related to this,
  deprecated functions like get_is_part_of_model(), set_model() were removed
  as they don't serve any purpose.

- The deprecated methods in IMP::kernel::Optimizer that pertain to attribute
  optimization were removed. Inherit from IMP::kernel::AttributeOptimizer
  instead if you want to use them in your optimizer.

- Some deprecated functionality was removed. If you encounter problems,
  replace IMP::base::OwnerPointer with IMP::base::PointerMember, find logging
  stuff in IMP/base/log.h, object in IMP/base/Object.h and random in
  IMP/base/random.h.

- IMP::atom::Chain now uses strings for the chain ids, to be consistent with
  changes in the PDB. PDB files are written using the first character of
  the chain string.

- Added orientation-dependent SOAP scoring (IMP::score_functor::OrientedSoap
  and IMP::atom::OrientedSoapPairScore). Orientation-dependent SOAP scores
  include those that score loops (SOAP-Loop), protein-peptide interfaces
  (SOAP-Peptide) and proteins (SOAP-Protein). The library files themselves
  are rather large (~1.5GB) and so are not included with IMP. They can be
  downloaded separately from http://salilab.org/SOAP/.