def _transform_det_info(config): """ Transform parsed detector information :param config (dict): parsed configuration dictionary :return: """ for det in config.keys(): for quantity, val in config[det].items(): if quantity.lower() == 'mass': info = val.split(' ') _global_data.add(det, quantity, PQ.Mass(float(info[0]), info[1]))
def test_dict_multiplication_det(self): d = { "type": "dict", "multiplier": "Activity", "multiplicand": "global:mass", "product": "SpecificActivity" } _global_data.add("det1", "mass", PQ.Mass(10., "kg")) mul_op = MultiplicationOperator(**d) data = { "det1": OrderedDict([(PQ.Isotope(3, 1, 0), StoredData(PQ.Activity(100., 0.)))]) } mul_op.invoke(data) res = PQ.SpecificActivity(10.) self.assertEqual(data["det1"][PQ.Isotope(3, 1, 0)]["SpecificActivity"], res)
def test_global_data_nested(self): _global_data.add("det1", "Mass", PQ.Mass(10, ureg.kg)) self.assertEqual(_global_data["det1"]["Mass"], PQ.Mass(10, ureg.kg))
def test_division_pq(self): activity = PQ.Activity(10., 2.) mass = PQ.Mass(5.) specific_activity = activity / mass self.assertEqual(specific_activity, PQ.SpecificActivity(2., 0.))
def test_different_types_equals(self): q1 = PQ.Mass(100, 2) q2 = PQ.Mass(100., 2.) self.assertEqual(q1, q2)