I am working with the pmi library and I am trying to add an IMP.pmi.restraints.saxs.SAXSRestraint but I am getting an error. The error does not come when I add the restraint and as far as I can tell the system understands what I have given it. The issue arises when I add the restraint to the model and then try to optimize_flexible_beads(), here is the full error:
I dont understand what this means, as I have set the maxq to be 0.3 in the restraint and the profile object has 0.3 as its maxq. q = 0.0131 is my first data point. I also get a similar error if I either remove the optimize_flexible_beads step or add the restraint to the model after optimization and then run replica exchange, here is that error:
Traceback (most recent call last):
File "test.py", line 172, in <module>
rex.execute_macro()
File "/usr/local/lib/python3.8/site-packages/IMP/pmi/macros.py", line 395, in execute_macro
output.init_stat2(low_temp_stat_file,
File "/usr/local/lib/python3.8/site-packages/IMP/pmi/output.py", line 820, in init_stat2
d = l.get_output()
File "/usr/local/lib/python3.8/site-packages/IMP/pmi/restraints/__init__.py", line 107, in get_output
score = self.evaluate()
File "/usr/local/lib/python3.8/site-packages/IMP/pmi/restraints/__init__.py", line 83, in evaluate
return self.weight * self.rs.unprotected_evaluate(None)
File "/usr/local/lib/python3.8/site-packages/IMP/__init__.py", line 3785, in unprotected_evaluate
return _IMP_kernel.RestraintSet_unprotected_evaluate(self, da)
_IMP_kernel.IOException: Profile is not sampled for q = 0.0131, q_max = 0.5
You can remove points with q > 0.5 from the experimental profile or recompute the profile with higher max_q
It seems like the issue is occuring after I add the restraint so I dont think it is a file format issue but like I said im not sure what is going on. Anything you could do to help would be appreciated.
Thanks,
Cameron