Member Site › Forums › Rosetta 3 › Rosetta 3 – General › rs filter for terms in .sc files
- This topic has 4 replies, 2 voices, and was last updated 12 years, 3 months ago by Anonymous.
-
AuthorPosts
-
-
August 18, 2012 at 11:20 pm #1378Anonymous
I would like to apply a filter in rosetta scripts that checks for specific “score terms”, ie numbers that are output to .sc files in various protocols. For instance, I would like to get these terms that are normally output from movers like FlexPepDock (pep_sc or I_sc) and InterfaceAnalyzerMover (dG_separated/dSASAx100, dSASA_int).
I figured out how to use the filter EnergyPerResidue to get term in the score function of my choice:
{EnergyPerResidue name=energy_per_res_filter scorefxn=score12 score_type=hbond_bb_sc res_num=81 energy_cutoff=-0.5 whole_interface=0 jump_number=1 interface_distance_cutoff=8.0 /}However, FlexPepDock and InterfaceAnalyzer aren’t score functions, but protocols, so how do I reference them. So how would I do something like
{EnergyPerResidue name=energy_per_res_filter scorefxn=InterfaceAnalyzer score_type=dG_separated/dSASAx100 res_num=81 energy_cutoff=-0.5 whole_interface=0 jump_number=1 interface_distance_cutoff=8.0 /}In this case, it doesn’t really make sense to have a per residue score of an interface metric… but what I want is the number for the whole structure that is output to a .sc file when I run the protocol.
I hope that makes sense
-
August 19, 2012 at 12:50 am #7628Anonymous
InterfaceAnalyzer should be useable directly from RosettaScripts, and it “knows” to dump its output into the scorefile (.sc) by default (make sure the tracer boolean is false). It dumps a dozen different numbers to the scorefile.
You can’t filter on InterfaceAnalyzerMover, because it doesn’t return a single value. If you knew which of its many returns you wanted to filter on, then you could write a filter that focuses on that specific quality of the protein interface. For example, ddg of binding: http://www.rosettacommons.org/manuals/archive/rosetta3.4_user_guide/Filters_%28RosettaScripts%29#Ddg
I’m not sure what you mean by filtering by FlexPepDock at all, since it isn’t just a simple analysis, it’s a whole protocol. If you mean, filter by some quality it evaluates, the same advice stands.
-
August 19, 2012 at 8:24 pm #7630Anonymous
Yes, I want to filter on a quality it evaluates. So I would write something similar to src/protocols/simple_filters/DdgFilter.cc .
-
August 20, 2012 at 12:43 am #7632Anonymous
After reading the available filters it seems it isn’t possible just to “grab” a certain return from a mover and filter on this. This surprises me since some filters reference movers (e.g. which mover to use to relax) and specific score terms, like fa_pair. However these terms are part of a score functions.
I will try to use the available filters to reproduce the metrics that other protocols return. Filters can be combined in a linear combination with “CombinedValue”, but it seems I can’t multiple or divide them!
-
August 19, 2012 at 8:27 pm #7631Anonymous
Well, you might not have to write the C++ code, if the filter you want already exists, but in a nutshell, yes. When I said “write a filter” for DDG, I meant write it into your XML file, not write the new C++ class yourself.
-
-
AuthorPosts
- You must be logged in to reply to this topic.