Source code for jade.rosetta_jade.monte_carlo_analysis.CycleData

from collections import defaultdict

[docs]class CycleData: """ Simple class to hold data. Should be replaced. """ def __init__(self, pdb_path, pdb_id): self.pdb_path = pdb_path self.pdb_id = pdb_id self.values = defaultdict(dict) def __len__(self): return len(self.values) def __getitem__(self, item): return self.get_cycle(int(item)) def __repr__(self): return repr(self.values)
[docs] def get_cycle(self, n):
return self.values[int(n)]
[docs] def get_acceptance(self, n):
return self[n]["mc_accept"]
[docs] def get_mc_e(self, n):
return self[n]["mc_e"]
[docs] def get_final_e(self,n):
return self[n]["final_e"]
[docs] def get_protocol_final_e(self):
return self.final_e
[docs] def get_native_e(self):
return self.get_protocol_final_e()
[docs] def set_protocol_final_e(self, e):
self.final_e = float(e)
[docs] def set_protocol_start_e(self, e):
self.start_e = float(e)
[docs] def set_protocol_native_e(self, e):
self.native_e = float(e)
[docs] def set_final_energy(self, n, e): n = int(n) e = float(e)
self.values[n]["final_e"] = e
[docs] def set_mc_data(self, n, e, acceptance): n = int(n) e = float(e) #acceptance = bool(acceptance) self.values[n]["mc_e"] = e
self.values[n]["mc_accept"] = int(acceptance)
[docs] def set_cum_acceptance(self, n, cum_accepts): self.values[n]["cum_accepts"] = cum_accepts
print "Setting "+repr(n)+" "+repr(cum_accepts)
[docs] def get_cum_acceptance(self, n):
return self.values[n]["cum_accepts"]
[docs] def set_delta_e(self, n, delta_e):
self.values[n]["delta_e"] = delta_e
[docs] def get_delta_e(self, n):
return self.values[n]["delta_e"]