def d_rmsad(self): d = {} for run_id, d_ele, mad in zipdic(self.d_ae_deviation, self.d_mad): l_ae_dev = d_ele.values() rmsad = sum((abs(ae_dev) - mad).e**2 for ae_dev in l_ae_dev) / (len(l_ae_dev) - 1) d[run_id] = rmsad return d
def d_ae_deviation(self): d = defaultdict(dict) for run_id, d_ae_run_id in self.d_ae.items(): for ele, energy, energy_ref in zipdic(d_ae_run_id, self.d_ae_ref): d[run_id][ele] = energy - energy_ref return d
def d_rmsad(self): d = {} for run_id, d_ele, mad in zipdic(self.d_ae_deviation, self.d_mad): l_ae_dev = d_ele.values() try: rmsad = sum((abs(ae_dev) - mad).e ** 2 for ae_dev in l_ae_dev) / (len(l_ae_dev) - 1) except ZeroDivisionError: rmsad = 0 d[run_id] = rmsad return d