Back to SimpleMetrics page.

InteractionGraphSummaryMetric

Author: Vikram K. Mulligan (vmulligan@flatironinstitute.org) Page created 22 December 2018.

Description

The InteractionGraphSummaryMetric takes a pose and a number of task operations, carries out the steps of packer setup (generating rotamers for the pose and pre-computing the pairwise interaction energies to populate the interaction graph), and then constructs and stores a human- and machine-readable summary of the interaction graph. This is useful for experimenting with optimization or annealing approaches external to Rosetta. By default, the information includes everything necessary to reconstruct the initial pose. When used in conjunction with the ExternalPackerResultLoader mover, this allows a packing problem to be exported from Rosetta, run in an external optimizer or annealer, and the solutione re-imported into Rosetta to rebuild the packed pose.

Options

Autogenerated Tag Syntax Documentation:


A metric for writing out a description of the Rosetta-calculated interaction graph, which can be read in by external annealers or optimizers.

<InteractionGraphSummaryMetric name="(&string;)" custom_type="(&string;)"
        task_operations="(&task_operation_comma_separated_list;)"
        packer_palette="(&named_packer_palette;)" scorefxn="(&string;)"
        skip_pose_reconstruction_info="(false &bool;)" filename="(&string;)" />
  • custom_type: Allows multiple configured SimpleMetrics of a single type to be called in a single RunSimpleMetrics and SimpleMetricFeatures. The custom_type name will be added to the data tag in the scorefile or features database.
  • task_operations: A comma-separated list of TaskOperations to use.
  • packer_palette: A previously-defined PackerPalette to use, which specifies the set of residue types with which to design (to be pruned with TaskOperations).
  • scorefxn: Name of score function to use
  • skip_pose_reconstruction_info: If true, then this metric only stores a summary of the interaction graph. If false (the default), then it stores both the interaction graph summary and full information for reconstructing the pose. False by default.
  • filename: If this value is not empty, we will dump the IG summary to a file during calculation and simply return the filename as the return string. This results in a large amount of information being written directly to disk by each process. This will perform variable substituion on the "{rand}" substring such that "path/to/{rand}.txt" will result in something like "path/to/5748295.txt". The number will be different for each call so you can re-use the same metric without overwriting previous results.

Output format

The output resembles the following:

[BEGIN POSE BINARY]
# Binary-format information is included here which can be used
# to rebuild the input pose.  Note that this pose may or may not
# contain rotamers used in the packing problem.  This section is
# omitted if skip_pose_reconstruction_info is true.
[END POSE BINARY]

[BEGIN ROTAMER NAME/SEQPOS/ROTINDEX/CHIVALS]
# Information is included here about the geometry of each rotamer.
# This can be used to rebuild individual solutions to the packing
# problem.  This section is omitted if skip_pose_reconstruction_info
# is true.  This section is divided into information for individual
# rotamers with [BEGIN_ROT] ... [END_ROT] blocks.  Each block starts
# with a line in which the tab-separated columns are:
# 1. Residue name (e.g. "DSER:NtermProteinFull", "CYS:disulfide",
# "THR", etc.)
# 2. Sequence position in the pose.
# 3. Rotamer index for this sequence position.
# 4. Side-chain chi angle values for each rotatable dihedral in the
# side-chain for this rotamer at this position.
# This is followed by a block of binary information for the detailed
# three-dimensional geometry of this rotamer.
[END ROTAMER NAME/SEQPOS/ROTINDEX/CHIVALS]

[BEGIN ONEBODY SEQPOS/ROTINDEX/ENERGY]
# Entries in this section contain the information for individual
# nodes in the interaction graph (i.e. the one-body energies).  Each
# row in this section contains tab-separated columns consisting of:
# 1. Sequence position in the pose.
# 2. Rotamer index for this sequence position.
# 3. One-body energy for this rotamer at this sequence position.
# This section is intended to be easy to import into an external
# annealer.
[END ONEBODY SEQPOS/ROTINDEX/ENERGY]

[BEGIN TWOBODY SEQPOS1/ROTINDEX1/SEQPOS2/ROTINDEX2/ENERGY]
# Entries in this section contain the information for individual
# edges in the interaction graph (i.e. the two-body energies).  Each
# row in this section contains tab-separated columns consisting of:
# 1. The sequence position of the first interacting residue in the pose.
# 2. The rotamer index at the first sequence position.
# 3. The sequence position of the second interacting residue in the pose.
# 4. The rotamer index at the second sequence position
# 5. The interaction energy between the two rotamers.
# This section is also intended to be easy to import into an external
# annealer.

See also

  • SimpleMetrics -- Rosetta modules that allow properties of a pose to be computed and written to the logfile, or cached in the pose for output with structure files.
  • Task operations -- Rosetta modules that restrict the rotamers considered at each position when packing.
  • PackRotamersMover -- A mover that calls the Rosetta packer to optimize side-chain rotamers.
  • ExternalPackerResultLoader mover -- A mover to import a packer problem description and a solution file, which then rebuilds the pose and threads the packer solution onto it.