Docs

The W44_133 line only exists where there is W⁴⁴⁺, and that fraction depends on
Te. This module computes where W⁴⁴⁺ sits in each profile and runs a toy LBO
simulation to separate atomic effects from transport effects. It is used in
notebooks/10W3-10W4/10W4.ipynb.

from aug.analysis.atomic import load_w_atom_data, w44_profile_metrics, toy_lbo_signal, signal_metrics
from aug.io import read_lbo_profiles

atom = load_w_atom_data(subset_path="cache/w_adf11_subset.txt")
p = read_lbo_profiles(shot.lbo_paths[0])
rho = p["Te"].rho
ne = np.interp(rho, p["ne"].rho, p["ne"].value)
m = w44_profile_metrics(rho, ne, p["Te"].value, atom)
m["f44_axis"], m["rho_peak"], m["S_Te_w"]

sim = toy_lbo_signal(rho, ne, p["Te"].value, atom, D=0.7)
signal_metrics(sim["t"], sim["signal"])

Atomic data

Installing Aurora

The PyPI wheel (aurorafusion 3.0.6) does not build with scikit-build-core ≥
0.8. From the repo:

brew install gcc            # gfortran
git clone https://github.com/fsciortino/Aurora && cd Aurora
sed -i '' 's/cmake.minimum-version = "3.17.2"/cmake.version = ">=3.17.2"/; s/ninja.minimum-version = "1.10"/ninja.version = ">=1.10"/' pyproject.toml
uv pip install --no-deps .

Without Aurora, w_fractional_abundance does the same calculation in numpy.

Metrics (w44_profile_metrics)

Key Meaning
f44_axis, f44_max, rho_peak W⁴⁴⁺ fraction on axis, its maximum, and where the maximum is
shell maximum at ρ > 0.15 and on-axis value < ½ of the maximum
rho_emis, rho_emis_w maximum and centroid of ne²·f44 (where the line looks; no PEC or geometry)
S_Te_axis, S_Te_w d ln f44 / d ln Te on axis and weighted by emissivity. With S < 0, the signal rises when Te drops even though the W content is unchanged
Zmean_axis mean W charge on axis

Toy LBO (toy_lbo_signal)

A cylinder of radius a = 0.5 m, ∂n/∂t = (1/r)∂ᵣr(D∂ᵣn − v n) + S, n(a) = 0,
with the source at ρ = 0.97. Transport (D, v) is the same for every profile;
only the f44(ρ) window changes. Signal = Σ n_W·ne·f44 dρ (central chord), with
instantaneous coronal equilibrium. Options:

It is a simple limiting case, not a prediction. It tells you which effects can
produce a given curve shape and which cannot.

References: F. Sciortino et al., Plasma Phys. Control. Fusion 63,
112001 (2021) (Aurora); T. Pütterich et al., Plasma Phys. Control. Fusion
50, 085016 (2008) (W spectra and ionization balance in AUG).