Merge pull request #76 from RosettaCommons/nollikai/CoupledMover
Adding CoupledMover to protocols/simple_moves
Created a new mover that performs coupled side chain / backbone moves. For ligands, this mover performs a rigid body rotation and translation coupled with ligand rotamer optimization. This mover currently uses ShortBackrubMover for backbone moves, BoltzmannRotamerMover for side chain and ligand rotamer moves and RigidBodyPerturberMover for rigid body moves. This mover is compatible with PackerTasks that allow positions to be designed, making it easy to incorporate backbone flexibility into sequence design. Since ligand moves can also be performed, this mover is particularly useful for the design of ligand binding sites. In the near future I will commit a protocol that uses this mover to predict the set of tolerated sequences for a given design problem by keeping track of all the sequences that are accepted during a Monte Carlo simulation.
notify author
notify list [rosetta-logs@googlegroups.com]
Carbohydrates: mostly database updates
This merge includes some addition of ATOM_ALIASes, a new sugar topology file,
(so that I can load in sialyl-Lewis X,) and some sugar pilot app updates to
reflect the recent options system clean-up.
It also adds a formal +1 charge to all lower terminus peptide residues.
----------------------------------------
Unit test status: Not Run (no C++ code changed)
Integration test status: 1 test change
carbohydrates: expected, due to the +1 on peptide lower termini
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #75 from RosettaCommons/nollikai/ClashBasedRepackShellSelector
Adding ClashBasedRepackShellSelector to core/pack/task/residue_selector
Created a new ResidueSelector that identifies residues that clash with any possible rotamer of all designable positions in a given PackerTask. This solves a problem I routinely encounter with distance-based repack shells, which never include the same residues I would have chosen from looking at the structure. Instead, this ResidueSelector can be used to define a repack shell that only includes residues whose side-chains clash with any rotamer of a design position, resulting in the selection of residues that I actually want to be repacked. This code was co-written with Roland Pache @rpache
notify author
notify list [rosetta-logs@googlegroups.com]
Atom Typing: fixing two bugs related to atom typing
NEWS: The following bugs have been fixed:
- The patch system failed to correctly set chemical::Atom's MMAtomType name, so
so any variant ResidueType had mismatched MMAtomType names and indices.
- The patch system failed to correctly set new Elements when an AtomType
changed. This was primarily an issue for cases when virtual atoms were
changed to real atoms and vice versa.
- The Gasteiger atom-typer failed to correctly assign GasteigerAtomTypes in
those cases, because it relies on having the correct Element.
(As an aside, I have also add a miscellany of my own glyco-PyRosetta pilot
apps for tracking in Git.)
----------------------------------------
Unit test status: Pass
Integration test status: 1 test changed
carbohydrates: now showing correct atom typing
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #73 from RosettaCommons/nollikai/ShortBackrubMover
Adding ShortBackrubMover to protocols/simple_moves
Created a new mover that performs a three residue backrub move. Peptide bond rotations are also performed to minimize the displacement of backbone carbonyl oxygen atoms. This mover samples rotation angles from a normal distribution, unlike traditional backrub moves, which use a uniform distribution. The standard deviation of the rotation angle distribution can be set using set_rotation_std_dev( Real ). This mover is particularly useful when combined with BoltzmannRotamerMover to perform coupled side-chain / backbone moves.
notify author
notify list [rosetta-logs@googlegroups.com]
ResidueProperties: VariantTypes are now enums instead of strings
NEWS: Similar to what I did with properties, **`VariantType`s are now `enum`s
and the variant state of a given `ResidueType` is now stored in a vector of
Booleans indexed by said `enum`s.**
This is Part IIA of my refactoring of `ResidueType` properties in Rosetta.
**Done:**
- [x] Variant status stored in `ResidueProperties` as `vector1< bool >` and
indexed by `VariantType`.
- [x] Auto-code-generation script renamed and refactored to generate multiple
files.
- [x] String-look-ups removed from ~170 files.
- [x] ~90 topology and patch files modified to reflect name-changes to
`VariantType`s that would conflict with properties.
- [x] Added new unit tests.
- [x] Fixed any broken unit tests.
- [x] Fixed any broken integration tests.
- [x] Added way to handle on-the-fly `VariantType`s. (IMO, they should be
avoided, but it is allowed here for backward compatibility.)
- [x] Moved variant matching functions out of `ResidueType` and into `util.cc`
and thoroughly refactored them.
**Still To-Do:**
- [ ] Refactor more central code that still relies on string-look-ups. (Much
of the code involving switching from one variant to another involves
making a list of all the `VariantType` strings in the before and after
states and comparing them to select an appropriate `ResidueType`. I
will fix this shortly.)
Most of the "Still To-Do" is complete or nearly complete. I am trying to
confirm that numeric changes in SWA and SWM integration tests are not
something about which to worry. I thus decided to break this merge into two
parts. If you are curious as to the progress, see pull request #56 on GitHub.
----------------------------------------
Unit test status: Pass
Integration test status: 4 tests change
inverse_rotamer_remodel, enzdes, Enzrevert_xml: output changes explaining
custom VariantTypes
carbohydrates: output changes to ResidueType::show()
notify author
notify list [rosetta-logs@googlegroups.com]
Trying to fix what I broke in the last commit after changing the src/protocols/cluster/cluster.cc file. I added a new flag to allow clustering without superimposition during distance measure calculation.
notify author
notify list [rosetta-logs@googlegroups.com]
Made some changes to cluster.cc file. Added a flag called -skip_align to allow clustering without superimposition during RMSD matrix calculation. Used rmsd_no_super for that purpose.
notify author
notify list [rosetta-logs@googlegroups.com]