Tags: salilab/imp
Tags
IMP 2.15.0 release - The [Homebrew](https://brew.sh/) Mac packages now support Apple Silicon. - We no longer provide RPMs for CentOS 6, since it has reached end of life. - Python 2.6 is no longer supported; Python 2.7 is the oldest version of Python that works with IMP (although Python 3 is recommended). - IMP now requires Boost 1.53 or later; support for Boost 1.41 has been dropped. - IMP::em::FitRestraint::cast() has been removed. Use `get_from()` instead. - The deprecated methods IMP::SingletonContainer::get_particle(), IMP::PairContainer::get_particle_pair(), IMP::TripletContainer::get_particle_triplet(), and IMP::QuadContainer::get_particle_quad() have been removed. Use the get_contents() method instead. - The IMP::em::CoarseCC class is deprecated. Use similarly-named free functions instead to calculate coarse cross correlation. - A new numerically stable grid-based Bayesian scoring function, IMP::em::FitRestraintBayesEM3D, has been added for cryo-EM data. Note that this is still in development. - The IMP::pmi::mmcif::ProtocolOutput constructor no longer takes a file handle argument, and the IMP::pmi::mmcif::ProtocolOutput::flush() method has been removed. Instead, use the python-ihm library to output mmCIF (or BinaryCIF). - IMP can now be built using external (system) copies of the RMF and/or python-ihm libraries, instead of those bundled with IMP itself; use the `IMP_USE_SYSTEM_RMF` or `IMP_USE_SYSTEM_IHM` CMake variables. - MRC file handling has been extended; MRC files not aligned with the xyz axes (mapc/mapr/maps not 1,2,3) are now automatically transposed rather than raising an exception, and the origin is now set from the nxstart/nystart/nzstart fields if present and the file origin is zero. - New applications of IMP are now available: - [Integrative model of the γTuSC-Spc110 complex](https://salilab.org/gtuscSpc110) - [Integrative structure of the Smc5/6-Nse2/5/6 complex](https://integrativemodeling.org/systems/smc56_nse256) - IMP's copies of the old Template Numerical Toolkit (TNT) and JAMA/C++ library have been removed from IMP::algebra::internal. Use equivalent functionality in the Eigen library instead.
IMP 2.14.0 release - All IMP.parallel worker classes are now subclasses of IMP.parallel.Worker; the old class names still exist as aliases, but are deprecated. - The IMP.kinematics module has had a major overhaul. - The Windows .exe installer now supports Python 3.9, and has dropped support for Python 3.5. - New applications of IMP are now available: - [Integrative structures of the Nef-CD4-AP2 complex](https://salilab.org/Nef_CD4_AP2/) - [Integrative Modeling of Yeast Exocyst Complex](https://salilab.org/exocyst/) - [Integrative threading of protein structure using secondary structure elements](https://salilab.org/SSEThread/) - Bugfix: fix near-infinite loop in FoXS JavaScript output when no models are fit. - Bugfix: IMP.saxs.Restraint should now work correctly when some or all particles are members of rigid bodies.
IMP 2.13.0 release - Ubuntu .deb packages now use Python 3 by default (install the imp-python2 package if you want to use Python 2) and support MPI (install the imp-openmpi package if you want to use the IMP::mpi or IMP::spb modules). - A binary package is now provided for Ubuntu 20.04 LTS, Focal Fossa. - The new IMP::sampcon module implements the protocol described in [Viswanath et al, 2017](https://www.ncbi.nlm.nih.gov/pubmed/29211988). This can be used in analysis to estimate the highest precision at which the sampling is exhaustive. - RMF files, particularly those output by IMP::pmi, now contain more information on the restraints used, such as restraint parameters, and links to non-Cartesian particles containing restraint information, such as Gaussians used to represent EM densities, or Bayesian nuisances. Much of this information can now be shown in [ChimeraX](https://www.rbvi.ucsf.edu/chimerax/) using the [RMF plugin](https://github.com/salilab/rmf_chimerax). - IMP modules that contain no C++ code can now be marked as "Python only" in `dependencies.py`. IMP::test, IMP::mmcif, IMP::parallel, IMP::EMageFit, IMP::pepdock, and IMP::saxs\_merge are so marked. This speeds up the build since such modules do not need to be run through SWIG or compiled, and saves space by eliminating their shared libraries. - The `crosslink_restraints` argument to IMP.pmi.macros.ReplicaExchange0 is now ignored (and deprecated). All cross-link restraints are now automatically added to RMF files. - The `CrossLinkDataBase` argument to IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint is deprecated. Use `database` instead. - IMP.pmi.restraints.crosslinking.CrossLinkingMassSpectrometryRestraint now takes a `linker` argument which can be used to specify the chemistry of the linker. - IMP.pmi.output.Output now supports output of pseudo-atomic PDBs in mmCIF format. This can be useful for quick visualization of output models that contain a large number of chains in software that does not understand the mmCIF IHM extension (for integrative models) or RMF. - IMP.pmi now has improved support for RNA/DNA (previously all nucleic acid residues were treated as RNA). IMP.pmi.topology.Molecule now takes an `alphabet` argument which can be used to specify any of the alphabets provided in the IMP.pmi.alphabets module (amino acids, RNA, or DNA) or a custom alphabet. - A new application of IMP is now available: - [Structural dynamics of the human COP9 signalosome revealed by cross-linking mass spectrometry and integrative modeling](https://salilab.org/CSN2019/) - 'Object "foo" never used' warnings are now emitted only when IMP is run with internal checks turned on, as these warnings are primarily intended for IMP developers, not end users. - Bugfix: fix infinite loop when reading some corrupt mol2 files.
IMP 2.12.0 release - The Windows .exe installer now supports Python 3.8, and has dropped support for Python 3.4. - Packages are no longer provided for Ubuntu 14.04 (Trusty Tahr) since it has reached end of life. - The IMP distribution now includes the IMP::bayesianem module developed at Institut Pasteur, Paris, for Bayesian handling of cryo-electron microscopy density map data. See Bonomi et al. at https://doi.org/10.1101/113951 for more information. - The old IMP::pmi::representation::Representation class has been removed from IMP.pmi. New applications should use IMP::pmi::topology::System instead. - The IMP::pmi::restraints::crosslinking::ISDCrossLinkMS class for handling crosslinking has been removed. Use IMP::pmi::restraints::crosslinking::CrossLinkingMassSpectrometryRestraint instead. - The `rg` tool (part of the IMP::saxs module, used to compute radius of gyration from a SAXS profile) is now called `compute_rg` for consistency with other SAXS tools and to avoid conflicts with other packages. - We now provide RPM packages for RedHat Enterprise Linux 8 (or compatible operating systems such as CentOS 8). - The RPM packages for RedHat Enterprise Linux 8 and for Fedora now use Python 3 by default. If you need Python 2, install the IMP-python2 package as well. - IMP::algebra::Rotation3D::get_derivative(), IMP::algebra::Rotation3D::get_gradient(), IMP::algebra::get_gradient_of_composed_with_respect_to_first(), and IMP::algebra::get_gradient_of_composed_with_respect_to_second() have been deprecated and are superseded by IMP::algebra::Rotation3D::get_gradient_of_rotated(), IMP::algebra::Rotation3D::get_jacobian_of_rotated(), IMP::algebra::get_jacobian_of_composed_wrt_first(), and IMP::algebra::get_jacobian_of_composed_wrt_second(), respectively. By default, the derivatives are now computed with respect to the unnormalized quaternion and do not include the normalization operation. - New methods are added to compute adjoint derivatives (reverse-mode sensitivities) for compositions and actions of IMP::algebra::Rotation3D and IMP::algebra::Transformation3D upon 3D vectors. - Fixed a bug in nested rigid body derivative accumulation, where derivatives with respect to quaternions were incorrectly projected to be orthogonal to the quaternion. - Reimplemented rigid body derivative accumulation to use the new adjoint methods. The many-argument versions of IMP::core::RigidBody::add_to_derivatives(), IMP::core::RigidBody::add_to_rotational_derivatives(), and IMP::core::NonRigidMember::add_to_internal_rotational_derivatives(), which previously pulled adjoints from member global reference frame to member local reference frame and parent global reference frame are now deprecated. Pullback functionality is now handled by IMP::core::RigidBody::pull_back_members_adjoints(). - IMP::isd::Weight is now constrained to the unit simplex, and methods were added for adding to its derivatives. IMP::isd::Weight::add_weight() no longer resets all the weights to the barycenter of the unit simplex and instead initializes the new weight to 0. IMP::isd::Weight::get_number_of_states() and IMP::isd::Weight::get_nstates_key() were deprecated and superseded by IMP::isd::Weight::get_number_of_weights() and IMP::isd::Weight::get_number_of_weights_key(), respectively.
IMP 2.11.1 release - Bugfix: fix build system failures with CMake 3.12 and 3.13, and on Windows. - Bugfix: IMP::atom::create_clone() now always copies mass, even of particles that are not atoms. - Bugfix: IMP::rmf::create_hierarchies() should no longer fail with "The filename cannot be empty".
IMP 2.11.0 release - A number of new tutorials are now available covering a variety of topics from modeling complexes with IMP::pmi to writing new C++ code. See the [tutorial index](https://integrativemodeling.org/tutorials/) for more details. - The build system has been updated to use new CMake functionality (if available) to detect Python. If you have CMake 3.12 or later, this should do a much better job of handling multiple Python installations (e.g. Macs with Homebrew). It will default to using Python 3. To force use of Python 2, pass `-DUSE_PYTHON2=on` to your CMake invocation. - CMake files are now provided to make it straightforward to use IMP as a library in other programs. See [the tutorial](https://integrativemodeling.org/tutorials/using_cpp/develop/) for more details. - CMake files are now provided to build new IMP modules outside of the IMP build tree (i.e. a module can be built against an IMP binary). - The IMP::OptionParser class has been removed. Use IMP::ArgumentParser instead. - The IMP::test::TempDir and IMP::test::RunInTempDir utility classes have been removed. Use the IMP::test::temporary_directory and IMP::test::temporary_working_directory context managers instead.
IMP 2.10.1 release - Add support for OpenCV 4. - Fix IMP::isd `create_gmm.py` script to handle command line options correctly. - Command line tools in the Mac and Ubuntu packages should now use system Python (`/usr/bin/python`), not the first Python (e.g. Anaconda Python) found in PATH (which might not be compatible with IMP's Python libraries).
IMP 2.10.0 release
- Applications using IMP::pmi should now use the IMP::pmi::topology::System
class to set up the system (sometimes referred to as "PMI2"), rather than
the older IMP::pmi::representation::Representation class ("PMI1").
This new class is faster and produces standard IMP Hierarchy objects. The
old PMI1-style classes are deprecated in this release and will be removed
in the next one. For support of published studies using "PMI1", a legacy
IMP::pmi1 module is provided (to use it, simply replace all imports of
"IMP.pmi" with "IMP.pmi1"). This module will receive only minor bug fixes,
and no new features.
- All IMP Python command line tools now use
[argparse](https://docs.python.org/2/library/argparse.html) rather than
[optparse](https://docs.python.org/2/library/optparse.html) for handling
options, as optparse is deprecated in modern Python versions. The
IMP::OptionParser class, which extends optparse to add standard IMP options,
is now deprecated. Use the similar IMP::ArgumentParser class instead.
- The bundled copy of [python-ihm](https://github.com/ihmwg/python-ihm) is
updated to the latest release. This supports faster (C-accelerated) reading
of mmCIF files, read and write support for BinaryCIF files, and support
for output of PMI2-style models. The new IMP::atom::read_mmcif function
allows reading a PDB file in mmCIF format, similarly to the existing
IMP::atom::read_pdb function.
- A new application of IMP is now available:
- [Architecture of Pol II(G) and molecular mechanism of transcription regulation by Gdown1](https://salilab.org/pol_ii_g/)
- The deprecated IMP::isd::FNormal::density() method has been removed.
Use IMP::isd::FNormal::get_density() instead.
- Handling of quaternions (for example in the calculation of rotational
derivatives) is now faster and more numerically stable.
- IMP::mpi now includes a workaround for an OpenMPI failure when used
with Python, so previous hacks (building OpenMPI with the
`--disable-dlopen` flag, or using `sys.setdlopenflags` in Python)
should no longer be necessary.
IMP 2.9.0 release - [Eigen](https://eigen.tuxfamily.org/) is now required to build IMP. - The Windows .exe IMP installer no longer supports Python 2.6. Python 2.7, 3.4, 3.5, and 3.6 are supported by this installer. - A binary package is now provided for Ubuntu 18.04 LTS, Bionic Beaver. - The IMP::atom::setup_as_rigid_body() function has been removed. Use IMP::atom::create_rigid_body() instead. - Constructors for IMP::container classes, IMP::core::BallMover, IMP::core::RigidBodyMover, and IMP::core::IncrementalScoringFunction taking a RigidBody or Particles have been removed. Use constructors taking ParticleIndexes instead. - The IMP::core::ConnectivityRestraint::get_connected_pairs() method has been removed. Use get_connected_index_pairs() instead. - The stats() profiling method has been removed from IMP::isd::GaussianProcessInterpolationRestraint and IMP::isd::MultivariateFNormalSufficient. Use a third party package (such as gperftools) for profiling instead. - Scores in IMP.saxs (and FoXS) now use the chi-square value rather than chi. - New applications of IMP are now available: - [Modeling of the entire yeast nuclear pore complex](https://salilab.org/npc2018), as well as [modeling of the flexible FG regions](https://salilab.org/npc_fg_2018) and modeling of the individual [Nup133](https://salilab.org/nup133), [Nup82](https://salilab.org/nup82), and [Pom152](https://salilab.org/pom152) subcomplexes. - [Modeling of the Ecm29-proteasome complex](https://salilab.org/ecm29) - The new modules IMP::npc and IMP::npctransport provide specialized restraints and other functionality for modeling static nuclear pore complex structures and transport through these structures, respectively, although may also be useful for other modeling applications. - IMP's mmCIF support for deposition of models in [PDB-Dev](https://pdb-dev.wwpdb.org/), in the IMP::pmi and IMP::mmcif modules, now utilizes the [python-ihm](https://github.com/ihmwg/python-ihm) library, a copy of which is included with IMP. - RMF files now store additional metadata, such as the primary sequence of each chain, software used, information on each restraint (such as fit values), and provenance (classes derived from IMP::core::Provenance) that describes transformations of the system, such as initial input from a PDB file, sampling, clustering, and filtering. - The new experimental IMP::mmcif module allows generating basic mmCIF files directly from an IMP::Model and/or RMF files.
IMP 2.8.0 release - New applications of IMP are now available: - [Modeling of the yeast Spindle Pole Body core](https://salilab.org/spb/) - [Modeling of the SEA complex, a modulator of the TORC1 pathway](https://salilab.org/sea/) - This will be the last release that includes packages for Ubuntu 12.04 (Precise Pangolin) since it has reached end of life. We will continue to provide packages for newer Ubuntu LTS releases. - The Anaconda and Windows .exe packages are now MPI-enabled. On Windows, in order to use MPI, install [MS-MPI](https://msdn.microsoft.com/en-us/library/bb524831.aspx). - IMP::em2d::PCAFitRestraint now uses binary PGM files as output, rather than the less well supported text PGM format. (It can still read both text and binary PGM files as input.) - IMP::em::FitRestraint::cast() is deprecated. Use `get_from()` instead. - The deprecated profiling (timing statistics) support has been removed. A number of third party packages (such as gperftools) are available for profiling and should be used instead. - The new module IMP::spb provides specialized restraints, samplers, and other objects to support modeling of the Spindle Pole Body (SPB). While designed specifically for this system, they may be useful for modeling similar systems.