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

PMI Development Meeting

May 19, 2015

Attendance: Charles, Daniel, Ilan, Peter, SJ, Leon, Riccardo(s)

Charles leading discussion of current state of PMI and PMI2

PMI is an easier interface into IMP

Things in IMP are written from a programmer's standpoint (beads, hierarchies, children, restraints). PMI is meant to think more like a protein scientist (sequence, PDB, data).

Representation Class

Current limitations:

  • Very rigid. Easy to set up rigid PDB's, flexible beads. Hard to do all-atom; select
  • Selection is tough (e.g. select all pieces with resolution = 10)
    • RMF's are tough to read
  • BuildModel Macro requires a script to work. This is weird.

Restraints

Requires a representation class to be passed...this is bad b/c you may want to use an RMF instead or if you created a macro some other way.

Sampling

ReplicaExchange0 macro takes representation class; movers

PMI 2 Overview

new representation class

  • System>state>molecule/copy/copy
  • Produces native IMP hierarchy
  • Only beads. No secondary structure, gaussians. Cannot represent a single volumetric representation of two spatially, but not sequentially adjacent segments (merge_type="backbone").

Molecule - stores a list of residues Can utilize this to get residue ranges using functions or through pythonic ( m1[2:5] ) ways. We utilize this to add resolutions.

  • No support for creating atomic coordinates for residues not included in atomic-resolution PDB files. Currently, we can separate atomic and non-atomic parts.

--build-- returns IMP hierarchy

Degrees of Freedom Class

Choosing sample objects. Should work on any IMP hierarchy.

Can have totally different restraints on different states.

DoF class can be passed to sampler...will contain hierarchy. Where are coordinates?

Notes:

Can we use RMF as a way to store everything. Representation/restraints. BEcause restraints require representation

What is the macro-level interface? Write simplest script to run one of our examples (RNAPOLII) and see what we would want to add.

  • Add coordinates
  • Add representation (default and manually added) - what manual addition?
  • Add DoF (default and manually added)
  • Add restraints (just input type of data)
  • Sampling
  • Analysis