GeneralizedKIC perturbers alter the chain to be closed in some way prior to kinematic closure. They can only act on the chain to be closed, and have no effect on tail residues or on any other part of the input structure. Perturbers are applied in the order that they are defined. Different perturbers may alter the same degrees of freedom, sequentially.
Certain types of perturbers operate on residues, and require a list of one or more residues to be specified with AddResidue tags. Other perturbers operate on degrees of freedom defined by sets of atoms, and require that these degrees of freedom be defined with AddAtoms tags, which can contain lists of 1, 2, 3, or 4 atoms, depending on the type of degree of freedom. In both cases, some perturbers also require that one or more values be specified with AddValues tags. Details for particular perturbers are below. Note that shorthands exist for certain perturbers or common perturber combinations (see below). Examples for residue-based and atom-based perturbers are shown here:
<GeneralizedKIC ...>
...
#A residue-based perturber:
<AddPerturber effect="&string">
<AddResidue index="(&int)" />
<AddResidue index="(&int)" />
<AddResidue index="(&int)" />
...
<AddValue value="(&Real)" />
<AddValue value="(&Real)" />
<AddValue value="(&Real)" />
...
</AddPerturber>
#An atom-based perturber taking four atoms per degree of freedom:
<AddPerturber effect="&string">
<AddAtoms res1="(&int)" atom1="&string" res2="(&int)" atom2="&string" res3="(&int)" atom3="&string" res4="(&int)" atom4="&string" />
<AddAtoms res1="(&int)" atom1="&string" res2="(&int)" atom2="&string" res3="(&int)" atom3="&string" res4="(&int)" atom4="&string" />
<AddAtoms res1="(&int)" atom1="&string" res2="(&int)" atom2="&string" res3="(&int)" atom3="&string" res4="(&int)" atom4="&string" />
...
<AddValue value="(&Real)" />
<AddValue value="(&Real)" />
<AddValue value="(&Real)" />
...
</AddPerturber>
...
</GeneralizedKIC>
rama_prepro
energy term uses (effect="randomize_backbone_by_rama_prepro")Certain perturbers or perturber combinations have convenient shorthands. For example, a common operation is to set a bond length and two flanking bond angles in order to close an open bond. Currently-defined shorthands include:
<GeneralizedKIC ...>
...
<CloseBond prioratom=&string" prioratom_res="(&int)" atom1="&string" res1="(&int)" atom2="&string" res2="(&int)" followingatom="&string" followingatom_res="(&int)" bondlength="(&Real)" angle1="(&Real)" angle2="(&Real)" torsion="(&Real)" randomze_flanking_torsions="(false, &bool)" />
...
</GeneralizedKIC>
<GeneralizedKIC ...>
...
<SampleCisPeptideBond cis_prob="(&Real)">
<AddResidue index="(&int)" />
<AddResidue index="(&int)" />
<AddResidue index="(&int)" />
...
</SampleCisPeptideBond>
...
</GeneralizedKIC>