reactivity
Reactivity calculations.
AllReactions = tokamak_neutron_source.reactions.Reactions | tokamak_neutron_source.reactions.AneutronicReactions
module-attribute
Represent a PEP 604 union type
E.g. for int | str
ReactivityMethod
Bases: enum.Enum
Reactivity calculation method.
Source code in tokamak_neutron_source/reactivity.py
AUTO = <ReactivityMethod.AUTO: 3>
class-attribute
Reactivity calculation method.
BOSCH_HALE = <ReactivityMethod.BOSCH_HALE: 2>
class-attribute
Reactivity calculation method.
XS = <ReactivityMethod.XS: 1>
class-attribute
Reactivity calculation method.
AneutronicReactions
Bases: tokamak_neutron_source.reactions.ReactionEnumMixin, enum.Enum
Aneutronic reaction channels.
Source code in tokamak_neutron_source/reactions.py
D_D = <AneutronicReactions.D_D: ReactionData(label='D + D → T + p', total_energy=6.461016407480568e-13, num_neutrons=0, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504d05c50>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + D --> T + p', t_min=0.2, t_max=100.0, bg=31.397, mrc2=937814.0, c=array([5.65718e-12, 3.41267e-03, 1.99167e-03, 0.00000e+00, 1.05060e-05,0.00000e+00, 0.00000e+00])), ballabio_spectrum=None)>
class-attribute
Aneutronic reaction channels.
D_He3 = <AneutronicReactions.D_He3: ReactionData(label='D + ³He → ⁴He + p', total_energy=2.940668400408501e-12, num_neutrons=0, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504da04d0>, bosch_hale_coefficients=None, ballabio_spectrum=None)>
class-attribute
Aneutronic reaction channels.
BoschHaleCoefficients
Bosch-Hale parameterisation dataclass.
H.-S. Bosch and G.M. Hale 1992 Nucl. Fusion 32 611 DOI 10.1088/0029-5515/32/4/I07
Source code in tokamak_neutron_source/reactivity_data.py
ReactionCrossSection
Fusion reaction cross-section.
Source code in tokamak_neutron_source/reactivity_data.py
Reactions
Bases: tokamak_neutron_source.reactions.ReactionEnumMixin, enum.Enum
Neutronic reaction channels.
Source code in tokamak_neutron_source/reactions.py
D_D = <Reactions.D_D: ReactionData(label='D + D → ³He + n', total_energy=5.237367559215132e-13, num_neutrons=1, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb53dd00150>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + D --> 3He + n', t_min=0.2, t_max=100.0, bg=31.397, mrc2=937814.0, c=array([ 5.43360e-12, 5.85778e-03, 7.68222e-03, 0.00000e+00,-2.96400e-06, 0.00000e+00, 0.00000e+00])), ballabio_spectrum=BallabioEnergySpectrum(energy_0=2449.5, omega_0=82.542, energy_shift_coeffs=BallabioCoefficients(a1=4.69515, a2=-0.040729, a3=0.47, a4=0.81844), width_correction_coeffs=BallabioCoefficients(a1=0.0017013, a2=0.16888, a3=0.49, a4=0.0007946)))>
class-attribute
Neutronic reaction channels.
D_T = <Reactions.D_T: ReactionData(label='D + T → ⁴He + n', total_energy=2.8183035155819573e-12, num_neutrons=1, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504da0250>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + T --> 4He + n', t_min=0.2, t_max=100.0, bg=34.3827, mrc2=1124656.0, c=array([ 1.17302e-09, 1.51361e-02, 7.51886e-02, 4.60643e-03,1.35000e-02, -1.06750e-04, 1.36600e-05])), ballabio_spectrum=BallabioEnergySpectrum(energy_0=14021.0, omega_0=177.259, energy_shift_coeffs=BallabioCoefficients(a1=5.30509, a2=0.0024736, a3=1.84, a4=1.3818), width_correction_coeffs=BallabioCoefficients(a1=0.00051068, a2=0.0076223, a3=1.78, a4=8.7691e-05)))>
class-attribute
Neutronic reaction channels.
T_T = <Reactions.T_T: ReactionData(label='T + T → ⁴He + 2n', total_energy=1.8157845541890245e-12, num_neutrons=2, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504d603d0>, bosch_hale_coefficients=None, ballabio_spectrum=None)>
class-attribute
Neutronic reaction channels.
ReactivityError
density_weighted_reactivity(temp_kev, density_d, density_t, density_he3, reaction=<Reactions.D_T: ReactionData(label='D + T → ⁴He + n', total_energy=2.8183035155819573e-12, num_neutrons=1, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504da0250>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + T --> 4He + n', t_min=0.2, t_max=100.0, bg=34.3827, mrc2=1124656.0, c=array([ 1.17302e-09, 1.51361e-02, 7.51886e-02, 4.60643e-03,1.35000e-02, -1.06750e-04, 1.36600e-05])), ballabio_spectrum=BallabioEnergySpectrum(energy_0=14021.0, omega_0=177.259, energy_shift_coeffs=BallabioCoefficients(a1=5.30509, a2=0.0024736, a3=1.84, a4=1.3818), width_correction_coeffs=BallabioCoefficients(a1=0.00051068, a2=0.0076223, a3=1.78, a4=8.7691e-05)))>, method=<ReactivityMethod.AUTO: 3>)
Calculate the density-weighted thermal reactivity of a fusion reaction in
Maxwellian plasmas, \t:math:n_1 n_2 <\sigma v>.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
temp_kev
|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Temperature [keV] |
required |
density_d
|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Deuterium density [m^-3] |
required |
density_t
|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Tritium density [m^-3] |
required |
density_he3
|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Helium-3 density [m^-3] |
required |
reaction
|
str | Reactions | AneutronicReactions
|
The fusion reaction |
<Reactions.D_T: ReactionData(label='D + T → ⁴He + n', total_energy=2.8183035155819573e-12, num_neutrons=1, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504da0250>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + T --> 4He + n', t_min=0.2, t_max=100.0, bg=34.3827, mrc2=1124656.0, c=array([ 1.17302e-09, 1.51361e-02, 7.51886e-02, 4.60643e-03,
1.35000e-02, -1.06750e-04, 1.36600e-05])), ballabio_spectrum=BallabioEnergySpectrum(energy_0=14021.0, omega_0=177.259, energy_shift_coeffs=BallabioCoefficients(a1=5.30509, a2=0.0024736, a3=1.84, a4=1.3818), width_correction_coeffs=BallabioCoefficients(a1=0.00051068, a2=0.0076223, a3=1.78, a4=8.7691e-05)))>
|
method
|
ReactivityMethod
|
The method to use when calculating the reactivity |
<ReactivityMethod.AUTO: 3>
|
Returns:
| Type | Description |
|---|---|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Density-weighted reactivity of the reaction at the specified temperature(s) [1/m^3/s] |
Source code in tokamak_neutron_source/reactivity.py
reactivity(temp_kev, reaction=<Reactions.D_T: ReactionData(label='D + T → ⁴He + n', total_energy=2.8183035155819573e-12, num_neutrons=1, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504da0250>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + T --> 4He + n', t_min=0.2, t_max=100.0, bg=34.3827, mrc2=1124656.0, c=array([ 1.17302e-09, 1.51361e-02, 7.51886e-02, 4.60643e-03,1.35000e-02, -1.06750e-04, 1.36600e-05])), ballabio_spectrum=BallabioEnergySpectrum(energy_0=14021.0, omega_0=177.259, energy_shift_coeffs=BallabioCoefficients(a1=5.30509, a2=0.0024736, a3=1.84, a4=1.3818), width_correction_coeffs=BallabioCoefficients(a1=0.00051068, a2=0.0076223, a3=1.78, a4=8.7691e-05)))>, method=<ReactivityMethod.AUTO: 3>)
Calculate the thermal reactivity of a fusion reaction in Maxwellian plasmas,
\t:math:<\sigma v>.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
temp_kev
|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Temperature [keV] |
required |
reaction
|
str | Reactions | AneutronicReactions
|
The fusion reaction |
<Reactions.D_T: ReactionData(label='D + T → ⁴He + n', total_energy=2.8183035155819573e-12, num_neutrons=1, cross_section=<tokamak_neutron_source.reactivity_data.ReactionCrossSection object at 0x7fb504da0250>, bosch_hale_coefficients=BoschHaleCoefficients(name='D + T --> 4He + n', t_min=0.2, t_max=100.0, bg=34.3827, mrc2=1124656.0, c=array([ 1.17302e-09, 1.51361e-02, 7.51886e-02, 4.60643e-03,
1.35000e-02, -1.06750e-04, 1.36600e-05])), ballabio_spectrum=BallabioEnergySpectrum(energy_0=14021.0, omega_0=177.259, energy_shift_coeffs=BallabioCoefficients(a1=5.30509, a2=0.0024736, a3=1.84, a4=1.3818), width_correction_coeffs=BallabioCoefficients(a1=0.00051068, a2=0.0076223, a3=1.78, a4=8.7691e-05)))>
|
method
|
ReactivityMethod
|
The method to use when calculating the reactivity |
<ReactivityMethod.AUTO: 3>
|
Returns:
| Type | Description |
|---|---|
float | ndarray[tuple[Any, ...], dtype[~_ScalarT]]
|
Reactivity of the reaction at the specified temperature(s) [m^3/s] |
Source code in tokamak_neutron_source/reactivity.py
raw_uc(value, unit_from, unit_to)
Raw unit converter Converts a value from one unit to another
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
value
|
ValueLikeT
|
value to convert |
required |
unit_from
|
str | Unit
|
unit to convert from |
required |
unit_to
|
str | Unit
|
unit to convert to |
required |
Returns:
| Type | Description |
|---|---|
ValueLikeT
|
converted value |