commit 333d99699777cd6a50d1c1736bacd689f8f1d1df Merge: 213408a dfe3c89 Date: Mon Feb 26 14:09:17 2018 -0800 Merge pull request #2979 from RosettaCommons/kalekundert/core_rosetta_scripts_utils Move parse_task_operations(), parse_score_function(), etc. into core. commit 213408af5611131bffada94e006bfebd39a9c6ae Merge: 8f6a366 bba5c9f Date: Sat Feb 24 08:43:49 2018 -0800 Merge pull request #2977 from RosettaCommons/kalekundert/show_packer_task Show the whole packer task. commit 8f6a366c708cb74768d52c3d25dc3d8308546842 Merge: fc64acf e636128 Date: Fri Feb 23 02:46:13 2018 -0800 Merge pull request #2975 from RosettaCommons/vmullig/fa_dun_ncaa_mirror_scoring_hotfix Fixing a *very* subtle bug introducing minor asymmetry in NCAA fa_dun scoring When I wrote the Voronoi-based well assignment code for the NCAA fa_dun scoring, I introduced a small bug: for mirror-image types (_e.g._ D-amino acids), I was forgetting to flip the mainchain torsion values when figuring out which backbone bin I was in. This meant that the boundaries between rotamer wells could be very slightly out of place. I discovered this in the peptoids branch, since it becomes most apparent in types in which the rotamer well centres change most with backbone torsion value changes. This pull request fixes the problem. commit fc64acf459d38b80f23e187a17c9d44d4060ee21 Merge: 73be6aa d20d62f Date: Thu Feb 22 21:42:05 2018 -0500 Merge pull request #2966 from RosettaCommons/JackMaguire/MCHBNetCorrection This PR introduces an option to HBNet that allows HBNet's internal scores to be placed in the output poses (turned off by default). This would allow the user to access the scores using the CalculatorFilter or ReadPoseExtraScoreFilter and the scores would be included in the score.sc file. commit 73be6aaed039ffad1492ed6875b495c909db6fd6 Merge: ab9c79f b6abe42 Date: Thu Feb 22 18:53:23 2018 -0700 Merge pull request #2973 from RosettaCommons/sergey/binder Updating Binder submodule, adding include mapping for GCC regex headers. Switching PyRosetta build script to use SSH for Pybind11 and LLVM checkout. Triggering clean build. commit ab9c79ff627163b3a12be1dd2f2970d79860b762 Merge: ac6e702 eff5c84 Date: Thu Feb 22 12:46:36 2018 -0800 Merge pull request #2969 from RosettaCommons/raemisch/BugFixSimpleGlycosylateMover SimpleGlycosylate copy constructor changed to include proper residue selector. commit ac6e7020dbc5a246199b6c0d8db71031f26078ff Merge: 29d49b0 f6ceff4 Date: Thu Feb 22 11:24:29 2018 -0800 Merge pull request #2965 from RosettaCommons/everyday847/install_sample_farnesyl_movers Install and sample farnesyl moieties using stepwise commit 29d49b005cfec62b16526fc7a454f10051fc7f05 Merge: e91aacb 6216506 Date: Thu Feb 22 14:21:16 2018 -0500 Merge pull request #2972 from RosettaCommons/JackMaguire/MultistageRosettaScripts There was a bug in an integration test I added to master yesterday that causes it to always fail. I did not notice it because the testing server did not have a reference to "diff" against, but now that other people are pushing to master I can see that all the diffs are backtraces. My apologies to everyone who had to deal with these useless test failures! commit e91aacb04ebba7dafdb8eba410e01fd0397988f2 Merge: 53a8ebe f99bff4 Date: Wed Feb 21 18:21:28 2018 -0800 Merge pull request #2964 from RosettaCommons/fordas/pyrosetta_wheel Add support for pyrosetta wheel distributions. commit 53a8ebe8c0585f22b3e190252a89aad9daea7c0f Merge: 19ab00f fe02d30 Date: Wed Feb 21 11:40:49 2018 -0500 Merge pull request #2959 from RosettaCommons/JackMaguire/MultistageRosettaScripts Adding Clustering Feature in Multistage Rosetta Scripts I am adding the ability for Multistage Rosetta Scripts to increase diversity by clustering results between stages. I will talk about this more at winter rosettacon next week if you are interested. I expect it to look something like this: ``` ... ... ``` commit 19ab00f908f3cef26574dcaa41682e8c8a7847f7 Merge: 3526816 274b084b Date: Tue Feb 20 18:09:36 2018 -0800 Merge pull request #2967 from RosettaCommons/rpavlovicz/fix_water fix variable declaration in PackPwatRotamersMover commit 352681675b0dc6ac8c41968c1fe8c0a52f136e59 Merge: 7b9c4aa 9a0436c Date: Tue Feb 20 18:05:03 2018 -0800 Merge pull request #2946 from RosettaCommons/vmullig/hbnet_energy_options Add alternative ramping options for the HBNet energy The HBNet energy currently gives a quadratically-ramping bonus for larger and larger hydrogen bond networks. @basantab observed that this results in giant hydrogen bond networks if there is any way at all to form these, at the expense of bad packing or other undesirable features. A "diminishing returns" ramping function might be better. This pull request adds options for linear, logarithmic, and square root ramping. It also adds an option for a maximum network size, beyond which there's no bonus. Tasks: - [x] Add enum for the new ramping types. - [x] Add different calculators for the bonus function. - [x] Add means for setting ramping type from flags. - [x] Add means for setting ramping type from RosettaScripts. - [x] Unit tests for different ramping types. - [x] Add option for max network size. - [x] Modify calculator for max network size. - [x] Add means for setting max network size from flags. - [x] Add means for setting max network size from RosettaScripts. - [x] Unit tests for max network size. - [x] Documentation for ramping types. - [x] Documentation for max network size. - [x] Beauty. commit 7b9c4aa095a2d74ec925328eb294885d0c533f08 Merge: 4c9f287 f994a3d Date: Tue Feb 20 16:57:40 2018 -0800 Merge pull request #2963 from RosettaCommons/fordas/inline_aa_comp_constraint Add support for inline aa composition constraint definition. commit 4c9f2871afa879595f70a51e2ecd5bf20a4b9842 Merge: 80c8569 324139a Date: Tue Feb 20 12:21:52 2018 -0800 Merge pull request #2947 from RosettaCommons/sboyken/keep_info_labels_symmetric options to preserve PDBInfoLabels when detecting / generating symmetric poses; works with SetupForSymmetry and DetectSymmetry movers by simply adding keep_pdb_info_labels="true" to these movers. Longterm would be good to decide whether people want this to be default, and could be hooked into deeper symmetry code commit 80c856983f7c5c2979027c5a622873723fb4b95d Merge: 9002831 b76a9ae Date: Tue Feb 20 12:18:15 2018 -0800 Merge pull request #2955 from RosettaCommons/yhsia/AddResidueLabelMover_asu AddResidueLabelMover - only label asu commit 90028316834dcbcad76cd2c96fe2fa6b52338860 Merge: 560a88b 5564d8e Date: Tue Feb 20 12:28:58 2018 -0700 Merge pull request #2954 from RosettaCommons/sergey/f fixing uninitialized data members in src/core/pack/rotamer_set/* commit 560a88b76614a7c5b36c4dd7cf46f39802d27f1c Merge: 14e20e1 673d001 Date: Tue Feb 20 09:50:14 2018 -0600 Merge pull request #2961 from RosettaCommons/roccomoretti/better_double_restype_message Improve the double-loaded ResidueType error message. commit 14e20e12e097e665ae3d41a1ec56db6c6361db39 Merge: 4bf16d4 c52e493 Date: Tue Feb 20 07:46:27 2018 -0800 Merge pull request #2913 from RosettaCommons/aleaverfay/layer_design_concise_logic Aleaverfay/layer design concise logic Per a discussion on slack over the difficulty in working with the layer-design residue selectors, I am creating some new code to let you combine residue selectors with boolean logic and pair those combinations with residue level task operations. This PR is not done, and I'm about to head out the door, but I wanted to give @sboyken and @cdbahl the heads up that this code is in progress. Example new syntax below: ``` ``` `!` has the highest priority `AND` has the next highest priority `OR` has the lowest priority ``` x AND ! y OR z ``` would convert into a boolean-function equivalent of ``` OR( AND( x, !y ), z ) ``` Parentheses may be used to define alternate groupings: ``` x AND !( y or z ) ``` would be equivalent to ``` AND( x, !( OR( y, z ) ) ) ``` ... There is now a new top-level block for residue level task operations: ``` ``` that you can use in defining Actions in the DesignRestrictions task operation. These RLTOs can also be listed in the OperateOnResidueSubset task operation -- which now can take more than one RLTO (though it still takes exactly one ResidueSelector). The OperateOneResidueSubset task operation can *also* use the selector_logic attribute to construct a boolean combination of ResidueSelectors, as the DesignRestrictions TaskOp does. commit 4bf16d465ebba50575a1ac99656dea4996a560f6 Merge: e1b67d2 73a9556 Date: Mon Feb 19 16:08:35 2018 -0500 Merge pull request #2960 from RosettaCommons/JackMaguire/DuplicateHeaderGuardTest We now have a unit test that checks for files that have duplicate header guards. commit e1b67d24a09b3a966b6f575d0f71207af78eeec1 Merge: b27c4e8 258c91e Date: Mon Feb 19 11:58:10 2018 -0800 Merge pull request #2825 from RosettaCommons/rpavlovicz/clean_water Rpavlovicz/statistical solvation methods commit b27c4e8438adaafc6c5a4b8073c63de03c3fa028 Merge: 4168f87 4a9c17e Date: Mon Feb 19 11:39:32 2018 -0800 Merge pull request #2941 from RosettaCommons/yhsia/LongestContinuousApolarSegment Yhsia/LongestContinuousApolarSegmentFilter commit 4168f87977f456ece89d7ed29746167301be665d Merge: 708694d 8c1b4be Date: Mon Feb 19 11:16:20 2018 -0800 Merge pull request #2920 from RosettaCommons/atom-moyer/RTConstraint RTConstraint: Stub pair relative transformation constraint commit 708694dafc260789523af44c1f2935c7ec026e42 Merge: 0b96575 ed9b935 Date: Mon Feb 19 10:46:10 2018 -0500 Merge pull request #2861 from RosettaCommons/JackMaguire/icc_warnings2 Internal HBNet code is refactored. This should not affect the user or many classes outside of protocols/hbnet. Also the header_using_check is updated. It now allows for `using X=Y` but still checks for any other instance of 'using'. commit 0b96575117677d505294aea3e6136b291ce93a94 Merge: ce69a9c fad42fd Date: Sat Feb 17 10:50:06 2018 -0500 Merge pull request #2956 from RosettaCommons/JackMaguire/StoreInterfaceAnalysisInPose Making Interface Analyzer Mover Compatible With JD3 (very small PR) The Interface Analyzer Mover currently can only report its findings to JD2. This PR changes the mover so that it stores its results in the pose so that the scores can survive in a JD3 environment. commit ce69a9c1a476a83b0d7ce9f4697b563e5f85425e Merge: 5ea0761 b1ceb96 Date: Fri Feb 16 11:42:11 2018 -0700 Merge pull request #2951 from RosettaCommons/sergey/binder updating Binder commit 5ea0761986ab916a646771656ceb20339ab6cd10 Merge: 8458d94 b8759cb Date: Fri Feb 16 11:56:02 2018 -0600 Merge pull request #2925 from RosettaCommons/jadolfbr/ab_design_optimize_interface Jadolfbr/ab_design Small tweaks to RAbD: - Remove try/catch for sequence design. It should only be there for graft design. - Fail if we have caught exceptions the whole time. I had some issues on a cluster that was being hammered hardcore with IO operations of another user and my runs still completed and output a file. We should never have that. - Improve the speed at which we load structures from the database through a pre-made text file. This is a temporary solution until we have updated databases in raw txt form in the rosetta database. However, this significantly speeds up runs and is up-to-date with the current PyIgClassify db. Etc: - Throw exception in ProteinResidueFeatures instead of a utility_exit_with_message. - Add option, `-read_only_ATOM_entries` to literally only read ATOM records in pdb_reader and cif_reader. commit 8458d94ef365c640a9ccb30faa7924b72baa1fff Merge: 4ad251d 184180f Date: Thu Feb 15 17:31:05 2018 -0800 Merge pull request #2948 from RosettaCommons/vmullig/fix_bluegene_crash_bug Fix spiky memory usage in multi-threaded mode causing crashes on Blue Gene/Q system The current implementation of the threadsafe lazy loading errs to the side of avoiding long locks, but thereby allows threads to waste effort concurrently loading large objects from disk that result in temporary spikes in memory usage (even though only one copy of the object is permanently stored). The old scheme for loading rotamer libraries looked like this: - obtain read lock - check for existence of library, and return it if it exists, releasing read lock. - release read lock - read library from disk (creating memory object) <-- Many threads might do this at once. - obtain write lock - add library to map if it isn't in there already <-- Only one thread does this. For other threads, the memory object that was created is eventually discarded. - release write lock - obtain read lock - return pointer stored in map, releasing read lock This meant that write-locking (which lets only one thread access the object) was as short as possible, but many threads might read a rotamer library from disk and set it up in memory before the first thread obtained its write-lock and added the created rotamer library to the map of rotamer libraries. This pull request revises this slightly, so that it now looks like this: - obtain read lock - check for existence of library, and return it if it exists, releasing read lock - release read lock - obtain write lock - check again for existence of library in map, and return it if it exists, releasing write lock - read library from disk (creating memory object) <-- Only one thread does this, now. - add library to map - release write lock - obtain read lock - return pointer stored in map, releasing read lock This means that more threads might be sitting idle for slightly longer, while reads from disk are taking place, but that every read from disk is a productive one, and every memory object created temporarily is actually stored and used. It avoids big spikes in memory usage from transiently-duplicated memory objects. These spikes were causing crashes on limited-memory systems like the Blue Gene/Q system. Tasks: - [x] Fix the problem. - [x] Confirm that rotamer libraries are only loaded once (by launching 40 threads on Jojo simultaneously and measuring the number of reads of the OU3_TRP library). - [x] Confirm that this addresses the memory spike and crash issue on the Blue Gene/Q system. - [x] Check whether this has any significant impact on multithreaded performance on Blue Gene/Q. (It ought not to. Initialization might be very slightly slower but with reduced disk access and fewer memory spikes; runs after lazily-loaded objects are loaded should be unaffected.) commit 4ad251d2914d7aa4c5452260e8b6ced63387569e Merge: 2c3cccb 9b9225f Date: Thu Feb 15 15:33:23 2018 -0800 Merge pull request #2945 from RosettaCommons/davidekim/minor_fragment_picker_updates fragment_picker support for Spider3 format and a bug fix commit 2c3cccb1a69cb0969c2c7d5836a89791ec64d365 Merge: be9fbaa ffaebb6 Date: Tue Feb 13 19:19:26 2018 -0800 Merge pull request #2936 from RosettaCommons/yhsia/MergePDBMover_no_design_option new options for MergePDBMover; some edits to ResidueIndexSelector (symmetry reverse) commit be9fbaab46287e27ac087b388dae4bc441cf2d47 Merge: fdbebc9 389b4d9 Date: Tue Feb 13 15:08:43 2018 -0800 Merge pull request #2935 from RosettaCommons/vmullig/disable_rotamer_sorting Adding a means of skipping the rotamer well order correction. So it turns out that, now that I've implemented the Voronoi-based rotamer well interpolation for noncanonicals, it probably doesn't actually matter what order rotamer wells are in. The sorting step, which takes a while for large rotamer libraries, can therefore be skipped. I'm keeping the option to turn it back on in case there are unanticipated cases in which rotamer well order matters, but setting the default behaviour to be no sorting. commit fdbebc9e0217a991b2001c3b793099938bd8ea2f Merge: 2c0dc74 30f85ab Date: Tue Feb 13 10:36:56 2018 -0800 Merge pull request #2939 from RosettaCommons/davidekim/boinc_windows_build Davidekim/boinc windows build commit 2c0dc744fb56459daf220abc159f980b1809ecfe Merge: 827d3ea 02d04f5 Date: Mon Feb 12 18:02:56 2018 -0800 Merge pull request #2934 from RosettaCommons/vmullig/disable_jd2 Adding a means for non-JD2 apps and protocols to avoid instantiating a JD2 JobDistributor I noticed that the `simple_cycpep_predict` application, which uses its own job distributor that is not related to JD2 or JD3, was unnecessarily instantiating the JD2 job distributor (which was creating some problems in special cases -- large nstruct, for example). I traced this to the `ParsedProtocol` that I instantiate inside of `SimpleCycpepPredictApplication`, which invokes `protocol::jd2::jd2_used()` at several points, which determines whether JD2 is used by instantiating a JD2 job distributor and interrogating it. To address this, this pull request adds an option to the `ParsedProtocol` constructor to disable JD2 access. This option is false by default, so that normal `ParsedProtocol` behaviour is unaffected except when JD2 access is explicitly disabled. EDIT: At Rocco's suggestion, I abandoned the original approach and added a means of checking whether JD2's JobDistributor has already been instantiated, called in `jd2_used()`. commit 827d3eaaf4e1d8991a0aa22b524da5efa5d74de9 Merge: 2dc734e 8fa4567 Date: Mon Feb 12 17:27:01 2018 -0800 Merge pull request #2933 from RosettaCommons/sboyken/hbnet_interface_updates Updates to HBNetStapleInterface; a couple of fixes and new options for logic used when combining multiple networks together onto a single output pose commit 2dc734ed98cefa91a35210fa23d259468a2f7cc6 Merge: 9f5fdc1 418fefd Date: Mon Feb 12 22:00:39 2018 +0100 Merge pull request #2940 from RosettaCommons/jaumebonet/FFLfixubsan FFL fix integration.ubsan commit 9f5fdc1043f687a08431614824701df7b0c0f94d Merge: ccfa237 1a6a061 Date: Mon Feb 12 13:22:29 2018 -0500 Merge pull request #2938 from RosettaCommons/JackMaguire/MultistageRosettaScripts Small feature additions and bug fixes for multistage rosetta scripts: Features: - [x] Reverse script converter: convert a MRS script to a traditional rosetta script. Code is written but untested. - [x] Added a more dynamic result-storing method in the NodeManager class. Not super useful now, but will be essential when (if) JD3 is able to submit jobs from node n+1 before node n is completely finished. - [x] Added support for `` tags to be intermixed with the `` tags. These do not currently do anything, but will save us time in the future. Bug Fixes: - [x] Each `` call used to create a new mover/filter. This prevented us from being able to call the same mover twice (unfortunate for things like SaveAndRetrieveSidechains). Now, movers and filters can be called multiple times within the same MRSJob. I am taking this opportunity to remove the `job_bundle` Stage option because it is not that useful and really makes the code ugly. ~Upgrade the newick tree printing so that the values for the leaf nodes match the filenames created.~ - [x] Renumber the output files so that they match the newick tree commit ccfa2372bc5c28680d6cddd3d4a74c419cfb3bdd Merge: 3ddc77e 9d89ddc Date: Mon Feb 12 10:43:12 2018 -0600 Merge pull request #2922 from RosettaCommons/havranek/SASAFix Bug fixes for power diagram version of SASA calculations. commit 3ddc77e46591ae614357f23b55e1656cd5c1ca0b Date: Sun Feb 11 19:15:16 2018 -0500 beautifying commit 424c444948f0020826430b4aa16c254425b806db Merge: d207d2a 953d3fd Date: Sun Feb 11 12:21:45 2018 -0500 Merge pull request #2924 from CyrusBiotechnology/for_commons/indigo/nmer_refactor NMerSVMEnergy core::Size underrun bug (from Cyrus) Fixes the addsan and numerical instability bugs in NMerSVMEnergy exposed by its new test. shoutouts to @indigogo and @vmullig for commentary and assistance shoutouts to @roccomoretti and @jaumebonet for notification. commit d207d2ac693b107a9884a777f5e60fdb18620d08 Merge: 793e739 6961024 Date: Sun Feb 11 17:50:09 2018 +0100 Merge pull request #2937 from RosettaCommons/jaumebonet/FFL2PyMOL Fixes NubInitioMover so that PyMOL observer does not get unlinked. commit 793e739fabd7612aac1dff2d1e5b2a4b86b6127f Date: Fri Feb 9 17:46:41 2018 -0500 RosettaAI: Setting rosetta_scripts_scripts submodule to latest origin/master version. commit 02c46d5cdcbd711b6cd9e10ac4fc51cdf8a47ac1 Merge: 24446e6 ccbcde4 Date: Fri Feb 9 14:28:19 2018 -0700 Merge pull request #2932 from RosettaCommons/sergey/f fixing unit tests scripts used in academic releases commit 24446e61b55933496fc046fc76402d3d2bc511d8 Merge: 4661f86 9a447a4 Date: Thu Feb 8 17:03:00 2018 -0800 Merge pull request #2865 from RosettaCommons/kalekundert/comments Add doxygen documentation for LoopHash. commit 4661f867b626e1842d1585289f18f9040ec6453f Merge: 92153c5 4267164 Date: Thu Feb 8 16:02:12 2018 -0800 Merge pull request #2928 from RosettaCommons/tjbrunette/link_res_fix fixed possu's issue with template_res the issues with the testing server seem unrelated commit 92153c565e0dfb83130ebeb19567aa568771b436 Merge: a6c0583 de5f475 Date: Thu Feb 8 16:48:42 2018 -0700 Merge pull request #2930 from RosettaCommons/sergey/ui-multi-jobs UI, adding support for multi-stage tasks commit a6c05836901c37309fb1cf0cdb47a451e71782ba Merge: 8db8a5b 6965310 Date: Thu Feb 8 15:14:23 2018 -0800 Merge pull request #2915 from RosettaCommons/yhsia/SSElementSele_end_option fixing some issues with SSElementSelector & mergepdbmover commit 8db8a5bd9e6205caaf98a8903c19c751b5d22f38 Merge: 5241def 8606cbc Date: Thu Feb 8 12:53:48 2018 +0100 Merge pull request #2929 from RosettaCommons/jaumebonet/dsspremark WriteSSEMover -> add dssp and/or psipred as a comment to the output commit 5241defff543a3f2e691a988d59f9f80d606cf68 Merge: 4c0ba9d e7f2c17 Date: Wed Feb 7 14:03:59 2018 -0800 Merge pull request #2926 from RosettaCommons/yhsia/quasi-flag_fixes code duplication fix in RotamerSets.cc commit 4c0ba9df519995538cd0a62d6ab81f915b94c65f Merge: b92b82c cac21b4 Date: Wed Feb 7 18:19:02 2018 +0100 Merge pull request #2921 from RosettaCommons/FFL_integration Adding integration test for FFL and correcting the errors of the valgrid and ubsan of the FFL unit tests commit b92b82cd8640aa73676010b61b22611d0a714837 Merge: cbeb733 f9afe2f Date: Wed Feb 7 08:18:26 2018 -0500 Merge pull request #2919 from RosettaCommons/aleaverfay/fix_features_integration_test fix currently-failing features integration test Putting the output name for the job into the Pose. Perhaps this is the appropriate way to deliver the job name to a Mover instead of through parse_my_tag. There seems to be a good amount of code already for grabbing the JOBDIST_OUTPUT_TAG scattered through the code base. In my aleaverfay/revive_resource_manager branch, I had started down a path that would transmit currently-running-job information to Movers via parse_my_tag by putting strings into the DataMap. This would require, however, re-parsing a Mover for each job, and that has its own disadvantages. Putting the data into the Pose, however, seems like a fine way to get this done. I'm thinking this stopgap fix will migrate downward into the StandardJobQueen's pose_for_job() method. commit cbeb733c7642953530674db457689d8b0190ef27 Merge: a37b59f aef7b17 Date: Mon Feb 5 14:56:58 2018 -0800 Merge pull request #2917 from RosettaCommons/rhiju/rna_score_feb2018update rna_score hotfix commit a37b59f5ee772748e7b11260777dabd25b2ed218 Merge: eee55b6 998c14a Date: Sun Feb 4 22:50:14 2018 -0800 Merge pull request #2914 from RosettaCommons/vmullig/fix_betanov16_warning Correct warnings in the rotamer library parser for canonical talaris and beta_nov16 libraries. The warnings issued by the parser are currently inaccurate. Updating them for the beta_nov16 and talaris libraries. commit eee55b67ccd62bdc08ed19e290c159ce766a6241 Date: Sat Feb 3 16:29:12 2018 -0500 dummy commit to trigger TestingServer run commit 8236cd1ef76e6324acfcfccc207225f097fff661 Merge: ecdc280 74f0b1a Date: Fri Feb 2 11:25:23 2018 +0100 Merge pull request #2918 from RosettaCommons/jaumebonet/quickfix fixed RmsdFromResidueSelectorFilter naming and behaviour in homodimer_fnd_ref2015_memb in integration test commit ecdc28088f7826322f216941514658c7c176f5e1 Merge: ad84dc9 070284b Date: Fri Feb 2 06:01:53 2018 +0100 Merge pull request #2888 from RosettaCommons/jaumebonet/nubinitio FoldFromLoops2.0 protocol commit ad84dc9aec0d38986589573a0415c0b2c79be276 Date: Wed Jan 31 17:09:00 2018 -0500 fixing binder submodule commit 8fead9ad2d411dda409ebfbae1e6e9f575482fb5 Date: Wed Jan 31 16:37:59 2018 -0500 increasing failure threshold for profile and performance tests commit ba0611e790bb9d130ae6df757096bd1ef31132f6 Merge: c1b7d85 26f02d0 Date: Wed Jan 31 15:26:14 2018 -0600 Merge pull request #2908 from RosettaCommons/roccomoretti/fix_movemapfactory_jump Fix MoveMapFactory XSD There was a mismatch between parse_my_tag and provide_xml_schema regarding jump/jumps, as well as misleading information about defaults. commit c1b7d85507babf8d249c9aa0810bacf3c6df631e Merge: 1a38360 a8e7bbd Date: Wed Jan 31 12:14:04 2018 -0500 Merge pull request #2899 from CyrusBiotechnology/for_commons/indigo/nmer_refactor From @indigogo at Cyrus. * new unit test for core/scoring/methods/NMerSVMEnergy, the scoring method used for tcell epitope prediction. unit test just compares epitope predictions for rosetta's idealized trpcage pose * refactoring of all 3 tcell epitope scoring terms (NMerSVMEnergy,NMerPSSMEnergy,NMerRefEnergy). no functional changes, just added full constructors like I should have done in the first place, also some new functions to extract model energies before everything is summed/averaged into total residue energy commit 1a383606ee31b3036f3ed96545e3a270d027c2be Merge: 7a9e84c bebef60 Date: Tue Jan 30 11:38:09 2018 -0800 Merge pull request #2910 from RosettaCommons/yhsia/relax_detect_disulfide changed behavior of RelaxProtocolBase::apply_disulfides to check for … commit 7a9e84ccd7d0f2eee05d2e18f3dd05dab03915c4 Merge: b13623b c92a16b Date: Tue Jan 30 10:39:32 2018 -0800 Merge pull request #2855 from RosettaCommons/vmullig/fix_adams_rotamer_order_issue Fix issue with rotamer libraries that put rotamers in a wonky order. The rotamer code assumes that rotamers are listed in rotlib files in order from lowest chi to highest (with chis defined on `[0,360)`). Unfortunately, not all NCAA rotamer libraries do this, which creates big problems with interpretation of the libraries. This pull request aims to eliminate this requirement for the rotamer order. Kudos to @atom-moyer for identifying the cause of the problem. EDIT: This ended up requiring implementation of a new Voronoi-inspired method for determining the nearest rotamer well centre for noncanonicals. I _think_ that ```fa_dun``` scoring now works correctly for all noncanonicals. Pull request #2887 should be merged before this one --> DONE. Tasks: - [x] Add unit test for equivalence of scoring of DAB with rotamers in the original order or in the corrected order. - [x] Confirm that this _fails_ prior to making any code changes. - [x] I'm going to rewrite rotamer library parsing, since that function's a mess. - [x] Add a rotamer library parsing class. - [x] Reproduce existing functionality, but in separate read, analysis, and configuration steps. - [x] Use an instance of this class for parsing. - [x] Fix unit tests broken by this refactoring. - [x] Add a correction step between initial read and subsequent configuration of the rotamer library object in memory: - [x] Check the rotwell assignments that were in the rotamer library file, and ask whether they are acceptable. - [x] If not, figure out a remapping that makes them acceptable. - [x] Apply the remapping globally (so if bin 1, chi 2, rotwell 3 used to correspond to bin 2, chi2, rotwell 3, and now rotwell 3 is rotwell 2, it remains true that bin 1, chi 2, rotwell 2 corresponds to bin 2, chi 2, rotwell 2). - [x] Throw an error if no consistent remapping is possible (_i.e._ the numbering in the rotamer library wasn't just jumbled, but was actually inconsistent). - [x] Revisit this and fix the sort logic. - [x] Confirm unit test now _passes_. - [x] Confirm that I haven't broken anything else. - All other noncanonicals (TRP:N_methylation, peptoid 601, _etc._) seem to load properly. - [x] The Dun02 rotamer libraries now fail to load, due to inconsistent rotamer well ordering. --> fixed by hard-coding an exception for the canonical Dun02 libraries. - [x] Check the integration test changes. Are the NCAA rotamers as good or better? - [x] Beauty. - [x] Add an override that allows skipping the high-stringency check. It's probably too conservative in some cases. - [x] Fix N-methyl tryptophan problem. - [x] Fix beta-amino acid problem. - [x] Add test for peptoids. - [x] Add test for oligoureas. - [x] Add a D-oligourea test. - [x] Fix issue with D-residues. @atom-moyer @twcraven @dougrenfrew @everyday847 commit b13623bd9b2e86bb4230b6c2da8153fa6d4a37fd Merge: b3f4649 14694bd Date: Mon Jan 29 10:32:04 2018 -0800 Merge pull request #2906 from RosettaCommons/basantab/AddHelixBendfilterFix Add helix bendfilter fix commit b3f46497ddff71430885fd44c873a424f9a03cd8 Merge: b45f686 f73790c Date: Mon Jan 29 07:56:49 2018 -0800 Merge pull request #2907 from RosettaCommons/everyday847/xcode_triage Xcode project triage I even tried removing werror just for this build type and the uses of pthread.h in cppdb (not cifparse, whoops) were still causing problems. (It complains that an annotation that pthread.h uses, Nullable, is a clang language extension.) So this is not a particularly resolvable error, I think? Or maybe we need to package our own pthread.h with that specifier removed... commit b45f68668a43e6375a9083ab3f152dc1c8680e6c Merge: 3b71d2e 523199c Date: Fri Jan 26 15:42:48 2018 -0800 Merge pull request #2901 from RosettaCommons/vmullig/override_pseudobonds Adding option to skip detection of pseudobonds. Needed for certain peptide workflows. Note that this does not alter any default behaviour of Rosetta: pseudobond auto-detection is still on by default. It just lets us turn it off in the very unusual cases in which we have strange input files, for which the automatic pseudobond detection creates problems. (It's an "expert setting" in that sense, intended to be used only by those who know what they're doing in very rare cases.) Tasks: - [x] Add the option. - [x] Have it do something. - [x] Documentation. - [x] Beauty. @csykang commit 3b71d2e845e36cce1fc1977cec7ba20fc5eecab4 Merge: 224bfa8 51fbfc9 Date: Fri Jan 26 12:55:12 2018 -0800 Merge pull request #2812 from RosettaCommons/everyday847/convert_my_pilot_apps_to_pyrosetta Convert my pilot apps to pyrosetta scripts commit 224bfa8b5ed148bfecd0d5e2bbd02a61ed4aa59c Merge: cc70cb9 d268949 Date: Fri Jan 26 11:06:49 2018 -0800 Merge pull request #2902 from RosettaCommons/basantab/update_helixbend_filter Update HelixBend filter commit cc70cb9427f28239f005f0756e1bfc9f8c00117c Merge: d1c71d6 da92466 Date: Fri Jan 26 11:03:51 2018 -0500 Merge pull request #2768 from RosettaCommons/aleaverfay/revive_resource_manager merging branch aleaverfay/revive_resource_manager into master. New implementation of the ResourceManager. Instead of being this all seeing, all knowing piece of global data that knows what job is running and what resource you mean when you say "3mers", the new ResourceManager instead is a significantly more humble contraption that's responsible for loading data that should stay in memory between jobs and deallocate that memory when it's told it is no longer needed. The ResourceManager has three components: 1. The ResourceManager itself, 2. A set of ResourceLocators that can open a stream from some sort of input source (e.g. a file, or a database query), and 3. A set of ResourceLoaders that are responsible for loading a kind of Resrouce (e.g. a PoseResourceLoader responsible for loading Poses* into memory) A Resource, then, is a bitwise constant object that can be shared between concurrently running jobs. E.g., a loop-hash library, a fragment set, or a Pose*, or the SEWING graph. The ResourceManager only grants const access to the Resources it holds. A Resource is what you want to use when you have large, load-once data that is either expensive to create from disk, or occupies so much memory that you want to ensure there is only one of (but where different jobs might use different versions of it, so a Singleton would be inappropriate). The ResourceManager is accessible currently through rosetta_scripts_jd3. There is a new top-level \ block to the parser::protocol XML file to say "These are resources that will be used for this job" so that the RosettaScriptsJobQueen (RSJQ) will know to put those resources into a special const-only section of the DataMap before the Movers and Filters and whatnot are loaded. Movers who want to use resources will ask the DataMap for the resources they need by name during "parse_my_tag". The RSJQ will figure out at startup when each resource can be deallocated and will tell the ResourceManager "you may now deallocate resource X" at the appropriate time. (The use of script_vars will make it trivially easy to have different resources used for different jobs). My eventual goal is to make abinitio work in RosettaScripts without the corrupting influence of global data (i.e. the sin against humanity of the frag_cache_ static data in core::fragment::FragmentIO). I would like people to start thinking more carefully about the lifetime of the data that they load and to begin integrating the ResourceManager into their protocol development. In the near future, I will be looking for more clients for the ResourceManager -- Movers and Filters that need load-once data -- and will be adding new attributes to these Movers and Filters to retrieve resources from the DataMap instead of loading them from scratch at each parse_my_tag. I will also be adding the ResourceManager to the (JD2) rosetta_scripts application so that it can be used there as well. I will also have to figure out how to incorporate it into Jack's new MultistageRosettaScripts. This PR will create quite a few cosmetic integration test changes. The old resource manager, though not directly used by anyone, was being indirectly used by lots of things, and the convoluted process of it's wake up did work that wasn't necessary and sent output to Tracers while doing so. I have also removed several of the integration tests for the old resource manager, and adapted several others to use the new resource manager. I paid close attention to all of the tests that were changing on my machine, fixing a handful of bugs that I had introduced along the way. (The testing server is showing me far more trajectory changes than I see locally. They are also inconsistent from revision to revision, so I think there is just something funny about the testing server.) *Pose itself is not a bitwise-constant class, and so instead of creating Pose objects and putting them into the ResourceManager, the PoseResourceLoader will create a wrapper class called a PoseResource which will give consumers a *copy* of the Pose that was loaded. This will hopefully be the outlier where the resource is loaded once, but where there might be multiple copies of the Resource in memory at one time. commit d1c71d6b842cbf58a55f60e02b7f55bd5a3f143e Merge: 4a32252 976d8d6 Date: Fri Jan 26 07:13:59 2018 -0500 Merge pull request #2904 from RosettaCommons/JackMaguire/MCHBNetCorrection MC HBNet Correction. There was a small bug in the MC HBNet code that did not impact the legitimacy of results but strongly hindered the sampling ability of the MC HBNet protocol (credit goes to Scott for discovering there was a bug). That bug is now corrected and I took this opportunity to clean up the code in the class surrounding the bug. commit 4a32252da2d4d7017632d74ddd3da3e4d1fae240 Merge: 3035d01 57314ab Date: Thu Jan 25 17:09:30 2018 -0800 Merge pull request #2885 from RosettaCommons/tjbrunette/database_filters Tjbrunette/database filters commit 3035d01b1594412781cf165fadc2793d692e0705 Merge: 567fe68 b1b4f93 Date: Thu Jan 25 15:40:22 2018 -0700 Merge pull request #2905 from RosettaCommons/benchmark Updating benchmark python-install script so it now use default platform compiling when building Python. Updating scons .settings files to fix weekly release builds. commit 567fe682a74dab03f7cb54bb2e149b4bfa2d6ce4 Date: Thu Jan 25 13:48:12 2018 -0500 hot fixing benchmark scripts so PyRosetta4.* tests work on HighSierra commit 87c19440bcfbc764167000963ce684645ab0aefa Merge: f7d913b 336b74c Date: Wed Jan 24 11:58:44 2018 -0500 Merge pull request #2814 from RosettaCommons/JackMaguire/MultistageRosettaScripts Multistage Rosetta Scripts commit f7d913b5ce98f93cf2f4bf202f333f4172027641 Merge: 01656b9 a2026e6 Date: Tue Jan 23 21:20:27 2018 -0800 Merge pull request #2898 from RosettaCommons/vmullig/fix_voids_penalty_config Fixing a little problem in EnergyMethodsOptions setter functions that was preventing configuration of the voids_penalty energy term from RosettaScripts XML. commit 01656b9eba5858bc520d5164d3a644cd47425cbc Merge: 683a3e7 205849b Date: Tue Jan 23 19:40:24 2018 -0800 Merge pull request #2893 from RosettaCommons/weitzner/cxxtest-python-version cxxtest python compatibility commit 683a3e7ad3aedc76acc2ca12d0ca577e3fc8c418 Merge: 5933691 6f4dbaa Date: Tue Jan 23 15:30:18 2018 -0800 Merge pull request #2895 from RosettaCommons/vmullig/fix_bluegene_build_again Trying to fix Blue Gene/Q build again. The Blue Gene/Q build was broken by the renumbering/renaming of protocols libraries. This corrects that. No test changes expected. commit 5933691167a084a7c5e228c07bb350013d769552 Merge: 90e7110 c1e9b67 Date: Tue Jan 23 11:29:44 2018 -0700 Merge pull request #2890 from RosettaCommons/sergey/f2 Updating profile Benchmark script so it honor compiler platform setting and run on local machines instead of HPC. commit 90e7110210c63e393b0d98a2bbbd17f6487a51ee Merge: 00462c2 1f5c1b2 Date: Tue Jan 23 04:25:57 2018 -0800 Merge pull request #2887 from RosettaCommons/revert-2886-revert-2883-vmullig/rotamer_read_refactor Re-merge refactor of the rotamer library reader. This was originally merged as pull request #2883. When I tested that PR, the Intel icc build was broken; the fix to that unfortunately broke the gcc build, and I didn't catch that before merging. I reverted that merge, and will fix the issue here and re-merge. Reverts RosettaCommons/main#2886 (i.e. this is a reversion of the reversion of the initial merge, reinstating the initial merge). This should be merged before merging #2855. commit 00462c2fd4221f124fe09eec12bd3c2550c0651b Merge: c709e69 087b4cb Date: Mon Jan 22 17:12:16 2018 -0800 Merge pull request #2892 from RosettaCommons/weitzner/pymol-pyrosetta-link Update PyMOL<–>Rosetta link to be python 2/3 compatible commit c709e699377a6b54429edebd1a38e2f4e45b76b0 Merge: c6a4f31 5dbe7f0 Date: Sun Jan 21 12:56:13 2018 -0800 Merge pull request #2878 from RosettaCommons/everyday847/save_times Re-enable "save times" option in the jd3 version of the FARFAR job distributor commit c6a4f315d1c63e18c4bc53bc9b73f442ca3da6a2 Merge: d6c6aa6 6e6a995 Date: Sat Jan 20 15:35:47 2018 -0700 Merge pull request #2889 from RosettaCommons/sergey/f fixing PyRosetta GCC build commit d6c6aa6aa6e93f07c1bcf28f9f875133a9223c6f Merge: 831ed9a d3b603b Date: Sat Jan 20 15:35:28 2018 -0700 Merge pull request #2884 from RosettaCommons/ui merging latest ui changes to master commit 831ed9abafb52e2cf7b70466e2b147456ec801fd Merge: 3039e77 d3cb0ed Date: Fri Jan 19 13:29:23 2018 -0600 Merge pull request #2833 from RosettaCommons/jadolfbr/glycosylation_pdbinfo Fix writing Link Records for Glycans Glycan PDB Link Record output only worked for branch points, which is good, but not quite what we want. @BrandonFrenz Fixed this, but it was under an option that only worked for certain circumstances. This allows proper Link output for all glycans - which allows us to manually create the glycans, de novo model them, and then output them properly. Next step is to allow the atom aliases to work with Rosetta-created ResidueTypes. This also moves the `GlycanInfoMover` code out of the app and enables its use in RosettaScripts, which makes debugging easier. Fixed a few GlycanTreeRelax bugs for quench mode and multiple round runs. commit 3039e776d4bc792cbd98ae76c3816716b556f398 Merge: 21b7eea ae4dd6f Date: Fri Jan 19 13:27:37 2018 -0600 Merge pull request #2752 from RosettaCommons/jadolfbr/ab_design_optimize_interface MonteCarlo Interface Main === This PR adds a new derived MonteCarlo class called `MonteCarloInterface`, located in `simple_moves`. It uses the `InterfaceAnalyzerMover` to score the interface and optimize the **dG** of the interface specified. **dG** and **total_energy** CAN be weighted, with default of dG at 1.0. This can be integrated into protocols at will. Due to the need of a specific interface, it is implemented as protocol-specific instead of within `MonteCarlo` itself. The relevant option that can be accessed by a protocol to appropriately construct the `MonteCarloInterface` is `-mc_optimize_dG`. Options to change weights are given by `-mc_interface_weight` and `-mc_total_weight` Etc. === - This has been integrated into the `RosettaAntibodyDesign` protocol (enabled using `-mc_optimize_dG`) and shows significant improvement in interface quality in resulting models. The models should still be pruned/filtered by total energy, only considering the top 10 or 25 percent of decoys. - `RosettaAntibodyDesign` now minimizes using the neighbor list. I still don't know why this is not the default across Rosetta. Not using it is a pathology. - Small bug fix in RAbD to only add atom-pair constraints by default if using docking. Otherwise, they should be turned off. - Change the way cluster cutoffs work in RaBD to now be gene and cluster specific. Unit Tests ======= Add decently comprehensive tests for MonteCarlo(!!!) And MonteCarloInterface commit 21b7eea573c2b38ad0fa93c3c8873e96ecbbc434 Merge: c6bdce9 97ed44d Date: Fri Jan 19 09:45:54 2018 -0500 Merge pull request #2882 from RosettaCommons/aleaverfay/fix_BuriedUnsatFilter2_copy_ctor Aleaverfay/fix buried unsat filter2 copy ctor The homodimer_fnd_ref2015_memb and ppi_v3_suiteA integration tests have been failing in master for quite a while now, and it's only due to this copy constructor being incorrectly written. This integration test was broken with PR #2411 and remained broken quite long after that PR was merged to master. Trapping the bug in GDB very quickly illuminated the problem -- this should have been done much sooner. Also altering the command file in the homodimer_fnd_ref2015_memb integration test so that the Tracers don't pollute the terminal when you're running it locally. commit c6bdce90550d40e4a92cd3129b2b26bde68508ff Merge: f420617 b7ce329 Date: Thu Jan 18 18:43:01 2018 -0800 Merge pull request #2886 from RosettaCommons/revert-2883-vmullig/rotamer_read_refactor Revert "Incremental merge of fix to rotamer scoring bug identified by Adam." Sorry about that. The fix to the Intel build in the PR that I just merged broke the gcc build. Reverting until I can fix. commit f420617443940fab01f0dde84fd9914e0cfede63 Merge: 4122dff 0765d78 Date: Thu Jan 18 18:10:36 2018 -0800 Merge pull request #2883 from RosettaCommons/vmullig/rotamer_read_refactor Incremental merge of fix to rotamer scoring bug idenfied by Adam. This merge should change nothing about current functionality, and does not itself fix the bug identified by @atom-moyer. Internally, it separates rotamer library reading into a parse step and a configure rotamer library step. This will make it easier for me to add correction steps in between. commit 4122dff140b9148de2681c0870d98ce2b4cc9364 Merge: 767ea15 8eba0ca Date: Wed Jan 17 14:23:13 2018 -0800 Merge pull request #2875 from RosettaCommons/vmullig/nmethyl_update Updates to N-methyl amino acids After adding support for spinny N-methyls, the rotamer libraries for N-methyl amino acids need some updates. I plan to merge this after pull request #2855, since that will affect this. Tasks: - [x] Update TRP N-methyl rotamer library in database with new version from Tim. - [x] Update other N-mehtyl rotamer libraries in Git LFS repository with new versions from Tim. - [x] Update N-methyl atom types and charges: ``` From Tim: ATOM N Nbb NH1 -0.6046255 0.000 ---> ATOM N Npro NXX -0.7438 0.000 The partial charges should be: N : -0.7438 CN : -0.2352 1HN : 0.1920 2HN : 0.1920 3HN : 0.1920 ``` @twcraven commit 767ea15bf2e50d3bdf910fe218f59417ffd4ac0b Merge: 7146d9f 18cc6e1 Date: Wed Jan 17 13:14:14 2018 -0700 Merge pull request #2872 from RosettaCommons/sergey/binder fixing issue with enumerate applied to xyzVector commit 7146d9f3e75f03db4f35acfc67aa2266a05c336b Merge: c21b42a 395ea55 Date: Wed Jan 17 13:08:23 2018 -0700 Merge pull request #2841 from RosettaCommons/sergey/f optimizing XMLSchemaAttribute(...) and other functions in utility/tag/XMLSchemaGeneration.* commit c21b42aef894f7b31b94ec3b7e47dcefef59b56d Merge: 0979746 0fa3086 Date: Wed Jan 17 11:46:51 2018 -0800 Merge pull request #2874 from RosettaCommons/everyday847/stepwise_with_constraints Stepwise Monte Carlo with constraints commit 0979746a472963f77684b5205c4b77d73d0fe89d Merge: c83e086 4205056 Date: Tue Jan 16 11:39:38 2018 -0800 Merge pull request #2871 from RosettaCommons/everyday847/hideous_connection_issue Hideous connection issue commit c83e08663fcf44acc46bf2d0ba5f5093be2f1ec0 Merge: dcc70da d89581e Date: Mon Jan 15 12:38:23 2018 -0600 Merge pull request #2869 from RosettaCommons/roccomoretti/case_sensitive_filename_test Add a test to check for case sensitive filenames in the repository. This PR adds an integration test which should throw up an error (even on Linux) if a commit in the `main` repository accidentally contains two files which are only distinguished by case. commit dcc70daca3046bd2d66b27adb7d3fb0015fa8dcc Merge: 680e53d e07f060 Date: Fri Jan 12 21:45:13 2018 -0800 Merge pull request #2868 from RosettaCommons/vmullig/oligourea_design_fix Attempting to fix failing integration test. I had changed the way that you specify oligourea residues but had forgotten to update the test. commit 680e53d43f54d4df0755a315251ead6bbe27cd3d Date: Fri Jan 12 15:59:28 2018 -0500 beautifying commit e55b9b22cff8a47fcba362a31cb8391b2533f2a1 Merge: 81377a3 d8dd60c Date: Fri Jan 12 12:44:56 2018 -0800 Merge pull request #2858 from RosettaCommons/everyday847/protocols_3_split First pull of many, eventually intended to help split up protocols.3 commit 81377a310b114a4daf1d6b74c7f5996df5402672 Merge: 49a43f0 77ef618 Date: Fri Jan 12 11:41:23 2018 -0800 Merge pull request #2856 from RosettaCommons/everyday847/docking_in_new_FT_setup_FARFAR New-FT setup for FARFAR with docking commit 49a43f0d46d18b02f7d1c0abcd590809dfd0be41 Merge: 79850e5 9c736e3 Date: Fri Jan 12 07:51:28 2018 -0500 Merge pull request #2799 from RosettaCommons/rfalford12/serlialize-MathMatrix Adding Serialization functions for MathMatrix: Added MathMatrix.srlz.hh and MathMatrix.srlz.cc to serialize the MathMatrix class commit 79850e5dfa8f50b13cc67e2ba7833ad9d2703ac6 Merge: 62813c7 adad6ec Date: Thu Jan 11 17:17:53 2018 -0500 Merge pull request #2803 from RosettaCommons/rfalford12/pose-membrane-pass-through Add pass through methods for MembraneInfo in pose commit 62813c780880cf34f9004c62e8b6dc1bbb699da1 Merge: 2a9d30a 23e1bcc Date: Thu Jan 11 12:37:03 2018 -0700 Merge pull request #2864 from RosettaCommons/sergey/f2 updating .gitignore so running `git clean -fd` does not remove build files commit 2a9d30ade9ae61d5c3bdd6cd4a94c2697df943f3 Merge: 3e4d7cf 55b0480 Date: Wed Jan 10 17:42:34 2018 -0600 Merge pull request #2617 from RosettaCommons/darwinyfu/minor-ligand Basic constraints can now be used with ligand docking low resolution Transform mover sampling. commit 3e4d7cf26a99a1e92e176e935d250726b5eb96e6 Merge: 0bb20da a5148ad Date: Wed Jan 10 16:38:06 2018 -0600 Merge pull request #2862 from RosettaCommons/roccomoretti/header_using_as_typedef_fix Fix the `header_using_check` integration test to allow new using syntax. The new syntax (with a = in the line) is a replacement for typedef, rather than a questionable/objectionable use of using, so don't raise a warning/error on it. commit 0bb20dabef9b130aa281656f14ddce187a374c8e Merge: c9a628f 4033e6f Date: Wed Jan 10 11:02:47 2018 -0800 Merge pull request #2854 from RosettaCommons/everyday847/cps_part_two Second part of cyclic peptide stepwise PR. commit c9a628f01e2eea95deb0ca818bdb9006ad28f7e0 Merge: 464272a 46ea502 Date: Tue Jan 9 18:10:10 2018 -0800 Merge pull request #2857 from RosettaCommons/vmullig/voidspenalty_fix Correct a silly mistake in the scorefunction setup options for the voids_penalty energy. I was calling the wrong setters. Whoops. commit 464272a25dbde5075abb2827ac76351a436e712f Merge: 180253a 91bce8a Date: Tue Jan 9 18:07:35 2018 -0800 Merge pull request #2705 from RosettaCommons/vmullig/polar_oligourea Adding a few polar oligoureas to the database (and a few hydrophobics) I want to be able to design surfaces with oligoureas, too. In addition to adding these oligoureas, this pull request resolves some NCAA issues. Tasks: - [x] Add OU3_THR.params. - [x] Add rotamer library to Git LFS repository. - [x] Add OU3_ASN.params. - [x] Add rotamer library to Git LFS repository. - [x] Add OU3_GLN.params. - [x] Add rotamer library to Git LFS repository. - [x] Add OU3_TRP.params. - [x] Add rotamer library to Git LFS repository. - [x] Add OU3_TYR.params. - [x] Add rotamer library to Git LFS repository. - [x] Update residue_types.txt. - [x] Fix bug in `pro_close` energy that was affecting OU3_PRO and DOU3_PRO. - [x] Test all oligoureas (_not_ as a unit test, though, since this would require adding all oligourea rotlibs to the database). - All work well EXCEPT OU3_PRO, which seems to have a problem with `pro_close` --> fixed. - [x] I will add a unit test for the OU3_PRO case, just to be on the safe side. - [x] Figure out rotamer-building problem --> fixed. - [x] Figure out OU3_PRO geometry problem. This seems to be a fundamental issue with `fa_dun` derivatives and scoring. - [x] Adding a scoring test. - [x] Fix beta-amino acid problem. - [x] Small tweak to the cis-peptide bond GeneralizedKICperturber to make it work with oligoureas. - [x] Check integration tests. - Most integration test changes are cosmetic (caused by additional residue types or noisy tracer now made into a Debug tracer). - `cyclization` is due to slightly different peptoid rotamers since a Dunbrack bug was fixed. Qualitatively the same. - `disulfidize_beta_cys` finds more and better beta-cysteine disulfides due to Dunbrack bugfix. - `ncaa_fixbb` finds new and slightly better rotamers at peptoid positions due to Dunbrack bugfix. - `oligourea_design` and `oligourea_predict` show expected trajectory changes due to Dunbrack bugfix and GenKIC cis-peptide bugfix. - `unfolded_state_energy_calc` changes expected due to Dunbrack bugfix affecting peptoids. @twcraven commit 180253a2368767aabff68e7e59d2633f2730ba1f Merge: 9940eeb af4681e Date: Tue Jan 9 11:43:29 2018 -0800 Merge pull request #2748 from RosettaCommons/tjbrunette/hanlun_repeat_prop Tjbrunette/hanlun repeat prop commit 9940eeb524f3ca0e29b49be6f27d0acbf6967128 Merge: a2806a6 e2e591b Date: Tue Jan 9 14:11:48 2018 -0500 Merge pull request #2859 from RosettaCommons/dougrenfrew/fix_permissions Change permissions on cc, hh, and some other files so that they are not executable commit a2806a69c4b3c33182a3130401d367050c56dbc6 Merge: 1d53c71 13aa9eb Date: Tue Jan 9 10:23:02 2018 -0500 Merge pull request #2853 from RosettaCommons/JackMaguire/MCHBNetCorrection Misc MC HBNet updates commit 1d53c7155da191446968f5381f485398d417a351 Merge: 4da3ba8 09b4917 Date: Mon Jan 8 12:21:11 2018 -0800 Merge pull request #2849 from RosettaCommons/vmullig/dun02_ncaa_unit_test Add unit test for Dun02 canonical-noncanonical equivalence. In pull request #2773, I added a unit test for equivalent canonical/noncanonical rotamers, derivatives, and scoring, but I only did it for Dun10-style libraries. Adam might have identified a bug specific to Dun02-style libraries, so I need a unit test for this, too. Update -- I think Adam has identified the problem, now, and I'll open another pull request to fix it. I'd like these unit tests in master, though, so that I know that I don't break anything while fixing the problem. commit 4da3ba86e4e17be532d444c5924543f3eb816a1f Merge: dd6cd0e 9a75e6d Date: Mon Jan 8 13:42:01 2018 -0600 Merge pull request #2816 from RosettaCommons/jadolfbr/glycan_mm_factory Glycans in MoveMapFactory The `MoveMapFactory` now deals with glycans properly in that it uses IUPAC definitions for chi/bb. Since Rosetta does not understand what a BB torsion is for glycans very well. This includes setting proper 'branch' torsions as well and differentiating from a proper 'chi' that we think of vs a proper 'bb' in glycan nomenclature. This change allows us to use the MMFactory to properly select and minimize glycans. In combination with the GlycanResidueSelector, we now have full control of sane glycan torsional selection. This PR separates out the core glycan MM code we had previously (and is covered with proper unit tests) so that it can be called independently of the`get_movemap_for_glycans` function. @raemisch @BrandonFrenz @JWLabonte Example Use in a script to do FastRelax on an H3 loop in addition to minimizing the neighboring glycan tree after threading a sequence: ``` ``` commit dd6cd0e19167b04b5f4d771cb75622f22a7af15f Merge: d2f80a3 98b6a80 Date: Mon Jan 8 13:39:09 2018 -0600 Merge pull request #2805 from RosettaCommons/jadolfbr/improve_glycan_error_handling Improve Glycan Error Handling This PR fixes map access in GlycanTreeSet so that we actually check if the residues are there before accessing them. This allows us to cleanly exit with helpful error messages. This also adds more helpful XSD text for GlycanTreeRelax and GlycanRelax use of the Residue Selector. We also now check to make sure we only have glycans selected from the ResidueSelector in GlycanTreeRelax - instead of cryptic crashes. Cosmetic integration changes expected in all tests that load glycan poses. commit d2f80a3dba347ef2dffa9145134fd7a3a4e9ce2f Merge: 1b23b2f 0ef999a Date: Mon Jan 8 11:06:32 2018 -0600 Merge pull request #2820 from RosettaCommons/roccomoretti/switch_residue_type_set_fix Fix issue with crashing SwitchResidueTypeSet The make_centroid() utility function, which is applied when SwitchResidueTypeSetMover can't find a corresponding type, had a bug where resetting the ResidueType's atom type assumed that it was operating with the same type set with the current and replacement type - which wasn't the case for make_centroid(). Change things such that switching the atom type set on a ResidueType appropriately swaps out the atom types, as much as possible. commit 1b23b2fd3d4cc2df3ba6bbc379588d5e95532dfe Merge: 5a69569 9f5c44f Date: Sun Jan 7 23:21:49 2018 -0800 Merge pull request #2852 from RosettaCommons/everyday847/everyday847/cps_maybe_no_patch_renames Part one of my big cyclic peptide stepwise merge commit 5a69569af0b4a0e375f9aadf1847d62476375b47 Merge: 9d15b8a f8571f5 Date: Sat Jan 6 13:19:11 2018 -0500 Merge pull request #2847 from RosettaCommons/JackMaguire/ReadPoseExtraScoreFilter Read Pose Extra Score Filter commit 9d15b8a0c5d34c36a84e2e7590577092be1b629b Merge: 2214c65 d62037a Date: Sat Jan 6 09:57:36 2018 -0800 Merge pull request #2843 from RosettaCommons/everyday847/more_basepair_constraints Enable base pair constraints -- set up from within code or from a 'constraints' file commit 2214c65acddca2cb9f1965bdd3d2f1130da1c5cc Merge: eb16314 902c8db Date: Fri Jan 5 13:13:51 2018 -0600 Merge pull request #2840 from RosettaCommons/roccomoretti/tlt_fix Fix failing thread local tracers test. commit eb1631474018bc997767766582cf25b707637a7d Merge: 6f35109 c1694a2 Date: Thu Jan 4 15:37:39 2018 -0800 Merge pull request #2568 from RosettaCommons/vmullig/minor_thread_fixes Some minor thread-safety fixes. A few minor things that I noticed, now fixed. TODO: - [x] Clean up basket of deplorables in ProQ_Energy. - [x] Remove static var in PoseFromSFRBuilder. Should be local to class. - [x] Fix issue in min_pack --> @aleaverfay . - [x] Prohibit rotamer dumping if multi-threaded. commit 6f351094aa2a6eb13d1b4c9c5c2aad59b19e30e8 Merge: a998a81 9eda6c8 Date: Thu Jan 4 15:23:05 2018 -0800 Merge pull request #2842 from RosettaCommons/vmullig/shorten_voids_penalty_test Halving the runtime of an integration test that occasionally times out. The voids_penalty_energy_design integration test is a bit too long, and is just on the cusp of timing out on the test server. It results in random failures due to occasional timeouts. This PR shortens the integration test a bit. commit a998a81efb6e2eeed5fdf11ceb5cc39f591535a9 Merge: c67dd16 ae92f3a Date: Wed Jan 3 15:51:33 2018 -0800 Merge pull request #2838 from RosettaCommons/basantab/fix_VLB_vector1_index0 A for loop was using index 0 in the Vector1 type abego_ variable in VLB commit c67dd16b3f41e81cffd90c986af007c69275ae69 Merge: 92f887e c3b01a7 Date: Wed Jan 3 01:29:37 2018 -0800 Merge pull request #2839 from RosettaCommons/vmullig/restore_multithreading Restoring the multi-threading in simple_cycpep_predict, which was wiped out by a toxic commit. commit 92f887efc1218530287df54dc155d01155f666b0 Merge: ff4c3ae 6db2010 Date: Tue Jan 2 22:42:09 2018 -0800 Merge pull request #2835 from RosettaCommons/everyday847/noncanonicals_in_new_FT_setup_FARFAR Everyday847/noncanonicals in new ft setup farfar commit ff4c3aeee44348141f36a2b306feffb8ec221943 Merge: 79c6860 df0ef8f Date: Tue Jan 2 10:53:05 2018 -0500 Merge pull request #2834 from RosettaCommons/aleaverfay/datamap_access_improvement DataMap::get() and get_ptr() efficiency The previous way data was retrieved from the DataMap was wildly inefficient. First, it made a complete copy of the inner std::map map, instead of asking for a reference, and then, instead of using find() on that inner map, it searched through all of its entries in O(n) fashion. Why even have a map if you're going to search that way? So now the inner map is retrieved by reference (thanks, Sergey, for pointing out this inefficiency) and then the inner map's find() function is used for O(ln(n)) search. I was seeing a large number of trajectory changes due to these changes in a number of integration tests in another branch, so I am moving these changes into their own branch to merge by themselves. Stangely, these modifications on their own are not producing the trajectory changes I was seeing in another branch, so I'm kinda confused. commit 79c6860c3ea8d07bf326162a0e40f9a592e9a9c5 Date: Tue Jan 2 03:30:55 2018 -0500 beautifying commit 67a11b3636ad7c8adec149945183ecfc5e852bdd Merge: d88d837 f10cbb7 Date: Mon Jan 1 22:25:02 2018 -0800 Merge pull request #2836 from RosettaCommons/everyday847/submotif_chirality_match Help match chirality for submotif moves commit d88d83748e854c85cb77cc68b8780508c502a88b Merge: 22dd764 c063a68 Date: Mon Jan 1 09:38:17 2018 -0600 Merge pull request #2811 from RosettaCommons/roccomoretti/fix_pose_rts_patching Fix behavior of PoseResidueTypeSet w/r/t patching Because of the way the base type generate_residue_type_write_locked() was implemented, the previous version of PoseResidueTypeSet actually re-patched types, such that the ResidueType object of, say, GLU:NtermProteinFull is a different object when pulled from PoseResidueTypeSet versus from the associated GlobalResidueTypeSet (they're functionally equivalent, they're just two different objects). To increase efficiency, this PR changes the PoseResidueTypeSet::generate_residue_type_write_locked() such that it will better defer patching to the associated GlobalResidueTypeSet. commit 22dd7641fbffdb197b7f2719d21726e3a8c496e3 Merge: 7984dbe d2a9f0e Date: Sun Dec 31 10:52:53 2017 -0800 Merge pull request #2405 from RosettaCommons/everyday847/everyday847/chunk_jq_and_fixes Implement a 'chunk JobQueen' for fragment assembly + fix some earlier RNA jd3 choices