Пример #1
0
 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))
Пример #2
0
 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)
Пример #3
0
 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)
Пример #4
0
 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)
Пример #5
0
 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())
Пример #6
0
 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())
Пример #7
0
 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()))
Пример #8
0
 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)
Пример #9
0
 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)
Пример #10
0
 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())
Пример #11
0
 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())
Пример #12
0
 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()))
Пример #13
0
 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())
Пример #14
0
 def setUpClass(cls):
     cls.pt190 = Reaction.load(
         reactants=[(1, ('190Pt', '0'))],
         daughters=[(1, ('4He', '0')), (1, ('186Os', '0'))]
     ).decay(moles=1)
Пример #15
0
 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()))
Пример #16
0
 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()))
Пример #17
0
 def test_4He_note(self):
     r = Reaction.load(
         reactants=[(1, ('6Li', '0')), (1, ('6Li', '0'))],
         daughters=[(3, ('4He', '0'))],
     )
     self.assertIn('α', r.notes)
Пример #18
0
 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())
Пример #19
0
 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)
Пример #20
0
 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())
Пример #21
0
 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())
Пример #22
0
 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())