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

Revisions №59879

branch: master 「№59879」
Commited by: Andrew Leaver-Fay
GitHub commit link: 「1dee8ba273a92ec1」 「№2111」
Difference from previous tested commit:  code diff
Commit date: 2017-11-20 14:10:47

Merge pull request #2111 from RosettaCommons/aleaverfay/interleave_new_rotamers_in_rotset Aleaverfay/interleave new rotamers in rotset Adding a new way to append rotamers to a RotamerSet to reduce memory usage and running time when a large number of new rotamers need to be appended. The new functionality comes through the function RotamerSet::add_rotamer_into_existing_group and will figure out what existing residue-type group to add your rotamer to. If you already have a bunch of ARG rotamers and you add another, then the new rotamer will get slotted in at the end of the list of ARG rotamers, but in front of the set of SER rotamers (assuming you have SER rotamers). There are a number of places in the packer where the memory use scales quadratically with the number of different amino acid types, even if it scales linearly with the number of rotamers. Try avoiding calls to RotamerSet::add_rotamer. Expected integration test changes in the following integration tests which now have different rotamer orderings, and thus produce different outputs from the packer (and further downstream trajectory changes): - enzdes - inverse_rotamer_remodel - ligand_motif_design - motif_dna_packer_design