Rosetta 3.3
Resfile syntax and conventions
Author:
Matthew O'Meara and Steven Lewis

This page describes the resfile format, syntax, and conventions. The resfile contains information which is input into the PackerTask and controls the Packer. Internal details for the commands can be found at the How to write new resfile commands residue-level options how-to.

New Features

There are new features compared to the resfile format in Rosetta++:

Syntax and Semantics

The outline of a resfile is

<header>

start

<body>

Throughout, the resfile has the following convetions:

Specify in the <header> section the commands that should be applied to all residues by default if no other commands are specified in the body. NOTE: Commands in this section are not applied to any residue which has a line in the body section. As a consequence, if the header commands include "EX 1" and then residue 10 has the behavior "ALLAAxc" in the body, then residue 10 will NOT get EX 1 behavior. Command line flags (e.g. "-ex1") will apply to all residues and can be used when the user wants to quickly specify global behavior.

For example:

# These commands will be applied to all residue positions that lack a specified behavior in the body:
ALLAA           # allow all amino acids
EX 1 EX 2       # allow extra chi rotameters at chi-id 1 and 2
USE_INPUT_SC    # allow the use of the input side chain conformation   ( see below for more detailed description of commands)
start
#... the body would continue here.

Body

Specify in the <body> section residue level information to be sent to the packer. Each line should have the following format,

<res-id> <one or more commands>

The <res-id> should be of the form <PDB residue id[insertion code]> <chain>. If the pose you are working with does not have chain information put "_" in for the chain. Insertion code is (of course) optional, and should only be one character. For example

10 _ PIKAA W  # Allow only Trp at residue 10 in the unlabeled chain
0 A NOTAA W   # ERROR: residue 0 is not allowed!
40 B NC ZN    # Allow zinc at residue 40 chain B
40A Q ALLAA   # Residue 40, insertion code A, on chain Q, use any residue type

Files

You can use resfiles with silent files, even though there's no PDB numbering or chain. Use raw residue numbering for the number field and count chains from A for the chains field.

Commands

Commands

Each command acts to restrict the allowed amino acids allowable at each position. If multiple commands are combined, only amino acids that are allowed by each command individually are included. This is a consequence of the commutativity property for operations on the PackerTask class.

 - ALLAA ................ allow all 20 amino acids INCLUDING the cystein amino acid (same as ALLAAwc)
 - ALLAAwc .............. allow all 20 amino acids ( default )
 - ALLAAxc .............. allow all amino acids except cystein
 - POLAR ................ allow only canonical polar amino acids
 - APOLAR ............... allow only canonical non polar amino acids
 - NOTAA <list of AAs> .. disallow only the specified amino acids ( use one letter codes )
 - PIKAA <list of AAs> .. allow only the specified amino acids ( use one letter codes )
 - NATAA ................ allow only the natural amino acid
 - NATRO ................ preserve the input rotamer (do not pack at all)
 - EMPTY ................ disallow all canonical amino acids ( for use with non canonicals )
 - NC <ResidueTypeName> . allow the specific possibly non canonical residue type
NATROT #default command that applies to everything without a non-default setting; do not repack
begin
10 A POLAR # consider polar amino acids at position 10
11 A POLAR PIKAA ACDEFGH # allow mutations to those in the intersection of two sets:
# ........................ the polar amino acids and { ALA, CYS, ASP, GLU, PHE, GLY & HIS}
# ........................ the intersection set {ASP, GLU, HIS}

Commands

 - NATRO  ...................................... fix natural rotamer ( fix identity and conformation )
 - EX (ARO) <chi-id> ( LEVEL <sample level> ) .. ( see below for detailed description
 - EX_CUTOFF <num-neighbors>  .................. about how to specify EX commands )
 - USE_INPUT_SC ................................ include native rotamer

commands for controlling the packer:

This miscellaneous commands have meanings to particular protocols, but not to all.

Rotamer Commands:

The packer considers discrete sampling of sidechain conformations; it samples discretely from the Dunbrack rotamer library, and by default, samples only at the center of the rotamer wells. The "extra" flags below control the inclusion of additional discrete samples.

Here are some examples:

10 B  EX 1 EX 2
9  B  EX 3      # WARNING: probably want to include EX 1 and EX 2 if EX 3 is specified!
8  B  EX ARO 2
7  B  EX ARO 3 # ERROR: ARO only works for chi ids 1 and 2
6  B  EX 1 LEVEL 7
13 B  EX 1 EX ARO 1 LEVEL 4 # include extra rotamers at chi 1 for all amino acids,
                            # but use sample level 4 for the aromatic amino acids

This resfile will provide packability at most locations, fixed rotamers at a few, and designability at a few. Note the liberal use of comments for clarity. NOTAA C is equivalent to ALLAAxc.

NATAA # this default command applies to all residues that are not given non-default commands
start
#anchor
81  B NATAA #anchor
82  B NATAA #anchor
83  B NATRO #anchor
84  B NATRO #anchor
85  B NATRO #anchor
86  B NATRO #anchor

#loops

#133  B NOTAA C #loop
134 B NOTAA C #loop
135 B NOTAA C #loop
136 B NOTAA C #loop
137 B NOTAA C #loop
138 B NOTAA C #loop
139 B NOTAA C #loop
140 B NOTAA C #loop
141 B NOTAA C #loop
142 B NOTAA C #loop
#143  B NOTAA C #loop
#144  B NOTAA C #loop
#145  B NOTAA C #loop

#77 B NOTAA C #loop
#78 B NOTAA C #loop
#79 B NOTAA C #loop
80  B NOTAA C #loop
#ANCHOR
87  B NOTAA C #loop
88  B NOTAA C #loop
#89 B NOTAA C #loop
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines