Skip to content
Charles Greenberg edited this page Feb 28, 2016 · 1 revision

PMI2 Meeting

Jan 5, 2016

Attendance: Charles, Shruthi, Ilan, Seth, Riccardo(s), Daniel(s)

Related Files: Charles' keynote slides

Goals

  • Quick outline of PMI2 and functionality (get everyone back on track)
  • Identify critical missing elements
  • Propose useful additional functionality

Outcome

A long list of things to do, with some separation of priorities.We still need to divide up tasks. A follow-up meeting is planned for February.


PMI2 Elements

PMI2 is mainly meant to replace the Representation class of PMI1 with two classes (Topology and Degrees of Freedom) that separate the composition/constraints and movers, respectively. Its goal is to be more intuitive to use than IMP from a biological standpoint and more modular than PMI1 from a programming perspective.

Topology

IMP.pmi.topology

Topology is a way to build systems from the top down (System --> State --> Molecule --> Residue) and, using IMP or PMI selection tools, add different representation types and resolutions easily to the selected areas of the system Topology returns IMP hierarchies that can be used to both define movers (in DOF) and set restraints.

A major outstanding question is if the current structure can support dynamically updated resolutions and, if not, how we will do this.

Degrees of Freedom

IMP.pmi.dof

DOF creates movers and constraints (symmetry, rigid bodies) from within the IMP hierarchy using IMP or PMI selections. There is basic symmetry support (need tests).

One note is that nuisance particles (created with Restraints) can be movers, so we may want to add these to DOF to keep all movers in one place.

Restraints

IMP.pmi.restraints IMP.pmi.restraints_new

Most PMI restraints take a Representation class

Sampling

IMP.pmi.samplers

Currently, PMI2 uses the PMI1 MC sampling class. It works, so no need to rewrite it, however there are way too many options. MD is not supported. There is no way to restart a sampling run.

Can we change the mover parameters? There is a heuristic change of the MC step size based on acceptance ratio. It does not separate the Rot and trans steps in determining this. It would be nice to have a heuristic that assigns best max rot/trans based on size/shape of the particles.

Analysis

IMP.pmi.analysis

Not discussed at this meeting, however PMI1 contains clustering/precision/accuracy and plotting tools that are generally applicable to sampling output.


Critical Missing Elements

These items are necessary for full implementation of PMI2

Topology Representations

Currently ATOM and BEADS are the only supported representation types. Extend this to:

  • Gaussians (mandatory) Assigned: Charles
  • Ideal Helix (less mandatory, but should be straightforward) Assigned: Daniel

Input/Output

We need to develop a method to restore a session from a set of files. An RMF file contains insufficient information to restart a session. A specific limitation is that nuisance particles are not included, thus it is impossible to calculate the correct score from just the RMF. The SPB project utilizes a second RMF file. Assigned: Daniel

Restraints

Include support for PMI restraints. All restraints should be initialized with an IMP Hierarchy (or list of hierarchies, or list of PMI topology objects), but be backwards-compatible with Representation class.

  • Base Class - Implement a PMI Restraint base class to include: general output, get_degrees_of_freedom(), ... Assigned:
  • Connectivity Assigned: Charles/Riccardo
  • Excluded Volume Assigned: Daniel
  • EM Density Assigned: Charles
  • Cross-linking - There are many forms of XL data. All flavors of the XL restraint should have as input a standardized internal format (Riccardo's CrossLinkDataBase?) that users must convert their data to. Probably should create a CrossLinkRestraint base class (inherits from PMI Restraint) Assigned: Daniel

Movers in DOF

As explained above, determine some mechanism for adding nuisance particles from restraints into the DOF class. Either pass the DOF object to the restraint, or sth like dof.add_nuisance_from_restraint(restraint). Assigned:

Support for dynamically updated resolution

We would like to ensure support for the dynamic resolution method being developed by Shruthi. The IMP.atom.Representation decorator contains two values: (RepresentationType type, double resolution). Perhaps we need to create a PMI Representation base class (jeez...that'll get confusing) to handle this. Assigned:

Sample systems

More sample systems are better.

  • DNAPKcs - XL, EM, Ideal Helix, Nonlinear densities - Assigned: Daniel

Other things to implement

Non-(sequence)-linear volumetric/density selections

For example, in a helix-loop-helix motif, one may want to group the two adjacent helices as a single volume/bead and the loop as a different one. Ideally, an automated method that optimizes the spatial subdivisions would be useful. Assigned: Charles

Simple macro for building topology/DOF

Implement a macro (IMP.pmi.macros.BuildModel) for the basic user that take a set of input text files (topology file that contains components/resolutions/structure, DOF file for setting rigid bodies, etc...). Returns an IMP hierarchy and DOF. Assigned:

Shouldn't require fasta file when you set up the structure (get from PDB, fill in poly-A)

Assigned: Charles