这个案例创建了一个 10 个氨基酸的环肽,在 N末端和 C末端 之间产生二硫键。
随后定义了一个loop,从3位氨基酸开始,向后到 1位氨基酸,通过二硫键到 10位氨基酸,然后返回到 5位氨基酸。此loop通过KIC进行闭合,并采样loop构象。一个bump check filter被应用(AddFilter type="loop_bump_check"),并随机选择一个solution(selector="random_selector")。
代码语言:javascript复制 <ROSETTASCRIPTS>
<TASKOPERATIONS>
</TASKOPERATIONS>
<SCOREFXNS>
<ScoreFunction name="tala" weights="talaris2013" symmetric="0" />
</SCOREFXNS>
<FILTERS>
</FILTERS>
<MOVERS>
<PeptideStubMover name="pep_stub" reset="1">
<Append resname="CYD" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="ALA" />
<Append resname="CYD" />
</PeptideStubMover>
<SetTorsion name="tor1">
<Torsion residue="ALL" torsion_name="phi" angle="-64.7"/>
<Torsion residue="ALL" torsion_name="psi" angle="-41.0"/>
<Torsion residue="ALL" torsion_name="omega" angle="180"/>
</SetTorsion>
<SetTorsion name="tor2">
<Torsion residue="pick_atoms" angle="random">
<Atom1 residue="1" atom="N"/>
<Atom2 residue="1" atom="CA"/>
<Atom3 residue="1" atom="CB"/>
<Atom4 residue="1" atom="SG"/>
</Torsion>
<Torsion residue="pick_atoms" angle="random">
<Atom1 residue="10" atom="N"/>
<Atom2 residue="10" atom="CA"/>
<Atom3 residue="10" atom="CB"/>
<Atom4 residue="10" atom="SG"/>
</Torsion>
</SetTorsion>
<DeclareBond name="bond" res1="1" atom1="SG" res2="10" atom2="SG"/>
<GeneralizedKIC name="genkic" closure_attempts="200" stop_when_n_solutions_found="0" selector="random_selector">
<AddResidue res_index="3" />
<AddResidue res_index="2" />
<AddResidue res_index="1" />
<AddResidue res_index="10" />
<AddResidue res_index="9" />
<AddResidue res_index="8" />
<AddResidue res_index="7" />
<AddResidue res_index="6" />
<AddResidue res_index="5" />
<SetPivots res1="3" atom1="CA" res2="1" atom2="SG" res3="5" atom3="CA" />
<CloseBond prioratom_res="10" prioratom="CB" res1="10" atom1="SG" res2="1" atom2="SG" followingatom_res="1"followingatom="CB" bondlength="2.05" angle1="103" angle2="103" randomize_flanking_torsions="true" />
<AddPerturber effect="randomize_alpha_backbone_by_rama">
<AddResidue index="3" />
<AddResidue index="2" />
<AddResidue index="1" />
<AddResidue index="10" />
<AddResidue index="9" />
<AddResidue index="8" />
<AddResidue index="7" />
<AddResidue index="6" />
<AddResidue index="5" />
</AddPerturber>
<AddFilter type="loop_bump_check" />
</GeneralizedKIC>
</MOVERS>
<APPLY_TO_POSE>
</APPLY_TO_POSE>
<PROTOCOLS>
<Add mover="pep_stub"/>
<Add mover="tor1"/>
<Add mover="tor2"/>
<Add mover="bond"/>
<Add mover="genkic"/>
</PROTOCOLS>
</ROSETTASCRIPTS>
GeneralizedKIC 不能处理以下情况
- 链中的单对氨基酸之间的多个共价连接。(一般来说,rosetta并不擅长此方面)。
- 涉及盐桥、cation-pi 相互作用、氢键或其他非共价相互作用的loop。(但是,Generalized KIC框架考虑到了这一点,作为未来可能的扩展)请注意,在罗塞塔中,金属结合氨基酸和金属离子之间的配位键被视为"共价键",并且可以由Generalized KIC正确处理。