Merge pull request #2183 from RosettaCommons/roccomoretti/restype_destructor_observer
Add ResidueType destruction observer system
For classes (mainly in scoring) which need to cache per-ResidueType data, but want to do it in a way that doesn't preserve the lifetime of the associated ResidueType, they can cache the data based on the (raw) pointer to the ResidueType. However, if the ResidueType is deleted, there's issues with an invalid pointer sticking around.
To get around this, add an observer system (like the observer system in Pose), which is specifically for informing those classes about ResidueType destruction, so they can appropriately clear their cache of the soon-to-be-deleted ResidueType reference. This approach was decided on after a short discussion with @aleaverfay.
In addition to cleaning up some raw ResidueType pointer uses which were not needed (which involved adding pointer accessors to Pose/Conformation/Residue in addition to the reference accessors), the following classes were hooked into the observer system: LKB_ResidueInfo, CartesianBondedEnergy, FA_ElecEnergy, FACTSPotential, and FullatomCustomPairDistanceEnergy.
This fixes issues #2006 and #2021 .
The only test changes expected are the central_class_modification, and a number of cosmetic changes resulting from when count pair data gets loaded.
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #2196 from RosettaCommons/vmullig/gabe_science
Add a filter to compute the longest continuous stretch of polar residues in a pose or selection
Requested by @grocklin .
Tasks:
- [x] Add the filter from code templates.
- [x] Write parse_my_tag:
- [x] Option to exclude terminal stretches.
- [x] Filter high or low.
- [x] Cutoff.
- [x] Optional residue selector.
- [x] Write XSD function.
- [x] Write apply function.
- [x] Add ResidueSelector support.
- [x] Add option to treat glycine as a polar residue.
- [x] Unit tests:
- [x] Counting in a pose.
- [x] Excluding termini.
- [x] Counting in a selected region.
- [x] All of the above with multiple chains.
- [x] Integration test.
- [x] Documentation.
- [x] Beauty.
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #2191 from RosettaCommons/JWLabonte/sugars/database
Carbohydrates: A gift for @raemisch
All unit tests pass. Beautifier is complaining about code that isn't ugly. Integration test changes are all reporting on a new ResidueType.
Rocco Moretti 8 years Just a note that the beautification test is a perma-fail one. You either have to conform to the unrealistic standards of beauty that society (or rather the test) expects of you, or be the change you want to see in the world and fix the beautifier script. (Or lobby Andrew to fix it for you.)
Labonte 8 years Ah, I thought it was like an integration test. (I would strongly argue that it should be like an integration test, but that's for another time.)
In this case, then, the change was from an earlier merge. I had thought that that one was a different problem, but revisiting it, it was indeed a spacing issue. It should be fixed now. (I do not see what is wrong with Andy's code.)
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #2185 from RosettaCommons/mchakra8/UDP
Carbohydrates: Adding UDP-sugars
This merge will add UDP parameters to load UDP-sugars and non-conjugated UDP.
All unit tests passed. All integration tests indicate a change in output due to the addition of a residue type (with the exception of the Carbohydrate integration test, where the output is as expected).
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #2171 from RosettaCommons/guffysl/hbond_residue_selector
This commit adds two new residue selectors, BondedResidueSelector and HBondSelector.
BondedResidueSelector requires either an input residue selector or list of residue numbers and selects all residues with chemical bonds to the input set. HBondSelector optionally takes an input residue selector or list of residue numbers. If provided, it selects all residues that form hydrogen bonds with residues in the input set given that those hydrogen bonds meet a specified energy requirement (default -0.5 REU). If no selector is provided, all residues in the pose that form hydrogen bonds are selected. By default, backbone-backbone hydrogen bonds are ignored.
notify author
notify list [rosetta-logs@googlegroups.com]