Skip to content

Relaxed composite#703

Merged
bobmyhill merged 5 commits intogeodynamics:mainfrom
bobmyhill:relaxed_composite
Nov 17, 2025
Merged

Relaxed composite#703
bobmyhill merged 5 commits intogeodynamics:mainfrom
bobmyhill:relaxed_composite

Conversation

@bobmyhill
Copy link
Copy Markdown
Member

This pull request:

  • Adds a RelaxedComposite class, which extends Composite to equilibrate assemblages using only set_state(). The new class also supports calculation of partially and fully relaxed thermodynamic properties via user-defined isochemical reaction vectors.
  • Adds a new example script, example_assemblage_relaxation.py, which demonstrates how to use the RelaxedComposite class to compute and compare thermodynamic properties (bulk modulus, thermal expansivity, heat capacity) for an olivine-wadsleyite assemblage under different relaxation scenarios.
  • Adds new tests for the new class.

Other minor changes:

  • Improved the check_eos_consistency function and related calculations to handle both minerals and composites.
  • Clarified terminology and improved comments in the solution.py file, ensuring correct references to Gibbs energy (instead of Helmholtz) and updating documentation for derived properties.

@bobmyhill bobmyhill merged commit 0ef8613 into geodynamics:main Nov 17, 2025
12 checks passed
@bobmyhill bobmyhill deleted the relaxed_composite branch November 17, 2025 19:40
@bobmyhill bobmyhill added this to the 3.0 milestone Nov 28, 2025
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