6.5. Atomic Data Interface

6.5.1. Abstract (interface) class

Abstract atomic data interface.

class cherab.core.atomic.interface.AtomicData

Atomic data source abstraction layer.

This base class specifies a standardised set of methods for obtaining atomic data.

beam_cx_pec(donor_ion, receiver_ion, receiver_charge, transition)

A list of Effective charge exchange photon emission coefficient for a given donor (beam) in W.m^3.

beam_emission_pec(beam_ion, plasma_ion, charge, transition)

The beam photon emission coefficient for a given beam and target species and a given transition in W.m^3.

beam_population_rate(beam_ion, metastable, plasma_ion, charge)

Dimensionless Beam population coefficient for a given beam and target species.

beam_stopping_rate(beam_ion, plasma_ion, charge)

Beam stopping coefficient for a given beam and target species in m^3/s.

continuum_radiated_power_rate(element, charge)

Continuum radiated power coefficient for a given species in W.m^3.

cx_radiated_power_rate(element, charge)

Charge exchange radiated power coefficient for a given species in W.m^3.

fractional_abundance(ion, charge)

Fractional abundance of a given species in thermodynamic equilibrium.

free_free_gaunt_factor()

Returns the Maxwellian-averaged free-free Gaunt factor interpolated over the data from Table A.1 in M.A. de Avillez and D. Breitschwerdt, 2015, Astron. & Astrophys. 580, A124.

The Born approximation is used outside the interpolation range.

impact_excitation_pec(ion, charge, transition)

Electron impact excitation photon emission coefficient for a given species in W.m^3.

ionisation_rate(ion, charge)

Electron impact ionisation rate for a given species in m^3/s.

line_radiated_power_rate(element, charge)

Line radiated power coefficient for a given species in W.m^3.

recombination_pec(ion, charge, transition)

Recombination photon emission coefficient for a given species in W.m^3.

recombination_rate(ion, charge)

Recombination rate for a given species in m^3/s.

stark_model_coefficients(line)

Returns Stark model coefficients. See Table 1 in B. Lomanowski, et al. “Inferring divertor plasma properties from hydrogen Balmer and Paschen series spectroscopy in JET-ILW.” Nuclear Fusion 55.12 (2015) 123028.

thermal_cx_pec(donor_ion, donor_charge, receiver_ion, receiver_charge, transition)

Thermal charge exchange photon emission coefficient for given donor and receiver species in W.m^3.

thermal_cx_rate(donor_ion, donor_charge, receiver_ion, receiver_charge)

Thermal charge exchange effective rate coefficient for a given donor and receiver species in m^3/s.

total_radiated_power(element)

The total (summed over all charge states) radiated power in equilibrium conditions for a given species in W.m^3.

wavelength(ion, charge, transition)

The natural wavelength of the specified transition in nm.

zeeman_structure(line, b_field)

Wavelengths and ratios of \(\pi\)-/\(\sigma\)-polarised Zeeman components for any given value of magnetic field strength.

zeeman_triplet_parameters(line)

Returns Zeeman truplet parameters. See Table 1 in A. Blom and C. Jupén. “Parametrisation of the Zeeman effect for hydrogen-like spectra in high-temperature plasmas”, Plasma Phys. Control. Fusion 44 (2002) 1229-1241.

6.5.2. OpenADAS atomic data source

Interface to local atomic data repository.

class cherab.openadas.openadas.OpenADAS(data_path=None, permit_extrapolation=False, missing_rates_return_null=False, wavelength_element_fallback=False)

OpenADAS atomic data source.

Parameters:
  • data_path (str) – OpenADAS local repository path.

  • permit_extrapolation (bool) – If true, informs interpolation objects to allow extrapolation beyond the limits of the tabulated data. Default is False.

  • missing_rates_return_null (bool) – If true, allows Null rate objects to be returned when the requested atomic data is missing. Default is False.

  • wavelength_element_fallback (bool) – If true, allows to use the element’s wavelength when the isotope’s wavelength is not available. Default is False.

beam_cx_pec(donor_ion, receiver_ion, receiver_charge, transition)

Effective charge exchange photon emission coefficient for a given donor (beam) and receiver (plasma) species and a given transition.

The data for “qeb” is interpolated with a cubic spline in log-log space. The data for “qti”, “qni”, “qz” and “qb” are interpolated with a cubic spline in linear space. Quadratic extrapolation is used for “qeb” and nearest neighbour extrapolation is used for “qti”, “qni”, “qz” and “qb” when permit_extrapolation is True.

Parameters:
  • donor_ion – Element object defining the donor ion type.

  • receiver_ion – Element object defining the receiver ion type.

  • receiver_charge – Charge state of the receiver ion.

  • transition – Tuple containing (initial level, final level) of the receiver species.

Returns:

