Member Site › Forums › PyRosetta › PyRosetta – General › How to use SAXS energy score in PyRosetta
- This topic has 7 replies, 3 voices, and was last updated 9 years ago by
Anonymous.
-
AuthorPosts
-
-
September 5, 2016 at 3:31 pm #2502
Anonymous
Hi,
I am trying to import SAXS energy function in PyRosetta, However, I failed to call it in python. The code I tried is:
>>> from rosetta import *
>>> rosetta.init()
>>> from toolbox import cleanATOM
>>> cleanATOM(“1YY8.pdb”)
>>> pose = pose_from_pdb(“1YY8.clean.pdb”)
>>> ### try saxs
>>> scorefxn2 = ScoreFunction()
>>> scorefxn2.set_weight(fastsaxs, 1.0)
>>> print scorefxn2(pose)
core.scoring.saxs.FastSAXSEnergy: Loading SAXS spectrum
core.scoring.saxs.FastSAXSEnergy: [ ERROR ] No SAXS spectrum specified!
I got warning message:
core.scoring.saxs.FastSAXSEnergy: Loading SAXS spectrum
core.scoring.saxs.FastSAXSEnergy: [ ERROR ] No SAXS spectrum specified!
So I want try to import SAXS spectrum file, but when I tried
>>> rosetta.core.scoring.saxs
I got error message:
>>> rosetta.core.scoring.saxs
Traceback (most recent call last):
File “<stdin>”, line 1, in <module>
AttributeError: ‘module’ object has no attribute ‘saxs’
However, I can see the python main file under PyRosetta.ScientificLinux-r55981.64Bit/rosetta/core/scoring/saxs/, how can I call import saxs data file and saxs energy function in PyRosetta.
The PyRosetta version I used is: PyRosetta.ScientificLinux-r55981.64Bit
Thanks.
-
September 5, 2016 at 5:04 pm #11827
Anonymous
A large number of the protocols in Rosetta are build around the assumption that they’ll be accessed from the commandline. We’re trying to move away from that, but a number of these assumptions remain.
In this case, the FastSAXSEnergy object is expecting that the SAXS spectum data will be provided by the “-score:saxs:ref_spectrum” commandline option. There’s ways to set the option system from within PyRosetta, but they’re not necessarily as clean as one would like.
-
September 6, 2016 at 3:03 am #11834
Anonymous
The easiest way to set options in PyRosetta is to pass a string of the options during init. I just updated the PyRosetta FAQ with this info. For example:
rosetta.init( “-ex1 -ex2 -include_sugars -write_pdb_link_records” )
-
September 7, 2016 at 7:52 pm #11838
Anonymous
Dear rmoretti,
thanks for the help. I successfully import SAXS profile and get the saxs energy score from pose by
rosetta.basic.options.set_file_option(‘score:saxs:ref_spectrum’, ‘test.dat’)
scorefxn = ScoreFunction()
scorefxn.set_weight(fastsaxs, 1.0)
print scorefxn(pose)
Another question: I found the fastsaxs energy term only works for full atom pose, but failed in centroid pose during Monte Carlo sampling, for example, when I tried to convert the pose to centroid Mover type as:
to_centroid = SwitchResidueTypeSetMover(‘centroid’)
to_fullatom = SwitchResidueTypeSetMover(‘fa_standard’)
to_centroid.apply(pose)
print scorefxn(pose)
I will get energy as: nan
But when I converted it to full atom:
to_fullatom.apply(pose)
print scorefxn(pose)
Then I will get energy term 35.6
Does this mean I can not apply fastsaxs energy on centroid pose?
Thanks
-
September 7, 2016 at 7:56 pm #11839
Anonymous
Dear jadolfbr,
Thanks for the info. I tested it, and it works pretty well. Could you help check my new question about how to apply SAXS fitting energy on centroid pose? I couldn’t get SAXS energy score after converting pose into centroid type.
thanks
-
November 14, 2016 at 9:21 pm #11951
Anonymous
Yes, it does look like the fast_saxs scoreterm is fullatom-specific.
There’s another score term which is centroid-specific, though, and that is “saxs_score” (aka “saxs_cen_score”). (There’s also a related “saxs_fa_score” for full atom poses.)
-
November 14, 2016 at 9:21 pm #12472
Anonymous
Yes, it does look like the fast_saxs scoreterm is fullatom-specific.
There’s another score term which is centroid-specific, though, and that is “saxs_score” (aka “saxs_cen_score”). (There’s also a related “saxs_fa_score” for full atom poses.)
-
November 14, 2016 at 9:21 pm #12993
Anonymous
Yes, it does look like the fast_saxs scoreterm is fullatom-specific.
There’s another score term which is centroid-specific, though, and that is “saxs_score” (aka “saxs_cen_score”). (There’s also a related “saxs_fa_score” for full atom poses.)
-
-
AuthorPosts
- You must be logged in to reply to this topic.
