commit fd41b7a00c91809d757bf381a780bf33c844dc02 Merge: 92e98c2 02026e9 Date: Tue Feb 23 17:12:56 2016 -0800 Merge pull request #1120 from RosettaCommons/vmullig/tweak_etable Splitting some of the changes from pull request #1093 Pull request #1093 (which aims to make RamaPrePro work with cyclic geometry and noncanonicals) revealed problems with cyclic geometry and the etable energies which I also fixed in that branch. It also produces a few more integration test changes than I had anticipated. I'm cherry-picking some of the changes from that pull request into a separate pull request so that I can pinpoint which changes are causing which integration test changes. This pull request: Tweaks the logic for the etable energies to ensure that cyclic geometry is handled properly. If I've done things properly, the only integration tests that change should be the ones that involve cyclic geometry. Test changes look good (only cyclic geometry and noncanonical connections show changes). Merging. commit 92e98c28bdb9eb7b50d67368d523fbdd3bad8641 Merge: 5930c00 ba0dcb3 Date: Tue Feb 23 11:15:37 2016 -0800 Merge pull request #1119 from RosettaCommons/revert-1053-everyday847/remove_extra_pcs Revert "Removed old versions of pseudocontact shift code no longer in use as of 2010" commit 5930c00a601e46e0c4b2c04d4e2198867031240e Merge: 97210cb a3fcf9b Date: Mon Feb 22 19:29:04 2016 -0800 Merge pull request #1118 from RosettaCommons/everyday847/fix_metalloprotein_valgrind Fix valgrind error identified by Rocco in metalloprotein setup commit 97210cbf2e3bdbdba9a50a5163b061241837cac2 Merge: 025314a 75d61f6 Date: Mon Feb 22 15:20:45 2016 -0800 Merge pull request #1117 from RosettaCommons/jadolfbr/sugars/debug_pdb_info Fix Simple Glycosylation test 2 This is attempt number two to fix this integration test. Attempt 1 uncovered deeper bugs in setting dihedrals from the LinkageConformer data for residues with > 1 omega (ASN-glycan linkage), which I missed when I merged before. The unit tests are now expanded for N glycan omega angles and tested commit 025314a3addd1a88a1637e3e251749a8d054e4f8 Merge: 9957306 a50a50a Date: Mon Feb 22 11:53:06 2016 -0800 Merge pull request #1108 from RosettaCommons/phbradley/dna_scoring Phbradley/dna scoring: add new energy methods, potentials, and database files to support a few dna-specific energy terms. Part I of a series of a couple of commits. Integration changes were observed locally and on the test server, but they appear to be entirely due to the addition of several new score types in the ScoreType.hh enum. commit 995730601dfbfa655ca4eaf9b7b1c0974e645d4a Merge: 06a1671 3f76233 Date: Mon Feb 22 09:18:58 2016 -0600 Merge pull request #1103 from RosettaCommons/roccomoretti/rotamer_max Rework proton chi expansion With the new PDB components, there are some ligands which have an insane number of proton chis. (15+). Even at a very small level of proton chi sampling (60, -60, 180), the proton chi rotamer variants themselves absolutely kill packing and take up huge amounts of memory. (3^19 equates to greater than one billion proton chi combinations.) To fix this, I've instituted a scheme where the proton chi expansions are randomly subsampled, if they exceed a pre-specified limit. This should be set high enough that it won't affect anything that isn't currently bogged down due to proton chi expansion. We also had a large amount redundancy in the proton chi expansion code. I've centralized some of this, but there's still opportunities for further consolidation. commit 06a1671bf846d9d5efee31da1c161bfa9b7aacd4 Date: Sun Feb 21 12:03:58 2016 -0600 Added RRM dinucleotide pair utilities commit 2622509e5b741948c32916a355b11878b1c6676d Merge: dd04315 a65e416 Date: Sat Feb 20 23:53:00 2016 -0800 Merge pull request #1114 from RosettaCommons/jadolfbr/sugars/debug_pdb_info Fix simple_glycosylation Integration Test Fix crash of simple_glycosylation in debug mode. Fix release mode simple_glycosylation test stochastic changes. commit dd0431510142e04eb47e8623d6c1095813b1a840 Merge: d66d4f5 9624952 Date: Fri Feb 19 14:00:56 2016 -0800 Merge pull request #1110 from RosettaCommons/vmullig/fix_lei_app Turning on one of Lei's pilot apps. This pilot app is used, and should be compiled by default so that compilation can be tested. Its main() function has everything in a try/catch block, so it should be good to go, but I'll run it on the test server first. Correction: there were some owning pointer issues that were preventing compilation on Mac/clang. I've fixed these, now. commit d66d4f54a373e459997ae19aad8d0294cc97e19b Merge: 2e381ac 891665a Date: Fri Feb 19 13:59:30 2016 -0800 Merge pull request #1111 from RosettaCommons/vmullig/fix_conect Fixing bug in CONECT record indices caused by TER records. The addition of TER records throws off the indices for CONECT records. Need to fix this. This will be another one that causes a lot of integration test changes, but it should just be to CONECT records in multi-chain PDB files. Merging. commit 2e381ac90bb3c8a1a0215ae230111a7e84ef72f2 Merge: d0e8e52 c232ff9 Date: Thu Feb 18 14:56:13 2016 -0800 Merge pull request #1107 from RosettaCommons/vmullig/rmstest Adding integration test for the fit_helixparams app in a case that was producing bad geometry and bad fits prior to my corrections to the RMS machinery. I want the problem to STAY fixed. The fit_helixparms_rms integration test should produce a PDB file in which every mainchain atom (except the carbonyl oxygen) has a copper atom that overlays perfectly on it. Distorted geometry or imperfect copper atom placement is a sign that something has gone wrong. Small changes to the coordinates that do NOT distort the geometry or affect the placement of copper atoms relative to backbone atoms are acceptable. There is a README.txt file that explains this in the integration test directory. I'll also add the expected output to the expected_results directory. commit d0e8e52cbf2262727bcbec30f323bbedd287d378 Date: Thu Feb 18 16:03:07 2016 -0500 Added auto detection of jupyter via env var. commit 763a01403a7a6aa8b3858b50a32fa3b88bf3c745 Merge: 2f46c70 284af2e Date: Thu Feb 18 11:26:27 2016 -0800 Merge pull request #1045 from RosettaCommons/raemisch/fix_remodel Remodel Fixes A few fixes for various things in remodel from Sebastian Raemisch (@raemisch) and I. Heres the list: 1) Remodel should work on the first chain of the pose or the chain given in -run:chain. However, (in some instances) you must pass run:chain even if you only have a single chain in the PDB. This fixes that, and by default will use the first chain of the PDB. 2) If you use Alanine's instead of any other aa for centroid-stage backbone fragment building using the -remodel::generic_aa option, you would seqfault. This fixes that. 3) Lets say you have an option, _design_neighbors_, that you explicitly set to false on the command-line. Remodel would design those neighbor residues and baffle you. The bug is that for boolean options all over remodel code, instead of accessing the option itself, it accessed the use of the option. This fixes it in every file that used the remodel options. In most instances (as these were default false or were intended to be default false), this is OK. However, this is an interface bug, and one should generally __NEVER__ do this as it can (easily) lead to wrong results. Remodel integration test will change - It was tested as is (in the PR) and then updated to use -out:prefix in order to run its 3 tests and have good comparisons for the future. commit 2f46c7002f13b0b31ff45f3a9b32a8be798af3a7 Merge: 44da0a9 1e699b0 Date: Thu Feb 18 08:03:01 2016 -0800 Merge pull request #1049 from RosettaCommons/xrw_enzdes_refactor_test Who says you have to be at an XRW to overhaul a major system in Rosetta? Integration test changes are either cosmetic, those irksome 18-ish, or understood (inverse_rotamer_remodel) and desired. commit 44da0a9651ce776f549fc1d15191d0d8f756173f Merge: 4921162 8907870 Date: Wed Feb 17 20:19:10 2016 -0800 Merge pull request #1078 from RosettaCommons/GlycanRelax/master Glycan Relax Protocol Add a new Glycan Relax application, add updates to Jason's RosettaCarbohydrate framework and add a generalized framework for backbone dihedral sampling. Code by @jadolfbr and @JWLabonte mainly during an intense collaborative coding week in SD. Thanks Jason! Glycan Relax aims to sample potential conformational states of carbohydrates, either attached to a protein or free. It is extremely fast. Currently, it uses a few strategies to do so, using statistics from various papers, the CHI (CarboHydrate Intrinsic) energy term, and a new framework for backbone dihedral sampling. Conformer statistics adapted from Schief lab Glycan Relax app, originally used/written by Yih-En Andrew Ban. Algorithm ======= Each round optimizes either one residue for BB sampling, linkage, or multiple for minimization. The overall total number of rounds is scaled linearly with the number of residues to sample. Currently uses a random sampler with a set of weights to each mover for sampling. The packing of OH groups is currently disabled for speed and memory. Weights are currently as follows: .20 Phi Sugar BB Sampling .20 Psi Sugar BB Sampling .20 Linkage Conformer Sampling .30 Small BB Sampling - equal weight to phi, psi, or omega -> .17 +/- 15 degrees -> .086 +/- 45 degrees -> .044 +/- 90 degrees .10 MinMover Framework Updates =============== Enable Optimization of glycan linkages during creation of glycans to ideal values @labonte - Fixed packer to disable packing of residues with SC_BRANCH_POINT variant, which would cause breakage of polymer residues coming off of amino acid side chains. Refactor CHI (CarboHydrate Intrinsic) energy term, enable creation of Sugar BB sampling data from the energy term, handled by the ScoringManager, and only done once. LinkageConformerMover: ``` ///@brief This code changes all of the dihedrals of a particular glycosidic linkage based on database info, /// esentially sampling carbohydrate dihedral conformers of two residues. /// ///@details The linkage conformers are carbohydrate residue type and (and linkage oxygen) dependant ie MAN-MAN /// If data is not known here, by default we sample from restype-independant data. /// If there are multiple conformers for a given linkage, will randomly select from them. /// /// 3 Main Conformer Sampling Strategies: //// 1) Mean + uniform in X standard deviations (Default) //// ->Build conformers using the means of dihedrals + or - some amount within X standard deviations of the mean. //// //// See Also: //// LinkageConformerMover.set_x_standard_deviations //// //// 2) Mean + probability in X standard deviations //// //// 3) Idealize //// -> Use only means when building linkage conformers. //// //// See: //// LinkageConformerMover.set_idealize_torsions ///// ``` Other ==== Added proper enums for the 3 main dihedrals to core/types (MainchainTorstionType). Eventually, these need to be reconciled with the numerical bb dihedral types that already exist, but aren't quite typed enums. Add functions to deal with these in pose/util. Since the numbers of the enums and the named integers match, these work with either. Add BBDihedralSampler base class and derived types for 1 dimensional, 2 dimensional, etc. sampling of BB data. Recapitulate SmallMover using this framework. Can use a general mover (BBDihedralSamplerMover) to use any BBSampler derived class. With a factory class, this could have RS Support. Code in protocols/simple_moves/bb_sampler and protocols/simple_moves/BBDihedralSamplerMover. Clean up MoverContainer. Add FAIL enum to MoverStatus. Fix/clean up some Code Templates. Add function to PyMolMover to set the model name. Clean up documentation for BackboneMover (turns out I've been using it wrong for 5 years. yay). Clean up documentation for MinMover commit 492116283358a183a72181467b6476e44c0e4340 Merge: 0f33756 b48263c Date: Wed Feb 17 10:02:16 2016 -0800 Merge pull request #1100 from RosettaCommons/hahnbeom/bugfix Fixing stability issue in cartesianMD Mover. commit 0f337566b202da1cb87e94bd01245d15d70e3cc7 Merge: 4931db8 ec62ab1 Date: Wed Feb 17 03:31:33 2016 -0800 Merge pull request #1102 from RosettaCommons/vmullig/fix_helix_fit Fixing issues with fit_helixparams app. Some code in the numeric libraries for superimposing structures and calculating RMSDs is throwing off my fit_helixparams app. A small value (1.0e-7) is currently added to certain numbers to avoid a zero determinant in edge cases. This small value is resulting in a skew to the transformation matrices in some cases, and it turns out that it's because it's TOO small. I won't take it out, but I'll add a pass-through to let a specific protocol override it with a larger value. Initial tests indicate that this greatly improves the behaviour of the fit_helixparams app. @hssnzdh2 @everyday847 Tasks: - Modify the rmsfitca2() function in numeric/model_quality/rms.cc/hh to take a double-precision float for the offset value. (Defaults to 1.0e-7 -- preserve the old behaviour). - Modify calling functions similarly. - Modify the fit_helixparams app to pass "1.0e-5" to rmsfitca2(). - Add option for user to set the offset value to pass to rmsfitca2(). - Beauty.