def decay(what, halflife, *modes): what.decays = ratedDecay( what, halflife, *[(m[0], m[1] * eV) + tuple(m[2:]) for m in modes])
.63 * second, # NAS gives 9.4 MeV beta- followed by 1.98 MeV gamma # 100% beta- 9.6; 100% 1.982; 72% gamma .82; 72% gamma 1.65 (1, 9.6e6, electron, Isotope(8, 10).atom.nucleus)) decay( Isotope(8, 5).atom.nucleus, 8.7e-3 * second, # NAS gives beta+ always followed by 6.97 MeV proton # beta+ 16.7; 12% p (.88, 16.7e6, positron, Isotope(7, 6).atom.nucleus), (.12, 16.7e6, positron, proton, Isotope(6, 6).atom.nucleus)) decay( Isotope(8, 6).atom.nucleus, 70.6 * second, # 1% beta+ 4.12; 99% beta+ 1.81; 99% gamma 2.313 (.01, 4.12e6, positron, Isotope(7, 7).atom.nucleus), (.99, 1.81e6, photon(2.313e6), positron, Isotope(7, 7).atom.nucleus)) decay( Isotope(8, 7).atom.nucleus, 122.1 * second, (1, 1.73e6, positron, Isotope(7, 8).atom.nucleus)) # NAS has more data ... what = Isotope(110, 159).atom.nucleus what.decays = ratedDecay(what, .27 * milli * second, (1, None, alpha, Isotope(108, 157).atom.nucleus)) del what, Isotope, alpha, eV, Photon, proton, neutron, electron, positron, \ ratedDecay, decay, photon, second, minute, day, year, milli
(.68, 10.42e6 -6.13e6, electron, photon(6.13e6), Isotope(8, 8).atom.nucleus)) decay(Isotope(7, 10).atom.nucleus, 4.17 * second, # NAS gives 8.68 MeV beta-, followed 95% of the time by 1.21 MeV neutron # 2% beta- 8.7; 50% beta- 3.3; 95% n; 3% gamma .871 ??? (.02, 8.68e6, electron, Isotope(8, 9).atom.nucleus), (.5, 3.3e6, electron, neutron, Isotope(8, 8).atom.nucleus)) decay(Isotope(7, 11).atom.nucleus, .63 * second, # NAS gives 9.4 MeV beta- followed by 1.98 MeV gamma # 100% beta- 9.6; 100% 1.982; 72% gamma .82; 72% gamma 1.65 (1, 9.6e6, electron, Isotope(8, 10).atom.nucleus)) decay(Isotope(8, 5).atom.nucleus, 8.7e-3 * second, # NAS gives beta+ always followed by 6.97 MeV proton # beta+ 16.7; 12% p (.88, 16.7e6, positron, Isotope(7, 6).atom.nucleus), (.12, 16.7e6, positron, proton, Isotope(6, 6).atom.nucleus)) decay(Isotope(8, 6).atom.nucleus, 70.6 * second, # 1% beta+ 4.12; 99% beta+ 1.81; 99% gamma 2.313 (.01, 4.12e6, positron, Isotope(7, 7).atom.nucleus), (.99, 1.81e6, photon(2.313e6), positron, Isotope(7, 7).atom.nucleus)) decay(Isotope(8, 7).atom.nucleus, 122.1 * second, (1, 1.73e6, positron, Isotope(7, 8).atom.nucleus)) # NAS has more data ... what = Isotope(110, 159).atom.nucleus what.decays = ratedDecay(what, .27 * milli * second, (1, None, alpha, Isotope(108, 157).atom.nucleus)) del what, Isotope, alpha, eV, Photon, proton, neutron, electron, positron, \ ratedDecay, decay, photon, second, minute, day, year, milli
def decay(what, halflife, *modes): what.decays = ratedDecay(what, halflife, *[(m[0], m[1] * eV) + tuple(m[2:]) for m in modes])
def decay(what, halflife, *modes): what.decays = ratedDecay(what, halflife, *map(lambda m: (m[0], m[1] * eV) + tuple(m[2:]), modes))