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 0x7ff2008b80d0>, 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 0x7ff200901310>, 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 0x7ff2008dfb10>, 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 0x7ff2008d4c50>, 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 0x7ff20ad03850>, 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 0x7ff2008d4c50>, 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 0x7ff2008d4c50>, 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 0x7ff2008d4c50>, 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 0x7ff2008d4c50>, 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 |