Skip to content

Commit

Permalink
Merge for 2.9.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
benmwebb committed Jun 26, 2018
2 parents 84be5cb + e9036d3 commit 0c62344
Show file tree
Hide file tree
Showing 2,465 changed files with 75,747 additions and 109,801 deletions.
1 change: 0 additions & 1 deletion .gitignore
Expand Up @@ -22,5 +22,4 @@ applications/*/CMakeLists.txt
tools/build/cmake_files/MakeContainers.cmake
Files.cmake
.DS_Store
modules/npctransport/
.#*
6 changes: 6 additions & 0 deletions .gitmodules
@@ -0,0 +1,6 @@
[submodule "modules/npctransport"]
path = modules/npctransport
url = https://github.com/salilab/npctransport.git
[submodule "components/pathway_mapping"]
path = components/pathway_mapping
url = https://github.com/salilab/pathway_mapping.git
2 changes: 1 addition & 1 deletion .travis.yml
Expand Up @@ -48,7 +48,7 @@ git:

before_install:
- sudo apt-get update -qq
- sudo apt-get install -qq libboost$BOOST-all-dev swig libhdf5-serial-dev
- sudo apt-get install -qq libboost$BOOST-all-dev swig libhdf5-serial-dev libeigen3-dev
- ./setup_git.py

script:
Expand Down
10 changes: 7 additions & 3 deletions CMakeLists.txt
Expand Up @@ -64,9 +64,7 @@ cmake_policy(SET CMP0017 NEW)
endif(POLICY CMP0017)

# Don't set MACOSX_RPATH by default
if(POLICY CMP0042)
cmake_policy(SET CMP0042 OLD)
endif(POLICY CMP0042)
set(CMAKE_MACOSX_RPATH 0)

# Stop cmake warning about files in the build directory it didn't create
# (see issue #909)
Expand Down Expand Up @@ -277,6 +275,12 @@ if(NOT IMP_STATIC)
find_package(OpenMP3)
endif()

find_package(Eigen3 3.0 REQUIRED)
# Add Eigen3 to 'system' include path. Amongst other things, this will suppress
# many compiler warnings about Eigen code which a) clutter the output and
# b) we're not going to fix, since Eigen isn't our code.
include_directories(SYSTEM ${EIGEN3_INCLUDE_DIR})

add_custom_target("IMP-version"
COMMAND ${CMAKE_SOURCE_DIR}/tools/build/make_version.py --source=${CMAKE_SOURCE_DIR}
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
Expand Down
45 changes: 43 additions & 2 deletions ChangeLog.md
@@ -1,6 +1,47 @@
ChangeLog {#changelog}
=========

# 2.9.0 - 2018-07-02 # {#changelog_2_9_0}
- [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.

# 2.8.0 - 2017-08-16 # {#changelog_2_8_0}
- New applications of IMP are now available:
- [Modeling of the yeast Spindle Pole Body core](https://salilab.org/spb/)
Expand Down Expand Up @@ -32,7 +73,7 @@ ChangeLog {#changelog}
- 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
[PDB-Dev](https://pdb-dev.wwpdb.org/). 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
Expand All @@ -50,7 +91,7 @@ ChangeLog {#changelog}
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()
(IMP::test::temporary_directory() and IMP::test::temporary_working_directory()
respectively).

# 2.6.2 - 2016-05-25 # {#changelog_2_6_2}
Expand Down
2 changes: 1 addition & 1 deletion README.md
Expand Up @@ -31,7 +31,7 @@ new shell.
Copyright and License information
=================================

IMP is Copyright 2007-2017 IMP Inventors. The IMP Inventors are
IMP is Copyright 2007-2018 IMP Inventors. The IMP Inventors are
Andrej Sali, Ben Webb, Daniel Russel, Keren Lasker, Dina Schneidman,
Javier Velázquez-Muriel, Friedrich Förster, Elina Tjioe, Hao Fan,
Seung Joong Kim, Yannick Spill, Riccardo Pellarin.
Expand Down
2 changes: 1 addition & 1 deletion VERSION
@@ -1 +1 @@
2.8.0
2.9.0
2 changes: 2 additions & 0 deletions components/README.md
@@ -0,0 +1,2 @@
This directory contains additional components for integrative modeling
that are not IMP modules.
1 change: 1 addition & 0 deletions components/pathway_mapping
Submodule pathway_mapping added at 81911e
12 changes: 9 additions & 3 deletions doc/manual/biosystem.md
Expand Up @@ -23,13 +23,19 @@ We recommend the following contents for your repository (see the
for an example):

- subdirectories containing
- your modeling protocol (generally one or more Python scripts)
- your modeling protocol (generally one or more Python scripts).
- input files (e.g. PDB files, EM density maps, lists of crosslinks),
especially if these files aren't in a database somewhere already
especially if these files aren't in a database somewhere already.
If these inputs are derived in some fashion (e.g. you use a PDB file as
input that's a comparative model or docking result, or you use an EM map
that's been segmented) then this needs to be described somewhere, with
links to the original unmodified files (e.g. PDB IDs for templates of any
comparative models, alignment files, Modeller scripts).
- outputs (trajectories, clusters, analysis). Where this isn't possible
due to size, we can host the larger files, such as trajectories, elsewhere
(e.g. as a dataset in [Zenodo](https://zenodo.org)) and link to them
from the repository.
from the repository. Aim to keep the repository below 1GB in size so that
it's manageable.
- a top-level `%README.md` file describing the system and explaining how to
run the protocol.
- a top-level `LICENSE` file with the license for the data files and scripts.
Expand Down
2 changes: 1 addition & 1 deletion doc/manual/cnmultifit_groel.dox
Expand Up @@ -97,7 +97,7 @@ It also generates a file <tt>multifit.output</tt> that shows the
transformation needed to place the subunit in the density.

The optional <tt>--chimera</tt> parameter requests the same transformation
output in a \external{http://www.cgl.ucsf.edu/chimera/,Chimera}-compatible
output in a \external{https://www.cgl.ucsf.edu/chimera/,Chimera}-compatible
format. To generate PDB files from the Chimera output file, use:

\code{.sh}
Expand Down
2 changes: 1 addition & 1 deletion doc/manual/design.md
Expand Up @@ -17,7 +17,7 @@ The next parts of the manual will cover the use of the various parts of
- [Chimera tools/web services](@ref web_services):
we provide a number of web services that
use %IMP at [https://salilab.org/](https://salilab.org). Additionally,
the [UCSF Chimera](http://www.cgl.ucsf.edu/chimera/) software includes
the [UCSF Chimera](https://www.cgl.ucsf.edu/chimera/) software includes
several tools that use %IMP. These are the simplest to use because they
do not require an %IMP installation.

Expand Down
34 changes: 0 additions & 34 deletions doc/manual/eigen.md

This file was deleted.

7 changes: 5 additions & 2 deletions doc/manual/installation.md
Expand Up @@ -24,6 +24,7 @@ In order to build %IMP from source, you will need:

- [CMake](https://cmake.org) (2.8 or later)
- [Boost](http://www.boost.org) (1.41 or later)
- [Eigen](https://eigen.tuxfamily.org/) (3.0 or later)
- [HDF5](https://support.hdfgroup.org/HDF5/) (1.8 or later; 1.10 should also
work)
- [Python](https://www.python.org) (2.6 or later, or any version of Python 3)
Expand All @@ -41,7 +42,7 @@ will not build, and some will not function optimally.
nonbonded lists.
- [Google perf tools](\ref perf): needed only for profiling %IMP code.
- [ANN](\ref ANN): certain data structures will be faster if it is available.
- [GSL](\ref GSL): needed to use the IMP.gsl module.
- [GSL](\ref GSL) (1.13 or later): needed to use the IMP.gsl module.
- [OpenCV](\ref OpenCV) (2.1 or later): needed to use the IMP.em2d module or the
[idock](@ref idock_pcsk9) and [emagefit](@ref emagefit_3sfd) command
line tools.
Expand All @@ -50,6 +51,8 @@ will not build, and some will not function optimally.
- [libTAU](https://integrativemodeling.org/libTAU.html): needed to use the
IMP.cnmultifit module or the [cnmultifit](@ref cnmultifit_groel) command
line tool.
- [Protobuf](https://github.com/google/protobuf): needed to use the
IMP.npctransport module.
- An [MPI](@ref IMP::mpi) library is needed to use the IMP.mpi module.
- The [numpy, scipy](http://www.scipy.org/scipylib/download.html),
[scikit-learn](http://scikit-learn.org/stable/install.html),
Expand Down Expand Up @@ -80,7 +83,7 @@ such as

brew tap homebrew/science
brew tap salilab/salilab
brew install boost gmp google-perftools cgal graphviz gsl cmake doxygen hdf5 swig fftw mpfr opencv libtau
brew install boost gmp google-perftools cgal graphviz gsl cmake doxygen hdf5 swig fftw mpfr opencv libtau eigen

to install everything %IMP finds useful (or that you will want for installing various useful Python libs that %IMP finds useful). On older Macs, you may also need to `brew install git` if you want to use git (newer Macs include git).
- [Macports](http://www.macports.org/) If you use MacPorts, you must add `/opt/local/bin` to your path (either by modifying your shell's
Expand Down
2 changes: 1 addition & 1 deletion doc/manual/licenses.md
@@ -1,7 +1,7 @@
Copyright and licenses {#licenses}
======================

%IMP is Copyright 2007-2017 %IMP Inventors. The %IMP Inventors are
%IMP is Copyright 2007-2018 %IMP Inventors. The %IMP Inventors are
Andrej Sali, Ben Webb, Daniel Russel, Keren Lasker, Dina Schneidman,
Javier Velázquez-Muriel, Friedrich Förster, Elina Tjioe, Hao Fan,
Seung Joong Kim, Yannick Spill, Riccardo Pellarin.
Expand Down
1 change: 0 additions & 1 deletion doc/manual/mainpage.dox
Expand Up @@ -93,7 +93,6 @@ complex might want to skip ahead to
- [Close pairs lists](@ref close_pairs)
- [RMF](@ref rmf)
- [Building](@ref building)
- [Eigen](@ref eigen)
- [git submodules and subtrees](@ref subtree)

- [Copyright and licenses](@ref licenses)
Expand Down
6 changes: 3 additions & 3 deletions doc/manual/multi_foxs.dox
Expand Up @@ -33,10 +33,10 @@ print(IMP.multi_foxs.get_example_path('rpa'))</tt>'.
\section multi_foxs_calc Calculation

The structure of the RPA in complex with ssDNA is available in the
\external{http://www.pdb.org,RCSB Protein Data Bank (PDB)} as code
\external{http://www.pdb.org/pdb/explore/explore.do?structureId=1JMC,1jmc}
\external{https://www.rcsb.org/,RCSB Protein Data Bank (PDB)} as code
\external{https://www.rcsb.org/structure/1JMC,1jmc}
(file <tt>1jmc.pdb</tt>), the unbound RPA structures are available as code
\external{http://www.pdb.org/pdb/explore/explore.do?structureId=1FGU,1fgu}
\external{https://www.rcsb.org/structure/1FGU,1fgu}
(file <tt>1fguA.pdb</tt>, <tt>1fguB.pdb</tt>), while the SAXS profile is given in the <tt>weighted.dat</tt> file. The SAXS profile was simulated from the 3 structures with the following weights:

\verbatim
Expand Down
2 changes: 1 addition & 1 deletion doc/manual/multifit_3sfd.dox
Expand Up @@ -118,7 +118,7 @@ each Gaussian. For example, with 50 residues per Gaussian, a 170-residue
protein should use 3 Gaussians and a 260-residue protein should use
5 Gaussians.) The reduced representation is written out as a PDB file
containing fake CA atoms, where each CA corresponds to a single anchor point,
and also as a \external{http://www.cgl.ucsf.edu/chimera/,Chimera} cmm file.
and also as a \external{https://www.cgl.ucsf.edu/chimera/,Chimera} cmm file.

\section multifit_3sfd_fit_fft Fit each protein to the map

Expand Down
2 changes: 1 addition & 1 deletion doc/manual/rnapolii_stalk.dox
Expand Up @@ -32,7 +32,7 @@ packages installed in addition to [IMP itself](@ref installation):
- [Chimera](https://www.cgl.ucsf.edu/chimera/download.html)
for visualization of results

(If you are using [Anaconda Python](https://store.continuum.io/cshop/anaconda/),
(If you are using [Anaconda Python](https://www.anaconda.com/download/),
you can get the Python packages above by simply running
`conda install numpy scipy scikit-learn matplotlib`.
On a Mac you can get them using the
Expand Down
6 changes: 3 additions & 3 deletions doc/manual/web_services.md
Expand Up @@ -6,11 +6,11 @@ They are the simplest to use because they do not require an %IMP installation.

# Chimera tools

The [UCSF Chimera](http://www.cgl.ucsf.edu/chimera/) software includes
The [UCSF Chimera](https://www.cgl.ucsf.edu/chimera/) software includes
several tools that use %IMP:

- [Small-Angle X-Ray Profile](http://www.cgl.ucsf.edu/chimera/current/docs/ContributedSoftware/saxs/saxs.html): calculate a theoretical small-angle X-ray scattering (SAXS) profile from a set of atoms
- [MultiFit](http://www.cgl.ucsf.edu/chimera/current/docs/ContributedSoftware/multifit/multifit.html): perform simultaneous rigid fitting of multiple atomic-resolution structures into density maps at resolutions as low as 25 Å.
- [Small-Angle X-Ray Profile](https://www.cgl.ucsf.edu/chimera/current/docs/ContributedSoftware/saxs/saxs.html): calculate a theoretical small-angle X-ray scattering (SAXS) profile from a set of atoms
- [MultiFit](https://www.cgl.ucsf.edu/chimera/current/docs/ContributedSoftware/multifit/multifit.html): perform simultaneous rigid fitting of multiple atomic-resolution structures into density maps at resolutions as low as 25 Å.

In addition, UCSF Chimera is able to read [RMF files](https://integrativemodeling.org/rmf/)
generated by %IMP.
Expand Down
3 changes: 0 additions & 3 deletions modules/algebra/README.md
Expand Up @@ -58,9 +58,6 @@ straightforward, it is not available as a package for common platforms.
In addition, ANN must be built as a shared library rather than a static
library.

# Eigen # {#Eigen}
We ship a copy of Eigen as part of IMP as Eigen support varies quite considerably across platforms and it is header-only and so easy to ship. Our version of Eigen has been patched to move everything to the `IMP_Eigen` namespace and preprocessor symbols to start with `IMP_EIGEN_` so that things do not conflict with system installs of Eigen.

# Info

_Author(s)_: Daniel Russel, Keren Lasker, Ben Webb, Javier Angel Velázquez-Muriel
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/benchmark/benchmark_grid_traversal.cpp
@@ -1,5 +1,5 @@
/**
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*/
#include <IMP/benchmark/benchmark_config.h>
#include <IMP/benchmark/benchmark_macros.h>
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/benchmark/benchmark_knn.cpp
@@ -1,5 +1,5 @@
/**
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*/

#include <IMP/algebra.h>
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/benchmark/benchmark_rotate.cpp
@@ -1,5 +1,5 @@
/**
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*/
#include <IMP/algebra.h>
#include <boost/timer.hpp>
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/benchmark/benchmark_surface.cpp
@@ -1,5 +1,5 @@
/**
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*/

#include <IMP/algebra/connolly_surface.h>
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/examples/grid.cpp
Expand Up @@ -2,7 +2,7 @@
* \example grid.cpp
* \brief Show some of the basics of using a grid from C++.
*
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*
*/
#include <IMP/algebra/standard_grids.h>
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/include/BoundingBoxD.h
@@ -1,7 +1,7 @@
/**
* \file IMP/algebra/BoundingBoxD.h \brief A bounding box in D dimensions.
*
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*
*/

Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/include/Cone3D.h
Expand Up @@ -2,7 +2,7 @@
* \file IMP/algebra/Cone3D.h
* \brief Represent a cone in 3D.
*
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*/

#ifndef IMPALGEBRA_CONE_3D_H
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/include/Cylinder3D.h
Expand Up @@ -2,7 +2,7 @@
* \file IMP/algebra/Cylinder3D.h
* \brief Represent a cylinder in 3D.
*
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*/

#ifndef IMPALGEBRA_CYLINDER_3D_H
Expand Down
2 changes: 1 addition & 1 deletion modules/algebra/include/Ellipsoid3D.h
@@ -1,7 +1,7 @@
/**
* \file IMP/algebra/Ellipsoid3D.h \brief Simple 3D ellipsoid class.
*
* Copyright 2007-2017 IMP Inventors. All rights reserved.
* Copyright 2007-2018 IMP Inventors. All rights reserved.
*
*/

Expand Down

0 comments on commit 0c62344

Please sign in to comment.