bluemira.plasma_physics.collisions ================================== .. py:module:: bluemira.plasma_physics.collisions .. autoapi-nested-parse:: Tokamak plasma collision formulae. Functions --------- .. autoapisummary:: bluemira.plasma_physics.collisions.debye_length bluemira.plasma_physics.collisions.reduced_mass bluemira.plasma_physics.collisions.thermal_velocity bluemira.plasma_physics.collisions.de_broglie_length bluemira.plasma_physics.collisions.impact_parameter_perp bluemira.plasma_physics.collisions.coulomb_logarithm bluemira.plasma_physics.collisions.spitzer_conductivity Module Contents --------------- .. py:function:: debye_length(temperature: float, density: float) -> float Debye length :param temperature: Temperature [K] :param density: Density [m^-3] :returns: Debye length [m] .. rubric:: Notes Debye length is given by the formula: .. math:: \lambda_D = \sqrt{\frac{\varepsilon_0 k_B T}{n e^2}} where: - :math:`\varepsilon_0` is the vacuum permittivity, - :math:`k_B` is the Boltzmann constant, - :math:`T` is the temperature in Kelvin, - :math:`n` is the number density of particles, - :math:`e` is the elementary charge. The conversion of the temperature from Kelvin to Joules implicitly includes the Boltzmann constant (:math:`k_B`). .. py:function:: reduced_mass(mass_1: float, mass_2: float) -> float Calculate the reduced mass of a two-particle system :param mass_1: Mass of the first particle :param mass_2: Mass of the second particle :returns: Reduced mass .. rubric:: Notes Reduced mass of a two-particle system : .. math:: \mu_{AB} = \frac{m_A m_B}{m_A + m_B} where :math:`m_A` and :math:`m_B` are the masses of the particles. .. py:function:: thermal_velocity(temperature: float, mass: float) -> float :param temperature: Temperature [K] :param mass: Mass of the particle [kg] :returns: Thermal velocity [m/s] .. rubric:: Notes The thremal velocity is calculated as .. math:: \sqrt{\frac{2 k_B T}{m}} The conversion of the temperature from Kelvin to Joules implicitly includes the Boltzmann constant ( :math:`k_B` ). The :math:`\sqrt 2` term is for a 3-dimensional system and the most probable velocity in the particle velocity distribution. .. py:function:: de_broglie_length(velocity: float, mu_12: float) -> float Calculate the de Broglie wavelength :param velocity: Velocity [m/s] :param mu_12: Reduced mass [kg] :returns: De Broglie wavelength [m] .. rubric:: Notes The de Broglie length is given by .. math:: \lambda_{th} = \frac{h}{2 \cdot \mu_{12} \cdot velocity} where :math:`h` is the Planck Constant. .. py:function:: impact_parameter_perp(velocity: float, mu_12: float) -> float Calculate the perpendicular impact parameter, a.k.a. b90 :param velocity: Velocity [m/s] :param mu_12: Reduced mass [kg] :returns: Perpendicular impact parameter [m] .. rubric:: Notes .. math:: b_{90} = \frac{e^2}{4 \pi \epsilon_0 \mu_{12} v^2} where: - :math:`e` is the elementary charge (absolute charge of an electron) - :math:`\epsilon_0` is the vacuum permittivity, - :math:`\mu_{12}` is the reduced mass, - :math:`v` is the relative velocity. .. py:function:: coulomb_logarithm(temperature: float, density: float) -> float Calculate the value of the Coulomb logarithm for an electron hitting a proton. :param temperature: Temperature [K] :param density: Density [1/m^3] :returns: Coulomb logarithm value .. rubric:: Notes The Coulomb logarithm is calculated using the formula: .. math:: \ln{\Lambda} = \ln{\left(1 + \left(\frac{\lambda_{Debye}} {b_{min}}\right)^2\right)^{1/2}} where: :math:`\lambda_{Debye}` is the Debye length, :math:`b_{min}` is the minimum impact parameter, which is defined as the maximum value between :math:`b_{90}` (the perpendicular impact parameter) and the de Broglie wavelegth :math:`\lambda_{th}` .. py:function:: spitzer_conductivity(Z_eff: float, T_e: float, ln_lambda: float) -> float Formula for electrical conductivity in a plasma as per L. Spitzer. :param Z_eff: Effective charge [dimensionless] :param T_e: Electron temperature on axis [keV] The equation takes in temperature as [eV], so an in-line conversion is used here. :param ln_lambda: Coulomb logarithm value :returns: Plasma resistivity [1/Ohm/m] .. rubric:: Notes Spitzer and Haerm, 1953 :math:`\sigma = 1.92e4 (2-Z_{eff}^{-1/3}) \dfrac{T_{e}^{3/2}}{Z_{eff}ln\Lambda}`