Return the released energy from a nuclear reaction.
- reaction (
str(optional, positional argument only)) – A string representing the reaction, like “D + T –> alpha + n” or “Be-8 –> 2*He-4”
- reactants (
str(optional, keyword argument only)) – A
tuplecontaining the reactants of a nuclear reaction (e.g., [‘D’, ‘T’]), or a string representing the sole reactant.
- products (
str(optional, keyword argument only)) – A list or tuple containing the products of a nuclear reaction (e.g., [‘alpha’, ‘n’]), or a string representing the sole product.
energy – The difference between the mass energy of the reactants and the mass energy of the products in a nuclear reaction. This quantity will be positive if the reaction is exothermic (releases energy) and negative if the reaction is endothermic (absorbs energy).
Return type: Raises:
AtomicError: – If the reaction is not valid, there is insufficient information to determine an isotope, the baryon number is not conserved, or the charge is not conserved.
TypeError: – If the positional input for the reaction is not a string, or reactants and/or products is not of an appropriate type.
nuclear_binding_energy: finds the binding energy
- of an isotope
This function requires either a string containing the nuclear reaction, or reactants and products as two keyword-only lists containing strings representing the isotopes and other particles participating in the reaction.
>>> from astropy import units as u >>> nuclear_reaction_energy("D + T --> alpha + n") <Quantity 2.81812097e-12 J> >>> triple_alpha1 = '2*He-4 --> Be-8' >>> triple_alpha2 = 'Be-8 + alpha --> carbon-12' >>> energy_triplealpha1 = nuclear_reaction_energy(triple_alpha1) >>> energy_triplealpha2 = nuclear_reaction_energy(triple_alpha2) >>> print(energy_triplealpha1, energy_triplealpha2) -1.4714307834388437e-14 J 1.18025735267267e-12 J >>> energy_triplealpha2.to(u.MeV) <Quantity 7.36658704 MeV> >>> nuclear_reaction_energy(reactants=['n'], products=['p+', 'e-']) <Quantity 1.25343511e-13 J>
- reaction (