Skip to content

CombinedField covariant components, CODATA 2022 masses, example extras - #129

Open
rogeriojorge wants to merge 9 commits into
mainfrom
fix/combined-covariant-cleanup
Open

rogeriojorge wants to merge 9 commits into
mainfrom
fix/combined-covariant-cleanup

Conversation

@rogeriojorge

Copy link
Copy Markdown
Member
  • CombinedField did not override B_covariant, so it fell back to the summed Cartesian B while B_contravariant summed the VMEC-coordinate components; curl_B, curl_b, kappa mixed bases. It now sums B_covariant and takes |B| = sqrt(B_i B^i) (valid in any coordinates). Non-pytree fields such as Vmec are kept static in the pytree, so CombinedField(vmec, ...) can be traced at all (before it raised a TypeError under jit).
  • Cleanup: stray from pyexpat import model removed; timestep: float; proton and neutron masses (and mu_0) updated to CODATA 2022 (they were 2018 values under a 2022 label).
  • Examples: pip install 'essos[vmex]' declares vmex[freeb]>=0.11.3 (virtual casing; 0.11.3 adds the MgridField order used by trace_particles_vmec_to_wall). pyQSC_JAX cannot be declared (not on PyPI, direct URLs rejected), so the three near-axis examples print the install command and exit 0.

Tests: test_combined_vmec_fields_sum_covariant_and_contravariant_components (fails on main with the jit TypeError; before the AbsB change kappa was off by up to 76%), updated CODATA pins in test_constants. Full suite on office: 289 passed; the 3 failures are missing f90nml in that env and test_multiobjectives' import error is fixed by #119 — both also on main.

Conflicts trivially with #117 (both add [project.optional-dependencies]).

@codecov

codecov Bot commented Oct 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

Files with missing lines Coverage Δ
essos/constants.py 100.00% <100.00%> (ø)
essos/dynamics.py 78.44% <ø> (-0.02%) ⬇️
essos/fields.py 89.78% <100.00%> (+0.59%) ⬆️

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.

1 participant