Skip to content

What are our atomic data needs? #52

Closed

Description

@namurphy

Over the last few years, I have gradually learned that plasmas tend to contain atoms. Hence, we will need to include some degree of atomic physics within PlasmaPy. The atomic data needs in plasma physics are very broad. For example, temperatures of interest range from ~10 K in molecular clouds to ~30-40 MK in solar flares. Astronomers tend to care about the dozen or so most abundant elements in the universe, while laboratory plasma physicists care a lot about impurities leeching in from the plasma-facing wall which is often from different materials. Dust also plays important roles in laboratory and astrophysical plasmas.

Including the ability to access all of the information any plasma physicist might ever need would be a never-ending project that would increase the size of this package by orders of magnitude. However, the ability to access important atomic data will be extremely useful for numerous plasma physicists across sub-disciplines. Hence we will need to do a lot of strategizing about what the most important needs are and how best to fill them. Some questions are:

  • What atomic data sets are most broadly needed by plasma physicists?
  • How and to what extent should PlasmaPy fulfil atomic physics needs?
  • What are the existing databases, and how would it be best to partner with them?
  • Are there atomic data needs that are not being fulfilled by any databases?
  • What should we include in the core package in our version 0.1 release?

A subset of the atomic data needs are:

  • Ionization and recombination rates
    • Collisional ionization, photoionization, etc.
    • Radiative recombination, dielectronic recombination, etc.
  • Cooling rate coefficients (e.g., for a given ion at a given temperature)
  • Collisional cross sections
  • Charge exchange cross sections
  • Photoionization cross sections
  • Everything associated with plasma spectroscopy and radiative transfer (which would be huge amounts of data and would undoubtedly be too much)
  • Ability to work with both Maxwellian and non-Maxwellian distribution functions

Occasionally there are nicely behaved functions that would be easy to implement such as the radiative recombination rate. Things like that are definitely worth including.

I am not sure what the best ways to proceed are. Some of our many options are:

  • Include the most important atomic data within the core package (or not)
  • Have an affiliate package that would be responsible for atomic data needs
  • Have query or bridge routines within the core package that would get the requested atomic data from websites or the local directories that contain the databases
  • Or instead, not include much in the way of atomic data within PlasmaPy and instead just put up some documentation that lets users know how/where to access atomic data using other databases/Python packages.

I am imagining that this will be a long-term conversation, but I figured it would be worth bringing up sooner rather than later. Any thoughts or ideas?

(see also #18 and #24)

Activity

  1. added this to the Future milestone on Jul 19, 2017
  2. namurphy commented on Jul 19, 2017

    @namurphy
    MemberAuthor

    Existing atomic databases or spectral modeling codes used in astrophysics include:

    Fusion databases include:

    Other databases include:

    ORNL Redbooks

    Potentially interesting references and websites

  3. namurphy commented on Jul 31, 2017

    @namurphy
    MemberAuthor

    Astroquery has some really helpful functionality in terms of retrieving atomic data from places like NIST.

  4. antoinetavant commented on Aug 2, 2017

    @antoinetavant
    Contributor

    Concerning Cross sections (Elastic, excitation, ionization) LXcart is a quite well known data base.

  5. lemmatum commented on Apr 3, 2018

    @lemmatum
    Contributor

    I think a good chunk of this overlaps with SpectroscoPy. In particular, this issue aims to create atomic state classes as an easy to use interface for fetching information from various databases. We just need to be careful about creating circular dependencies, in case SpectroscoPy will need to import plasma functions from PlasmaPy in the future.

  6. namurphy commented on Oct 31, 2018

    @namurphy
    MemberAuthor

    Cross-reference: #404

  7. namurphy commented on May 2, 2019

    @namurphy
    MemberAuthor

    It seems reasonable to close this issue since it's been quiet and there are no tasks associated with it. However, if anyone finds this issue in the future, please comment if you have atomic data needs that are missing!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    plasmapy.formularyRelated to the plasmapy.formulary subpackageplasmapy.particlesRelated to the plasmapy.particles subpackage

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions