Back to Mover page.


Temporary Note: The increased repulsive feature presented at Rosettacon2018 can be found here.

Performs the fast relax protocol. This finds low-energy backbone and side-chain conformations near a starting conformations by performing many rounds of packing and minimizing, with the repulsive weight in the scoring function gradually increased from a very low value to the normal value from one round to the next.


Autogenerated Tag Syntax Documentation:

Performs the fast relax protocol

<FastRelax name="(&string;)" scorefxn="(&string;)"
        disable_design="(true &bool;)"
        task_factory="(&string;)" packer_palette="(&named_packer_palette;)"
        repeats="(5 &integer;)" relaxscript="(default &string;)"
        cst_file="(&string;)" batch="(false &bool;)" cartesian="(false &bool;)"
        dualspace="(false &bool;)"
        movemap_disables_packing_of_fixed_chi_positions="(false &bool;)"
        ramp_down_constraints="(false &bool;)" bondangle="(false &bool;)"
        bondlength="(false &bool;)"
        min_type="(lbfgs_armijo_nonmonotone &minimizer_type;)"
        movemap_factory="(&string;)" >
    <MoveMap name="(&string;)" bb="(&bool;)" chi="(&bool;)" jump="(&bool;)" >
        <Jump number="(&non_negative_integer;)" setting="(&bool;)" />
        <Chain number="(&non_negative_integer;)" chi="(&bool;)" bb="(&bool;)" />
        <Span begin="(&non_negative_integer;)" end="(&non_negative_integer;)"
                chi="(&bool;)" bb="(&bool;)" bondangle="(&bool;)" bondlength="(&bool;)" />
        <ResidueSelector selector="(&string;)" chi="(&bool;)" bb="(&bool;)"
                bondangle="(&bool;)" bondlength="(&bool;)" />
  • scorefxn: Name of score function to use
  • disable_design: Do not perform design even if a resfile is specified
  • task_operations: A comma-separated list of TaskOperations to use.
  • task_factory: A TaskFactory specification 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).
  • repeats: Same as cmd-line FR. Number of fastrelax repeats to perform
  • relaxscript: a filename for a relax script, as described in the documentation for the Relax application; the default relax script is used if not specified
  • cst_file: Add constraints from the constraint file
  • batch: Perform BatchRelax?
  • cartesian: Use cartesian minimization
  • dualspace: Use dualspace minimization
  • movemap_disables_packing_of_fixed_chi_positions: If true, positions that are prohibited from undergoing sidechain minimization by the movemap are ALSO prohibited from packing. False by default.
  • ramp_down_constraints: Ramp down constraint weights over the course of the protocol
  • bondangle: Minimize bond angles
  • bondlength: Minimize bond lengths
  • min_type: Minimizer type to use
  • delete_virtual_residues_after_FastRelax: Should virtual residues be deleted when the protocol completes?
  • movemap_factory: The name of the already-defined MoveMapFactory that will be used to alter the default behavior of the MoveMap. By default, all backbone, chi, and jump DOFs are allowed to change. A MoveMapFactory can be used to change which of those DOFs are actually enabled. Be warned that combining a MoveMapFactory with a MoveMap can result in unexpected behavior. The MoveMap provided as a subelement of this element will be generated, and then the DOF modifications specified in the MoveMapFactory will be applied afterwards. E.g., if the MoveMap says to allow bb flexibility for res 1-10, and then the MoveMapFactory says to disable all bb flexibility, the MoveMapFactory modification will happen second, and this second modification will completely override the MoveMap's initial instructions. Pay attention to the precedence rules of the MoveMap. If high-level instructions (e.g. 'apply to all') are performed after low-level instructions, then the low-level instructions are erased. If low-level instructions (e.g. 'apply to a particular residue') are performed after a high-level instructions, the low-level instructions override the high-level instructions. E.g., if there are 100 residues, then the instruction 'all-all-bb' followed by 'disable-bb-for-residues-10-to-30' followed by the instruction 'allow-bb-for-bb-dihedral-number-3-for-residue-15' will mean that residues 1-9 will be allowed backbone flexibility, and residues 31-100, too, and that only backbone dihedral 3 on residue 15 will have flexibility among the residues from 10 to 30. However, if a final instruction 'disallow-all-bb' is given, then no backbone dihedrals will be free, not even dihedral 3 on residue 15.

Subtag MoveMap: MoveMap specification

  • bb: move backbone torsions?
  • chi: move sidechain chi torsions?
  • jump: move all jumps?

Subtag Jump: jumps are the not-chemistry internal coordinate connections between separate parts of your pose

  • number: (REQUIRED) Which jump number (in the FoldTree)
  • setting: (REQUIRED) true for move, false for don't move

Subtag Chain: this controls a kinematically contiguous chain (think protein chains)

  • number: (REQUIRED) which chain?
  • chi: (REQUIRED) move sidechain chi torsions?
  • bb: (REQUIRED) move backbone torsions?

Subtag Span: XRW TO DO, probably a user-defined region of the Pose

  • begin: (REQUIRED) beginning of span
  • end: (REQUIRED) end of span
  • chi: (REQUIRED) move sidechain chi torsions?
  • bb: (REQUIRED) move backbone torsions?
  • bondangle: move 3-body angles?
  • bondlength: move 2-body lengths?

Subtag ResidueSelector: Residue selector defined region of the Pose.

  • selector: (REQUIRED) Residue selector
  • chi: (REQUIRED) move sidechain chi torsions?
  • bb: (REQUIRED) move backbone torsions?
  • bondangle: move 3-body angles?
  • bondlength: move 2-body lengths?

The MoveMap (for FastRelax) is initially set to minimize all degrees of freedom. The movemap lines are read in the order in which they are written in the xml file, and can be used to turn on or off dofs. The movemap is parsed only at apply time, so that the foldtree and the kinematic structure of the pose at the time of activation will be respected.

Relax Scripts

For a list of relax scripts in the database, click here.

Irrelevant command-line options

See the relax application page for more information on these options. These options ARE NOT INTERPRETED by the FastRelax Mover; they are interpreted by wrapping code in the relax protocol instead. If you are using FastRelax in XML you will need several other movers to achieve this effect.

  • -relax:constrain_relax_to_start_coords
  • -relax:constrain_relax_to_native_coords
  • -relax:ramp_constraints


  • Although the relax application can read a movemap from the -in:file:movemap option, the RosettaScripts mover ignores it. Instead you must use the <MoveMap> syntax described above.
  • cartesian: To enable Cartesian minimization (i.e if you get the ERROR: Scorefunction not set up for nonideal/Cartesian scoring) you must set cart_bonded to 0.5 and pro_close to 0.0.


FastRelax is fully symmetry compatible and no special considerations are needed.

Deprecated behaviours

Until 8 February 2020, the default behaviour of FastRelax was to disable packing at all positions for which side-chain minimization was disabled by the MoveMap. This is counter-intuitive, since in all other cases, MoveMaps control only minimization, and not packing. (Packing is normally controlled by TaskOperations). This behaviour has therefore been deprecated. It can still be re-enabled using the movemap_disables_packing_of_fixed_chi_positions="true" option in RosettaScripts.

See Also