Charge exchange photon emission coefficient in W.m^3 as a function of interaction energy, receiver ion temperature, receiver ion density, plasma Z-effective, magnetic field magnitude.

beam_emission_pec(beam_ion, plasma_ion, charge, transition)

The beam photon emission coefficient for a given beam and target species and a given transition.

Open-ADAS data is interpolated with cubic spline in log-log space. Linear and quadratic extrapolations are used for “sen” and “st” respectively when permit_extrapolation is True.

Parameters:
  • beam_ion – Element object defining the beam ion type.

  • plasma_ion – Element object defining the target ion type.

  • charge – Charge state of the target ion.

  • transition – Tuple containing (initial level, final level) of the beam ion.

Returns:

The beam photon emission coefficient in W.m^3 as a function of interaction energy, target equivalent electron density, target temperature.

beam_population_rate(beam_ion, metastable, plasma_ion, charge)

Beam population coefficient for a given beam and target species.

Open-ADAS data is interpolated with cubic spline in log-log space. Linear and quadratic extrapolations are used for “sen” and “st” respectively when permit_extrapolation is True.

Parameters:
  • beam_ion – Element object defining the beam ion type.

  • metastable – The beam ion metastable number.

  • plasma_ion – Element object defining the target ion type.

  • charge – Charge state of the target ion.

Returns:

The beam population coefficient in dimensionless units as a function of interaction energy, target equivalent electron density, target temperature.

beam_stopping_rate(beam_ion, plasma_ion, charge)

Beam stopping coefficient for a given beam and target species.

Open-ADAS data is interpolated with cubic spline in log-log space. Linear and quadratic extrapolations are used for “sen” and “st” respectively when permit_extrapolation is True.

Parameters:
  • beam_ion – Element object defining the beam ion type.

  • plasma_ion – Element object defining the target ion type.

  • charge – Charge state of the target ion.

Returns:

The beam stopping coefficient in m^3.s^-1 as a function of interaction energy, target equivalent electron density, target temperature.

continuum_radiated_power_rate(ion, charge)

Recombination continuum radiated power coefficient for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

Returns:

Continuum radiated power coefficient in W.m^3 as a function of electron density and temperature.

cx_radiated_power_rate(ion, charge)

Charge exchange radiated power coefficient for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Linear extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

Returns:

Charge exchange radiated power coefficient in W.m^3 as a function of electron density and temperature.

impact_excitation_pec(ion, charge, transition)

Electron impact excitation photon emission coefficient for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

  • transition – Tuple containing (initial level, final level).

Returns:

Impact excitation photon emission coefficient in W.m^3 as a function of electron density and temperature.

ionisation_rate(ion, charge)

Electron impact ionisation rate for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

Returns:

Ionisation rate in m^3/s as a function of electron density and temperature.

line_radiated_power_rate(ion, charge)

Line radiated power coefficient for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

Returns:

Line radiated power coefficient in W.m^3 as a function of electron density and temperature.

recombination_pec(ion, charge, transition)

Recombination photon emission coefficient for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion after recombination.

  • transition – Tuple containing (initial level, final level).

Returns:

Recombination photon emission coefficient in W.m^3 as a function of electron density and temperature.

recombination_rate(ion, charge)

Recombination rate for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

Returns:

Recombination rate in m^3/s as a function of electron density and temperature.

thermal_cx_pec(donor_element, donor_charge, receiver_element, receiver_charge, transition)

Thermal CX photon emission coefficient for a given species.

Open-ADAS data is interpolated with cubic spline in log-log space. Nearest neighbour extrapolation is used when permit_extrapolation is True.

Parameters:
  • donor_element – Element object defining the donor ion type.

  • donor_charge – Charge state of the donor ion.

  • receiver_element – Element object defining the receiver ion type.

  • receiver_charge – Charge state of the receiver ion.

  • transition – Tuple containing (initial level, final level) of the receiver in charge state receiver_charge - 1.

Returns:

Thermal charge exchange photon emission coefficient in W.m^3 as a function of electron density, electron temperature and donor temperature.

thermal_cx_rate(donor_element, donor_charge, receiver_element, receiver_charge)

Thermal charge exchange effective rate coefficient for a given donor and receiver species.

Open-ADAS data is interpolated with cubic spline in log-log space. Linear extrapolation is used when permit_extrapolation is True.

Parameters:
  • donor_element – Element object defining the donor ion type.

  • donor_charge – Charge state of the donor ion.

  • receiver_element – Element object defining the receiver ion type.

  • receiver_charge – Charge state of the receiver ion.

Returns:

Thermal charge exchange rate in m^3/s as a function of electron density and temperature.

wavelength(ion, charge, transition)

Spectral line wavelength for a given transition.

Parameters:
  • ion – Element object defining the ion type.

  • charge – Charge state of the ion.

  • transition – Tuple containing (initial level, final level)

Returns:

Wavelength in nanometers.