ForceFreeStates - Investigate Solovev cutoff sensitivity after 2.0

Open
#610 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 3 days

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
julia
Domain
performance

Research direction

Start by reviewing the Solovev cutoff scan and the related issues #481, #520, and #427; the payload names no files or test commands. Compare FFS energies, response, and coupling quantities across cutoffs near 1e-6, varying ODE tolerance and spatial resolution independently, and validate calculated-kinetic examples separately. Done means establishing acceptable errors, supported numerical ranges, focused regression coverage, and documentation.

Written by the indexing model from the issue text.

Description

Follow-up to #555, scheduled for investigation after the 2.0 release. This issue records numerical questions to investigate without holding #555 up on additional convergence studies.

Related: #481 (separating crossing width from matching distance), #490 / #520 (forward-basis conditioning), and #427 (PE singular-coupling sampling radius). This issue focuses on validation of the Solovev examples rather than proposing another crossing implementation.

singfac_min controls the ForceFreeStates (FFS) integration/crossing near singular surfaces. Changing it can change the global solution and energy matrix, hence the response computed by PerturbedEquilibrium (PE), as well as downstream NTV torque. It is distinct from the PE singular-coupling diagnostic's sampling offset and from regularization_width.

The ideal-plus-NTV Solovev examples use kinetic_factor = 0 and prescribed regularization. Their torque should be interpreted as a diagnostic on a regularized ideal response, not a self-consistent kinetic torque. Numerical convergence at fixed regularization and physical sensitivity to the regularization are separate questions. The calculated-kinetic path (kinetic_source = "calculated", kinetic_factor = 1) needs separate validation.

After 2.0:

  • Revisit the Solovev cutoff scan and its reproducibility, including ODE-tolerance sensitivity and the conditioning concerns tracked in #481 and #520.
  • Test an intermediate-cutoff window around 1e-6 with independent ODE-tolerance and spatial-resolution checks. Track FFS energies, response, and coupling quantities; treat regularized NTV torque as a downstream diagnostic.
  • Separate finite-crossing error, small-cutoff numerical breakdown, and prescribed-regularization dependence. State the acceptable error for the quantity being validated.
  • Validate the calculated-kinetic examples independently rather than extrapolating from ideal-plus-postprocessing runs.
  • Add focused regression coverage and document the supported numerical range when established.

Treat 1e-6 as a practical choice to validate further, without assuming that smaller values are always safer or that 1e-4 is more accurate. No solver design is selected by this issue. This follow-up does not replace the normal human review and merge checks for #555.

Dominant language
Julia
Stars
11
Forks
7
Avg merge
4d 3h
Merged PRs (30d)
70

Getting set up

  • No Dockerfile or Docker Compose file
  • Has a pull request template
  • No contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from OpenFUSIONToolkit/GPEC

All issues in OpenFUSIONToolkit/GPEC

Similar issues

More Julia issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.