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 ago by
Anonymous.
-
AuthorPosts
-
-
August 18, 2012 at 11:20 pm #1378
Anonymous
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 #7628
Anonymous
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 #7630
Anonymous
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 #7632
Anonymous
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 #7631
Anonymous
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.