Skip to content

Add HIRES (Bari IVP set) work-precision example for STIFF3#46

Merged
ivan-pi merged 1 commit into
mainfrom
copilot/add-hires-example-university-bari
May 11, 2026
Merged

Add HIRES (Bari IVP set) work-precision example for STIFF3#46
ivan-pi merged 1 commit into
mainfrom
copilot/add-hires-example-university-bari

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 11, 2026

This PR adds the HIRES benchmark from the University of Bari IVP test set as a new STIFF3 example. It adapts the published ODE/Jacobian/IC/final-time definition and adds an eps sweep study that emits gnuplot-ready CPU-time vs tolerance data.

  • HIRES example implementation

    • Added example/hires.f90 with:
      • 8D HIRES RHS (fun) and analytic Jacobian (jac)
      • Bari initial condition and final time t = 321.8122
      • Reference-solution check at final time against published values
  • Work-precision study output

    • Added tolerance sweep over eps = [1e-4, 1e-5, 1e-6, 1e-7, 1e-8, 1e-9]
    • Writes hires_work_precision.dat for gnuplot with columns:
      • eps cpu_time_seconds max_relative_error nfev njev nlu nsol nacc nrej
    • Purpose: plot CPU time (y) vs error tolerance eps (x)
  • Build/docs integration

    • Registered hires in example/CMakeLists.txt
    • Updated README example list and HIRES output description
real(wp), parameter :: eps_values(ncases) = [ &
  1.0e-4_wp, 1.0e-5_wp, 1.0e-6_wp, 1.0e-7_wp, 1.0e-8_wp, 1.0e-9_wp ]
...
call write_gnuplot_data('hires_work_precision.dat', eps_values, cpu_times, errors, stats)

Agent-Logs-Url: https://github.com/ivan-pi/stiff3/sessions/19e7cc0c-039e-4101-9be5-cb259db8f357

Co-authored-by: ivan-pi <21085643+ivan-pi@users.noreply.github.com>
@ivan-pi ivan-pi marked this pull request as ready for review May 11, 2026 21:26
@ivan-pi ivan-pi merged commit 9c23db8 into main May 11, 2026
2 of 4 checks passed
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.

2 participants