def test_electron_capture_q_value(self): r = Reaction.load( reactants=[(1, ('e-', '0')), (1, ('63Cu', '0'))], daughters=[(1, ('ν', '0')), (1, ('63Ni', '0'))], ) # TODO - fix until it goes to zero? self.assertEqual(-67, int(r.q_value.kev))
def test_beta_decay_note(self): # Reaction is fictional r = Reaction.load( reactants=[(1, ('7Li', '0')), (1, ('60Ni', '0'))], daughters=[(1, ('t', '0')), (1, ('t', '0'))], ) self.assertEqual({'→β-', 't', 'trace'}, r.notes)
def test_q_value(self): r = Reaction.load( reactants=[(1, ('p', '0')), (1, ('7Li', '0'))], daughters=[(2, ('4He', '0'))], ) self.assertEqual(17346.2443, r.q_value.kev)
def test_daughter_count(self): r = Reaction.load( reactants=[(1, ('p', '0')), (1, ('7Li', '0'))], daughters=[(2, ('4He', '0'))], ) self.assertEqual(2, r.daughter_count)
def test_gamow_factor_2(self): c = Reaction.load( reactants=[(1, ('185Re', '0'))], daughters=[(1, ('4He', '0')), (1, ('181Ta', '0'))], ).gamow2() np.testing.assert_approx_equal(23635102096516.79, c.value())
def test_gamow_factor_1(self): c = Reaction.load( reactants=[(1, ('212Po', '0'))], daughters=[(1, ('4He', '0')), (1, ('208Pb', '0'))], ).gamow2() np.testing.assert_approx_equal(4920433262606.988, c.value())
def test_geiger_nuttal_law_1(self): c = Reaction.load( reactants=[(1, ('185Re', '0'))], daughters=[(1, ('4He', '0')), (1, ('181Ta', '0'))], ).geiger_nuttal() self.assertEqual(24, int(c.value()))
def test_no_stable_note(self): r = Reaction.load( reactants=[(1, ('7Li', '0')), (1, ('60Ni', '0'))], daughters=[(1, ('8Be', '0')), (1, ('59Co', '0'))], ) self.assertNotIn('in nature', r.notes)
def test_n_note(self): r = Reaction.load( reactants=[(1, ('p', '0')), (1, ('7Li', '0'))], daughters=[(1, ('n', '0')), (1, ('7Be', '0'))], ) self.assertIn('n', r.notes)
def test_gamow_4(self): c = Reaction.load( reactants=[(1, ('241Am', '0'))], daughters=[(1, ('4He', '0')), (1, ('237Np', '0'))], ).gamow() np.testing.assert_approx_equal(31.48734546863171, c.value())
def test_gamow_3(self): c = Reaction.load( reactants=[(1, ('190Pt', '0'))], daughters=[(1, ('4He', '0')), (1, ('186Os', '0'))], ).gamow() np.testing.assert_approx_equal(40.3839154493787, c.value())
def test_gamow_2(self): c = Reaction.load( reactants=[(1, ('58Fe', '0'))], daughters=[(1, ('4He', '0')), (1, ('54Cr', '0'))], ).gamow() self.assertTrue(math.isnan(c.value()))
def test_gamow_1(self): c = Reaction.load( reactants=[(1, ('185Re', '0'))], daughters=[(1, ('4He', '0')), (1, ('181Ta', '0'))], ).gamow() np.testing.assert_approx_equal(52.91841068219526, c.value())
def setUpClass(cls): cls.pt190 = Reaction.load( reactants=[(1, ('190Pt', '0'))], daughters=[(1, ('4He', '0')), (1, ('186Os', '0'))] ).decay(moles=1)
def test_geiger_nuttal_law_3(self): c = Reaction.load( reactants=[(1, ('212Po', '0'))], daughters=[(1, ('4He', '0')), (1, ('208Pb', '0'))], ).geiger_nuttal() self.assertEqual(-6, int(c.value()))
def test_geiger_nuttal_law_2(self): c = Reaction.load( reactants=[(1, ('144Nd', '0'))], daughters=[(1, ('4He', '0')), (1, ('140Ce', '0'))], ).geiger_nuttal() self.assertEqual(14, int(c.value()))
def test_4He_note(self): r = Reaction.load( reactants=[(1, ('6Li', '0')), (1, ('6Li', '0'))], daughters=[(3, ('4He', '0'))], ) self.assertIn('α', r.notes)
def test_gamow_5(self): c = Reaction.load( reactants=[(1, ('8Be', '0'))], daughters=[(1, ('4He', '0')), (1, ('4He', '0'))], ).gamow() np.testing.assert_approx_equal(5.57714787643263, c.value())
def test_n_transfer_note(self): r = Reaction.load( reactants=[(1, ('7Li', '0')), (1, ('60Ni', '0'))], daughters=[(1, ('6Li', '0')), (1, ('61Ni', '0'))], ) self.assertIn('n-transfer', r.notes)
def test_gamow_6(self): c = Reaction.load( reactants=[(1, ('106Pd', '0'))], daughters=[(1, ('46Ca', '0')), (1, ('60Fe', '0'))], ).gamow() np.testing.assert_approx_equal(148.29823894720775, c.value())
def test_gamow_7(self): c = Reaction.load( reactants=[(1, ('106Pd', '0'))], daughters=[(1, ('90Sr', '0')), (1, ('16O', '0'))], ).gamow() np.testing.assert_approx_equal(459.89628372138634, c.value())
def test_gamow_factor_3(self): c = Reaction.load( reactants=[(1, ('8Be', '0'))], daughters=[(1, ('4He', '0')), (1, ('4He', '0'))], ).gamow2() np.testing.assert_approx_equal(3725992198095.755, c.value())