Skip to content

feat: FeOt redox basis, instance-aware Fe split, MagmaOcean + fractionation fixes - #6

Closed
bknight1 wants to merge 8 commits into
mainfrom
feat/feot-redox
Closed

feat: FeOt redox basis, instance-aware Fe split, MagmaOcean + fractionation fixes#6
bknight1 wants to merge 8 commits into
mainfrom
feat/feot-redox

Conversation

@bknight1

@bknight1 bknight1 commented Aug 6, 2026

Copy link
Copy Markdown
Owner

Summary

  • utils: non-normalising mol↔wt converters; FeOt→FeO+O split at target Fe³⁺/FeOt
  • core: instance-aware get_phase_fe_split; Fe2/Fe3 key casing fix; get_phase_mg2_number; solvus (multi-instance) handling documented
  • calculators: garnet fe_basis; weight-basis fractionation; extended extract_from_grid (apfu / mg_number / instance); PhaseFunctions.fractionate_phase
  • models: MagmaOcean (renamed) with bulk preservation across fractional stages; unit-basis garnet fractionation
  • tests: redox/site-occupancy, Fe basis, solvus-instance, fractionation, iron-oxide conversions
  • chore: consolidate agent guidance into AGENTS.md; remove legacy Copilot/agent memory files

Test plan

  • python3 -m unittest discover tests (78 tests pass, 1 skipped — Julia-dependent site-occupancy test)
  • phasetools-julia-setup --check (reviewer with Julia env)

Add a new Jupyter notebook demonstrating garnet–clinopyroxene Fe2+–Mg thermometry (S10 eclogite) and update Tutorials/Garnet/README.md with an entry linking the notebook. Fix plotting in src/phasetools/models/garnet_growth.py by using the correct radius arrays (r instead of r_r) for the size-distribution plot and class vertical lines, and remove an obsolete/duplicated summary plotting block to clean up the function.
@bknight1

Copy link
Copy Markdown
Owner Author

This PR has been split into 6 focused sub-PRs:

Merge order: F ∥ B → A → C, D, E (in any order after A).

@bknight1 bknight1 closed this Aug 16, 2026
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