Skip to content

Resolves "NOX: Treat Exception as Solve Failure"

Created by: jmgate

@trilinos/thyra, @trilinos/nox

Description

As per the discussion in #1608, a LinearOpApplyFailed exception was added to Thyra, documented with the LinearOpBase::apply() routine, and then caught in LOCA's Stepper to be treated as a solve failure, such that LOCA can back up, reduce its step size, and then keep on working.

Motivation and Context

A simulation in Charon ran into a case where a Schur complement calculated as part of a preconditioner was singular, but instead of treating that as a solve failure, LOCA and the simulation just bailed.

Related Issues

How Has This Been Tested?

Trying out the new pull request auto-tester.

Checklist

  • My commit messages mention the appropriate GitHub issue numbers.
  • My code follows the code style of the affected package(s).
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the code contribution guidelines for this project.
  • I have added tests to cover my changes.
  • All new and existing tests passed.
  • No new compiler warnings were introduced.
  • These changes break backwards compatibility.

Haven't checked on the compiler warnings yet, but I'll do that soon.

Merge request reports

Loading