「view this page in B3 βῆτα server」

Revisions №59483

branch: master 「№59483」
Commited by: Vikram K. Mulligan
GitHub commit link: 「d678d01d10ee5417」 「№2182」
Difference from previous tested commit:  code diff
Commit date: 2017-05-16 20:57:19

Merge pull request #2182 from RosettaCommons/vmullig/support_disulf_cyclization Add support for simple_cycpep_predict structure prediction for disulfide-cyclized peptides Although the "simple" in simple_cycpep_predict was initially meant to refer to backbone-cyclized single-loop peptides, the application can already predict structures of backbone-cyclized peptides with any number of internal disulfides, or with three-way TBMB linkages. There's no reason that the application should be limited to N-to-C amide bond-linked cyclization. This pull request will add support for cyclization with a terminal disulfide _in lieu_ of a terminal amide bond, and will leave open the option of adding support for cyclization through a crosslinker. @csykang @gbhardwaj @hssnzdh2 @twcraven @atom-moyer @stephen-rettie TODO: - [x] Add option for alternative cyclization schemes. - [x] Add enum for alternative cyclization schemes. - [x] Set from options system in non-MPI mode. - ~~Set by master node in MPI mode.~~ --> Not actually necessary. Will be set by options system when slave node SimpleCycpepPredictApplication instances are initialized. Can be overridden if ever I need to. - [x] Update GenKIC setup in SimpleCycpepPredictApplication.cc to allow amide bond or disulfide cyclization. - [x] Closebond statement for S-S bond. - [x] Set up suitable GenKIC perturbers for cysteine side-chains. - [x] Modify GenKIC perturbers for cysteine backbone at cyclization point. - [x] Remove rama randomization for these residues. - [x] Ensure that full chain is pre-randomized before calling GenKIC. - [x] Make terminal amide bond constraints contingent on the N-to-C amide bond cyclization mode. - [x] Make terminal amide bond contingent on N-to-C amide bond cyclization mode. - [x] Make S-S bond contingent on terminal disulfide cyclization mode. - [x] Correct calls to function to form terminal covalent bond. - [x] Disable cyclic permutation in disulfide case. - [x] Update logic for selecting middle pivot. - [x] Update logic for selecting anchor residue. - [x] Update minimum peptide length. Add checks for adjacent disulfide-forming residues. - [x] Handle tail residues, if present. - [x] Check GenKIC filters. - [x] Don't do rama check on cysteine residues involved in disulfide. **Put off to a future pull request:** - Add non-GenKIC filter for rama check of cysteine residues involved in disulfide. - Filter by disulfide energy (non-GenKIC filter). - Filter by fa_dun (non-GenKIC filter). - [x] Exclude terminal cysteines (or loop-forming cysteines) from disulfide permutation testing. - [x] Prohibit quasi-symmetric sampling with disulfide cyclization. - [x] Prohibit linking all cysteine with TBMB with disulfide cyclization. - ~~Option to specify which cysteines form loop.~~ --> Put off to future pull request. - [x] Tests: - [x] Basic integration test. - [x] Tail residue integration test. - [x] MPI-mode integration test. - [x] Check compatibility with option to try disulfide permutations. - [x] Beauty. - [x] Documentation. Also: - This pull request fixes a really stupid simple_cycpep_predict symmetry bug that was hindering the efficiency of symmetric sampling.

...