Skip to content
This repository was archived by the owner on Nov 10, 2025. It is now read-only.

Restructure and add hyperfine#38

Merged
johannes-moegerle merged 106 commits intopairinteraction:masterfrom
johannes-moegerle:restructure-and-add-hyperfine
Nov 5, 2025
Merged

Restructure and add hyperfine#38
johannes-moegerle merged 106 commits intopairinteraction:masterfrom
johannes-moegerle:restructure-and-add-hyperfine

Conversation

@johannes-moegerle
Copy link
Collaborator

@johannes-moegerle johannes-moegerle commented Oct 16, 2025

This is a major restructure of the code base.

We split the RydbergState in:

  • a RadialState (mainly has all the functionality from as before)
  • and an AngularKet/AngularState which now also supports hyperfine and different coupling schemes, see below

AngularKet / AngularState

  • AngularKets consist of the quantum numbers i_c, s_c, l_c, s_r, l_r, f_tot and 3 additional qns according to the coupling scheme (e.g. l_tot, s_tot, j_tot for LS coupling)
  • implemented functionality for LS, JJ, and FJ coupling scheme, this includes
    • overlaps, also between different coupling schemes
    • transform a state into a different coupling scheme basis
    • calculate the angular matrix elements of typical operators

Related PRs

pairinteraction/MQDT.jl#16
pairinteraction/database-mqdt#7

TODO in future PRs

  • rename elements/ to species/; BaseElement -> SpeciesObject; RydbergState allow argument species as str or object; state.element -> state.species, state.species -> state.species.name; in general class ...Base to class ...Object? (see Rename elements to species #40)
  • decouple use_nist_data option from the element/species; make a utils function calc_nu(species, n, l, ..., use_nist_data) (see Rename elements to species #40)
  • clean up / simplify radial grid.py, wavefunction.py and radial_state.py (see clean up RadialState, Wavefunction, Grid rydstate#3)
  • adapt to pairinteraction naming conventions (e.g. operators in small caps, names of calc/get methods ...))

@johannes-moegerle johannes-moegerle force-pushed the restructure-and-add-hyperfine branch from cdd376d to e7befd8 Compare November 5, 2025 18:14
@johannes-moegerle johannes-moegerle merged commit e7befd8 into pairinteraction:master Nov 5, 2025
7 checks passed
@johannes-moegerle johannes-moegerle deleted the restructure-and-add-hyperfine branch November 5, 2025 18:21
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant