Element#

class fiasco.Element(element_name, temperature: Unit('K'), **kwargs)[source]#

Bases: IonCollection

Collection of all ions for a particular element.

The Element object provides a way to logically group together ions of the same element. This makes it easy to compute element-level derived quantities such as the ionization fraction as a function of temperature.

Parameters:
  • element_name (str, int) – Symbol, atomic number, or full name of the element

  • temperature (Quantity)

See also

fiasco.Ion

All the same keyword arguments can also be passed here.

Attributes Summary

abundance

Elemental abundance relative to H.

atomic_number

The atomic number of the element, \(Z\).

atomic_symbol

The standard atomic symbol for the element, e.g. "H" for hydrogen.

element_name

The full name of the element, e.g. "hydrogen".

equilibrium_ionization

The ionization fraction, in equilibrium, for all ions of the element.

mass

The atomic mass of the element.

temperature

Methods Summary

bound_bound_radiative_loss(density, **kwargs)

Calculate the radiative loss rate from bound-bound emission (line emission) integrated over wavelength.

free_bound(wavelength, **kwargs)

Compute combined free-bound continuum emission.

free_bound_radiative_loss()

Calculate the radiative loss rate from free-bound emission (collisional recombination) integrated over wavelength.

free_free(wavelength)

Compute combined free-free continuum emission (bremsstrahlung).

free_free_radiative_loss([use_itoh])

Calculate the radiative loss rate from free-free emission (bremsstrahlung) integrated over wavelength.

radiative_loss(density[, use_itoh])

Calculate the total wavelength-integrated radiative loss rate including the bound-bound, free-bound, and free-free emission contributions

spectrum(density, emission_measure[, ...])

Calculate spectrum for multiple ions

two_photon(wavelength, electron_density, ...)

Compute the two-photon continuum emission.

Attributes Documentation

abundance#

Elemental abundance relative to H.

atomic_number#

The atomic number of the element, \(Z\).

atomic_symbol#

The standard atomic symbol for the element, e.g. “H” for hydrogen.

element_name#

The full name of the element, e.g. “hydrogen”.

equilibrium_ionization#

The ionization fraction, in equilibrium, for all ions of the element.

The population fractions for every ion of this element, assuming ionization equilibrium, calculated as a function of temperature. This returns a matrix with dimensions (n,Z+1), where n corresponds to the temperature dimension and Z+1 corresponds to the number of ionization stages of the element.

Note

The result here is not simply the tabulated values included in the CHIANTI database. Rather, these values are calculated as a function of temperature on the fly using the ionization and recombination rates associated with each ion in the element.

mass#

The atomic mass of the element.

temperature#

Methods Documentation

bound_bound_radiative_loss(density, **kwargs)#

Calculate the radiative loss rate from bound-bound emission (line emission) integrated over wavelength.

Parameters:

density (Quantity) – Electron number density

Returns:

rad_loss (Quantity) – The bolometric bound-bound radiative loss rate per unit emission measure

free_bound(wavelength: Unit('Angstrom'), **kwargs)#

Compute combined free-bound continuum emission.

Note

Both abundance and ionization fraction are included here.

The combined free-bound continuum is given by,

\[P_{fb}(\lambda,T) = \sum_{X,k}\mathrm{Ab}(X)f(X_{k+1})C_{fb, X_k}(\lambda,T)\]

where \(\mathrm{Ab}(X)\) is the abundance of element \(X\), \(f(X_{k+1})\) is the ionization equilibrium of the recombining ion \(X_{k+1}\), and \(C_{fb, X_k}(\lambda,T)\) is the free-bound emission of the recombined ion \(X_k\) as computed by fiasco.Ion.free_bound. The sum is taken over all ions in the collection.

Parameters:

wavelength (Quantity)

free_bound_radiative_loss()#

Calculate the radiative loss rate from free-bound emission (collisional recombination) integrated over wavelength.

Returns:

rad_loss (Quantity) – The bolometric free-bound radiative loss rate per unit emission measure

free_free(wavelength: Unit('Angstrom'))#

Compute combined free-free continuum emission (bremsstrahlung).

Note

Both abundance and ionization fraction are included here

The combined free-free continuum is given by,

\[P_{ff}(\lambda,T) = \sum_{X,k}\mathrm{Ab}(X)f(X_{k})C_{ff, X_k}(\lambda,T)\]

where \(\mathrm{Ab}(X)\) is the abundance of element \(X\), \(f(X_{k})\) is the ionization equilibrium of the ion, and \(C_{ff, X_k}(\lambda,T)\) is the free-free emission of the ion as computed by fiasco.Ion.free_free. The sum is taken over all ions in the collection.

Parameters:

wavelength (Quantity)

free_free_radiative_loss(use_itoh=False)#

Calculate the radiative loss rate from free-free emission (bremsstrahlung) integrated over wavelength.

Parameters:

use_itoh (bool, optional) – Whether to use Gaunt factors taken from Itoh et al. [ISK+02]. Defaults to false.

Returns:

rad_loss (Quantity) – The bolometric free-free radiative loss rate per unit emission measure

radiative_loss(density: Unit('1 / cm3'), use_itoh=False, **kwargs)#

Calculate the total wavelength-integrated radiative loss rate including the bound-bound, free-bound, and free-free emission contributions

Note

The calculation does not include two-photon continuum emission, which is also neglected in the CHIANTI IDL routines.

Parameters:
  • density (Quantity) – Electron number density

  • use_itoh (bool, optional) – Whether to use Gaunt factors taken from Itoh et al. [ISK+02] for the calculation of free-free emission. Defaults to false.

Returns:

rad_loss_total (Quantity) – The total bolometric radiative loss rate

spectrum(density: Unit('1 / cm3'), emission_measure: Unit('1 / cm5'), wavelength_range=None, bin_width=None, kernel=None, **kwargs)#

Calculate spectrum for multiple ions

Warning

This function is still experimental and may be removed or significantly refactored in future releases.

Parameters:
  • density (Quantity) – Electron number density

  • emission_measure (Quantity) – Column emission measure

  • wavelength_range (Quantity, optional) – Tuple of bounds on which transitions to include. Default includes all

  • bin_width (Quantity, optional) – Wavelength resolution to bin intensity values. Default to 1/100 of range

  • kernel (Model1DKernel, optional) – Convolution kernel for computing spectrum. Default is gaussian kernel with thermal width

Returns:

  • wavelength (Quantity) – Continuous wavelength

  • spectrum (Quantity) – Continuous intensity distribution as a function of wavelength

See also

fiasco.Ion.spectrum

Compute spectrum for a single ion

two_photon(wavelength: Unit('Angstrom'), electron_density: Unit('1 / cm3'), **kwargs)#

Compute the two-photon continuum emission.

Note

Both abundance and ionization equilibrium are included here.

The combined two-photon continuum is given by

\[P_{2p}(\lambda,T,n_{e}) = \sum_{X,k}\mathrm{Ab}(X)f(X_{k})C_{2p, X_k}(\lambda,T,n_{e})\]

where \(\mathrm{Ab}(X)\) is the abundance of element \(X\), \(f(X_{k})\) is the ionization equilibrium of the emitting ion \(X_{k}\), and \(C_{fb, X_k}(\lambda,T)\) is the two-photon emission of the ion \(X_k\) as computed by fiasco.Ion.two_photon. The sum is taken over all ions in the collection.

Parameters: