Skip to content

Fix impossible At, Pa, Np and Pm entries in the EELS edge table - #192

Open
ewels wants to merge 1 commit into
hyperspy:mainfrom
ewels:fix-eels-edge-entries
Open

ewels wants to merge 1 commit into
hyperspy:mainfrom
ewels:fix-eels-edge-entries

Conversation

@ewels

@ewels ewels commented Nov 11, 2026

Copy link
Copy Markdown

Description of the change

Fixes #191.

  • At N4 533 eV (was 879 eV, the Am N4 onset) and At N5 507 eV (was 533 eV).
  • Pa O1 310 eV and Pa O2 232 eV (were 223 and 310 eV).
  • Np O1 (206 eV) renamed to O3.
  • Pm N5 120 eV (was 121 eV, above Pm N4).
  • Values from the Gatan EELS Atlas and Elam, Ravel and Sieber (2002), https://doi.org/10.1016/S0969-806X(01)00227-4. For Pm N5 the Atlas has the same value as exSpy, so the value is from Elam et al.
  • In test_eels.py and test_edges_range.py, the edge at 533 eV is now At_N4, and At_N5 is at 507 eV.

AI-assisted contribution?

  • Is this an AI-assisted contribution? If yes, and non-trivial, link to the accepted proposal:
    - [x] N/A (human-only contribution or trivial change)
    - [ ] Proposal accepted: <link to PR in hyperspy/hyperspy-proposals>

Progress of the PR

  • if AI-assisted, Assisted-by: <tool>:<model> in every commit and no AI Co-authored-by: trailer,
  • Change implemented (can be split into several points),
  • docstring updated (if appropriate),
  • update user guide (if appropriate),
  • added tests,
  • add a changelog entry in the upcoming_changes folder (see upcoming_changes/README.rst),
  • Check formatting of the changelog entry (and eventual user guide changes) in the docs/readthedocs.org:exspy build of this PR (link in github checks)
  • ready for review.

Minimal example of the bug fix or the new feature

from exspy.material import elements

for el, shells in {"At": ["N3", "N4", "N5"], "Pa": ["O1", "O2"], "Np": ["O2", "O3"], "Pm": ["N4", "N5"]}.items():
    e = elements[el].Atomic_properties.Binding_energies
    print(el, {sh: e[sh]["onset_energy (eV)"] for sh in shells})
# At {'N3': 740.0, 'N4': 533.0, 'N5': 507.0}
# Pa {'O1': 310.0, 'O2': 232.0}
# Np {'O2': 283.0, 'O3': 206.0}
# Pm {'N4': 120.0, 'N5': 120.0}

At N4 had the Am N4 onset (879 eV) and At N5 the At N4 onset. Pa O1
and O2 were the wrong way round, Np O1 (206 eV) is the O3 edge, and
Pm N5 was above Pm N4.

Fixes hyperspy#191

Assisted-by: Claude Code:claude-opus-5-5

This branch has not been deployed

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Four impossible entries in the EELS edge table: At N4, Pa O1, Np O1 and Pm N5

1 participant