Skip to content

Conversation

@bobmyhill
Copy link
Member

This pull request makes improvements to the equilibration precision and updates several benchmark routines to ensure more accurate and robust calculations. The most significant changes involve tightening numerical tolerances in the equilibration routines, adding assertion checks for equilibrium precision, and updating benchmark scripts to use more precise and physically consistent procedures.

Equilibration precision improvements:

  • Reduced the default numerical tolerances for pressure, temperature, and compositional parameters in get_equilibration_parameters in equilibration.py for higher precision in equilibrium calculations.
  • Added an assertion in equilibrate to ensure that the maximum reaction affinity is below a strict threshold of 10 J/mol, improving the reliability of equilibrium detection.

Benchmark procedure updates:

  • In check_fig_1_fper_relaxed of slb_2024_benchmarks.py, updated the procedure to first equilibrate ferropericlase and iron at 1 bar, 1473 K, then use the resulting composition for subsequent calculations, ensuring consistency with SLB2024 Figure 1. [1] [2]
  • In check_fig_7_fO2, added an assertion to confirm that compositional simplification yields the expected number of endmembers, and updated the equilibrium calculation to use a stricter tolerance and the correct assemblage state when computing chemical potentials. [1] [2]

@bobmyhill bobmyhill requested a review from Copilot October 10, 2025 23:55

This comment was marked as resolved.

@geodynamics geodynamics deleted a comment from Copilot AI Oct 10, 2025
@geodynamics geodynamics deleted a comment from Copilot AI Oct 10, 2025
@geodynamics geodynamics deleted a comment from Copilot AI Oct 10, 2025
@bobmyhill bobmyhill merged commit abb0946 into geodynamics:main Oct 11, 2025
12 checks passed
@bobmyhill bobmyhill deleted the improve_slb_benchmarks branch October 11, 2025 00:10
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