Ejemplo n.º 1
0
 def test_custom_product_type(self):
     config = {
         "type": "scalar",
         "multiplier": "DoseRate",
         "multiplicand": "const:100 hour",
         "product": "MyCustomDose"
     }
     mul_op = MultiplicationOperator(**config)
     self.assertEqual(mul_op.quantity(100, unit=ureg.Sv), PQ.Dose(100))
Ejemplo n.º 2
0
 def test_dict_builtin_dh_multiplication(self):
     mul_op = MultiplicationOperator(**self.config_dict_builtin)
     mul_op.invoke(self.dataActivity)
     res = {
         "det1":
         OrderedDict([
             (PQ.Isotope(3, 1, 0),
              StoredData(PQ.Activity(10., 2.),
                         InhalationDose=PQ.Dose(10. * 4.10E-011, -1.,
                                                ureg.Sv)))
         ])
     }
     self.assertEqual(self.dataActivity, res)
Ejemplo n.º 3
0
 def test_dict_multiplication_stored_quantity(self):
     d = {
         "type": "dict",
         "multiplier": "Activity",
         "multiplicand": "inhalationcoeff",
         "product": "InhalationDose:Dose"
     }
     mul_op = MultiplicationOperator(**d)
     mul_op.invoke(self.dataActivityEinh)
     res = {
         "det1":
         OrderedDict([
             (PQ.Isotope(3, 1, 0),
              StoredData(PQ.Activity(10., 2.),
                         inhalationcoeff=PQ.EInh(10.),
                         InhalationDose=PQ.Dose(100., -1., ureg.Sv)))
         ])
     }
     self.assertEqual(self.dataActivityEinh, res)
Ejemplo n.º 4
0
 def test_exception_dimension_gt(self):
     q1 = PQ.Activity(10.)
     q2 = PQ.Dose(10.)
     self.assertRaises(IllegalArgumentError, q1.__gt__, q2)
Ejemplo n.º 5
0
 def test_comparison_dimension_check_fail(self):
     q1 = PQ.Activity(10.)
     q2 = PQ.Dose(10.)
     self.assertRaises(IllegalArgumentError, q1._validate_comparison_input, q2)
Ejemplo n.º 6
0
 def test_sub_different_types_pq(self):
     self.assertRaises(IllegalArgumentError, lambda: PQ.Activity(10.) - PQ.Dose(10.))
Ejemplo n.º 7
0
 def test_multiplication_different_pq_no_unc_builtin(self):
     product = PQ.Dose(PQ.Activity(10., 0.) * PQ.EInh(10.))
     res = PQ.Dose(100., -1.)
     self.assertEqual(product, res)
Ejemplo n.º 8
0
 def test_multiplication_different_pq_no_unc(self):
     product = PQ.Dose(PQ.Activity(10., 0.) * PQ.Activity(10., 0.))
     res = PQ.Activity(100., 0., ureg.Bq * ureg.Bq)
     self.assertEqual(product, res)