Skip to content

Add YASS integrator#1988

Draft
BenWibking wants to merge 2 commits intoAMReX-Astro:developmentfrom
BenWibking:add-yass-integrator
Draft

Add YASS integrator#1988
BenWibking wants to merge 2 commits intoAMReX-Astro:developmentfrom
BenWibking:add-yass-integrator

Conversation

@BenWibking
Copy link
Copy Markdown
Collaborator

@BenWibking BenWibking commented Apr 28, 2026

Single Newton iteration with Y^0 as initial guess:
$(I - \Delta t \ J^0)(Y^n - Y^0) = \Delta t \ F^0$

  • yass_single_step(): column-scaled LU solve for conservation
  • be_integrator_yass(): YASS step size control (eps + relative floor)
  • Runtime parameters: use_yass, yass_eps, yass_floor

PR Stack 2 of 2:

- Add time_start parameter to single_step() for explicit time control
- Skip clean_state when using number densities (avoid double normalization)
- Replace fine/coarse step error estimation with forward/backward Euler
  comparison (avoids extra Jacobian/RHS evaluations)
- Add VODE-like adaptive timestep controller for accept/reject
- Fix step counting (was incrementing by 2 per step)
- Add verbose step logging for debugging
- Add negative species check for use_number_densities mode
- Fix initial_timestep: pass do_clean_state and clamp dt not h
- Update inputs_vode_example for BackwardEuler compatibility
Single Newton iteration with Y^0 as initial guess:
(I - dt*J^0)(Y^n - Y^0) = dt*F^0

- yass_single_step(): column-scaled LU solve for conservation
- be_integrator_yass(): YASS step size control (eps + relative floor)
- Runtime parameters: use_yass, yass_eps, yass_floor
@BenWibking BenWibking changed the title Add yass integrator Add YASS integrator Apr 28, 2026
@BenWibking BenWibking changed the base branch from main to development April 28, 2026 00:48
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