Merge pull request #167 from RosettaCommons/rfalford12/membrane-info-fix
Fixing assignment for pointers in MembraneInfo, Span, SpanningTopology and LipidInfo Object
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #147 from RosettaCommons/rfalford12/membrane_rmsd
Adding methods for computing all atom and backbone rmsd of transmembrane region. New files protocols/membrane/metrics and corresponding unit test in protocols/membrane/membrane_metrics.cxxtest.hh
Test Status:
Unit: All Pass
Integration: All pass except ones where script already failing
Build: cxx11 thread failed - already broken in master
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #165 from RosettaCommons/rhiju/fix_uninitialized_variable_in_etable
fixing uninitialized variable in Etable.hh. Only affected computation of lksol1 vs. lksol2..
fixes infs in hybridization test! other integration tests don't change or were broken to start with. doing the merge.
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #138 from RosettaCommons/weitzner/fix-xcode-after-ptrs
This revision includes various fixes to enable the C++11 builds on OS X 10.9+. Apple doesn't ship anything licensed with GPLv3, and as such the LLVM C++ library, libc++ (dual license: MIT and UIUC), is provided instead of libstdc++. It turns out there are a few differences between the two implementations that required a bunch of fixes throughout Rosetta. The most important change is that classes that extend `std::enable_shared_from_this` cannot directly construct a COP. That is, the following code will not compile: `ThingCOP my_thing( new Thing );`
The fix for this is to construct an anonymous OP first:
`ThingCOP my_thing( ThingOP( new Thing ) );`
This changes also makes the C++11 build the default on OS X 10.9+, which is preferable to using BOOST pointers when it is possible. These changes triggered an issue in the environment code that leads to a segfault when calling `env.start`. Justin is aware of the problem and is working with Luki to figure out the best course of action, but in the meantime the environment unit tests have been disabled.
A lot of people were very helpful in getting this to work. I especially want to shout out to Luki for writing some additional AST-based rewriting tools to automate a lot of the fixes. Doug and Sergey were also extremely helpful in helping get everything tested.
Some of the tests on the test server may throw script errors right now and I will be working with Sergey to update those tests ASAP.
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #154 from RosettaCommons/koepnick/envsmooth_zero_negatives
Updated envsmooth energy to read data from database, and added a new option.
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #158 from RosettaCommons/vmullig/betahelix
Vmullig/betahelix into master
This introduces a MakeBundle mover to create helical bundles using the Crick equations. This has several advantages over the existing workflow (which used an external Python script to place backbone elements that then had to be Cartesian-minimizaed):
- No need for any minimization (ideal geometry is generated). This is because all backbone atoms are placed using the Crick equations (not just alpha carbons), permitting direct conversion of Crick parameters to mainchain torsions.
- Fully generalized (works with helices or sheets, or with arbitrary helices made with noncanonical amino acids). Construction of beta-barrels seems to work as well as helices of helices.
- Permits parameter sampling (not possible with the external generator) during design.
- A framework is started to allow parameter-space minimization (rather than relying on torsion-space minimization) during design.
- Minor helix Crick parameters can be fit using the fitting app (also added with this pull request), permitting precise determination of these parameter values for an arbitrary heteropolymer in an arbitrary helical conformation. (This tricks the Minimizer into acting like a nonlinear least squares fitter, operating on an ideal helix built of subunits with repeating user-specified mainchain torsion values.)
- Crick parameters for alpha-helices, beta-strands, and beta-amino acid 14-helices are now stored in the database, and do not have to be entered by hand.
I plan to make this work with @tlinsky's component framework, which permits individual secondary structure components of arbitrary length generated by arbitrary generators to be linked up, with linkage patterns sampled in an iterative manner.
My checklist:
- Added HelixParams and BundleParams to numeric/crick_equations (functions that compute the equations and their derivatives).
- Created FitSimpleHelix mover, FitSimpleHelixMultiFunc (to trick the Minimizer into nonlinear least squares fitting of parameters) and fit_helicalparams pilot app.
- Created write function for .crick_params files.
- Created read function for .crick_params files.
- Created MakeBundleHelix mover and test_makebundlehelix_mover pilot app.
- Created MakeBundle mover and test_makebundle_mover pilot app.
- Added RosettaScripts links to MakeBundle mover. (NEEDS TO BE DOCUMENTED!)
- Added functionality to MakeBundle mover for reading .crick_params files from the database easily.
- Added Crick parameters for alpha-helix, beta-sheet, and (beta-amino acid) 14-helix to the database.
- Added fit_helixparams and helical_bundle integration tests.
- Reworked the math a bit to avoid divide-by-zero errors and to handle the omega0 = 0 case, which was initially causing NaNs in the output pdb.
- Checked everything with the owning pointer changes. (I was still developing on the pre-owning pointer change background, and had to fix a few small things about the way in which I was using owning pointers.)
- Ensured elegant failure (rather than segfault) when Crick parameters are provided that result in no sensible structure.
This merge also brings in a few incidental changes:
- A few more crosslinkers added to the database.
- A small change to the MinMover that fully implements TaskOperation-based selection of residues, particularly for setting non-PHI degrees of freedom. Previously, this was globally setting the DOF setting, which was a bug. Now, all DOFs of a given type within a residue are set by the packability given by the task operation. Whoever started implementing this never documented the feature, but it's a powerful one. (No changes to documented functionality are expected.)
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #144 from RosettaCommons/jadolfbr/gui_testing
Updates to PyRosetta Toolkit for testing on the test server
This set of commits finally allows the PyRosetta Toolkit GUI to be tested with the PyRosetta unit tests on the test server. @lyskov helped immensely on the test server side, as well as commits and guidance for how this could be accomplished.
Changes:
-PyRosetta Toolkit GUI is now moved to src/python/bindings/app.
-All test modules renamed and moved to src/python/bindings/test.
-Code updated to reflect runs on test server - ie no PYROSETTA_DATABASE environment variable.
-Test modules updated to reflect new input and output directories required for test server runs.
-TestBindings.py does not run the GUI tests by default. They are enabled through the test server via the --enable-gui option.
Other cool things:
-Running SetPyRosettaEnvironment.sh will now set an alias for running the GUI as pyrosetta_toolkit!
notify author
notify list [rosetta-logs@googlegroups.com]
Merge pull request #152 from RosettaCommons/Seqeunce_constraints
Applied changes to FavorSequenceProfile mover and SeqprofConsensusOperation taskoperation. The changes allow to the mover and task operation to add seqeunce constraints to chain no. 2 of the pose. The clang test did no run but this is not caused by the changes
notify author
notify list [rosetta-logs@googlegroups.com]
Small bugfix for B factor refinement. Previously, correlations were computed with a mask that changed as the B factor changed. However, this led to some odd behavior. Instead, fix the mask to a radius corresponding to the maximum B value during B factor refinement. Positional refinement is unchanged.
notify author
notify list [rosetta-logs@googlegroups.com]
Merges pull request \#150 from bazzoli/bazzoli-master-plus-JKlab-only-fixes-test3.
Adds new code from the Karanicolas lab to:
- extract constellations of spatially contiguous atoms.
- dock small-molecules via ray-casting (DARC)
- create pocket "exemplars" to assess protein druggability.
Breaks the following integration tests because they serve new/updated code from the JK-lab.
- constel
- darc
- DARC_with_conformer_sampling_and_elctrostatics
- make_exemplar
Broke the following integration tests too, but these were already broken:
- antibody_graft
- features
- filter_termini_near_interface
- hts_io
- inverse_rotamer_remodel
- loop_creation
- rosetta_scripts_hbond_options
- splice_out_shorter_tail
- splice_out_tail
notify author
notify list [rosetta-logs@googlegroups.com]