Ifpack2: change ILUT level-of-fill to double, update documentation (I…

James Willenbring requested to merge atoth1:develop into develop

Created by: atoth1

…ssue #3782 (closed))

@trilinos/Ifpack2 @mhoemmen

Description

In ILUT changed the storage of level-of-fill from int to double, updated documentation to reflect actual behavior, and added a unit test.

Motivation and Context

Previously the documentation for this parameter given in setParameters() indicated that the parameter "fact: ilut level-of-fill" represented a max number of additional nonzero entries per row of the L and U factors, when it was actually being used as a fill fraction. As such, this is more appropriately represented by a double. The parameter was previously allowed to be provided as a double in input, but this value was cast to an int for storage and cast back to a double for computations. This truncation is unnecessary.

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.

Additional Information

Unsure if this is consider breaking backwards compatibility. This could impact results for users providing a non-integer double value for this parameter, but in this case the previous behavior wasn't doing what was expected.

Merge request reports