#!/usr/bin/env python # coding: utf-8 # In[ ]: get_ipython().run_line_magic('matplotlib', 'inline') # # Braginskii coefficients # ========================= # # A short example of how to calculate classical transport coefficients # from BragiƄski's theory. # # In[ ]: from astropy import units as u from plasmapy.formulary import ClassicalTransport # We'll use some sample ITER data, without much regard for whether # the regime is even fit for classical transport theory: # # # In[ ]: thermal_energy_per_electron = 8.8 * u.keV electron_concentration = 10.1e19 / u.m ** 3 thermal_energy_per_ion = 8.0 * u.keV ion_concentration = electron_concentration ion = "D+" # a crude approximation # In[ ]: braginskii = ClassicalTransport( thermal_energy_per_electron, electron_concentration, thermal_energy_per_ion, ion_concentration, ion, ) # These variables are calculated during initialization and can be # referred to straight away: # # # In[ ]: print(braginskii.coulomb_log_ei) print(braginskii.coulomb_log_ii) print(braginskii.hall_e) print(braginskii.hall_i) # These quantities are not calculated during initialization and can be # referred to via methods. To signify the need to calculate them, we # call them via (). # # # In[ ]: print(braginskii.resistivity) print(braginskii.thermoelectric_conductivity) print(braginskii.electron_thermal_conductivity) print(braginskii.ion_thermal_conductivity) # They also change with magnetization: # # # In[ ]: mag_braginskii = ClassicalTransport( thermal_energy_per_electron, electron_concentration, thermal_energy_per_ion, ion_concentration, ion, B=0.1 * u.T, ) print(mag_braginskii.resistivity) print(mag_braginskii.thermoelectric_conductivity) print(mag_braginskii.electron_thermal_conductivity) print(mag_braginskii.ion_thermal_conductivity) # In[ ]: all_direction_braginskii = ClassicalTransport( thermal_energy_per_electron, electron_concentration, thermal_energy_per_ion, ion_concentration, ion, B=0.1 * u.T, field_orientation="all", ) print(all_direction_braginskii.resistivity) print(all_direction_braginskii.thermoelectric_conductivity) print(all_direction_braginskii.electron_thermal_conductivity) print(all_direction_braginskii.ion_thermal_conductivity) # The viscosities return arrays: # # # In[ ]: print(braginskii.electron_viscosity) print(mag_braginskii.electron_viscosity) print(braginskii.ion_viscosity) print(mag_braginskii.ion_viscosity)