GeneralizedKIC loop closure error

Member Site Forums Rosetta 3 Rosetta 3 – Applications GeneralizedKIC loop closure error

Viewing 2 reply threads
  • Author
    Posts
    • #3744
      Anonymous

        Dear Rosetta Community,

        I am trying to generate conformations for a 29 residue cyclic peptide with N-C terminal cyclisation. I’ve written a Rosetta Script that declares a bond between the N and C terminals and then performs a loop closure based on GeneralizedKIC.

        However I am facing the following error:


        ERROR: Unable to auto-assign a lower anchor for the loop to be closed. Check that the first residue is connected to something that isn't in the loop to be closed and isn't a tail residue.
        ERROR:: Exit from: src/protocols/generalized_kinematic_closure/GeneralizedKIC.cc line: 1323
        protocols.rosetta_scripts.ParsedProtocol: (0) [ ERROR ] Exception while processing procotol:

        File: src/protocols/generalized_kinematic_closure/GeneralizedKIC.cc:1323

        I am running my XML script on version Rosetta2020.03 using the following command:


        module load apps/Rosetta/2020.03/intel2019

        mpirun -np 1 $ROSETTA_BIN/rosetta_scripts.mpi.linuxiccrelease -parser:protocol nothing.xml -s 2LUR0.pdb -nstruct 1 -overwrite

        I am attaching the XML script (“nothing.txt”) for reference. I’ve tried to verify my script from the available Rosetta GeneralizedKIC documentation, and referred to papers from Bhardwaj, G.,  et al. (2016); Mulligan, V. K., et al. (2021) and a few others but I am unable to rectify. Any help will be appreciated.

        A snippet from the code:


        <AddResidue res_index="1" />
        .
        .
        .
        <AddResidue res_index="29" />

        <SetPivots res1="1" res2="16" res3="29" atom1="CA" atom2="CA" atom3="CA" />

         

        Thanks,

      • #15857
        Anonymous

          GeneralizedKIC requires  that at least one residue in the macrocycle be outside of the loop that you’re closing.  You have to pick an “anchor” or “stub” residue, randomize its conformation using something else (e.g. the RandomizeBBByRamaPrepro mover, the SetTorsion mover, etc.) and then use GenKIC to close the remaining residues.  Let’s say you pick residue 14 to be that residue.  Then your script becomes:

           


          <GeneralizedKIC ... >
          <AddResidue res_index="15" /> #Residue 14 is never part of this.
          <AddResidue res_index="16" />
          <AddResidue res_index="17" />
          ...
          <AddResidue res_index="29" />
          <AddResidue res_index="1" />
          <AddResidue res_index="2" />
          ...
          <AddResidue res_index="13" />
          <SetPivots res1="15" res2="29" res3="13" atom1="CA" atom2="CA" atom3="CA" />
          ...
          </GeneralizedKIC>

          Note that by picking an anchor near the middle of the linear sequence, the peptide bond between residues 29 and 1 is now in the  middle of the loop to be closed.  This allows you to use CloseBond to force good peptide bond geometry there.

        • #15858
          Anonymous

            Thanks for the detailed and clear explanation. It works well now !

        Viewing 2 reply threads
        • You must be logged in to reply to this topic.