Skip to content

Conversation

termoshtt
Copy link
Member

@termoshtt termoshtt commented Jun 15, 2019

Replace operator::Operator* traits by new LinearOperator trait.

  • Switch arnoldi module to use it instead of Fn(&mut ArrayBase<S, Ix1>)
  • diag, and its dependent (eigh) module are affected.

Design

  • There is no need to split these traits since there are &self functions
    • LinearOperatorOnce with self functions (with Clone) can be an option
  • Do not support general D: Dimension.
    • Dimension::Smaller is not match for the action of linear operators onto any rank tensor.
  • rename op* to apply*, multi to 2

@termoshtt termoshtt added the breaking change Non-compatible change label Jun 16, 2019
@termoshtt termoshtt marked this pull request as ready for review June 16, 2019 18:59
@termoshtt termoshtt merged commit cf68301 into master Jun 16, 2019
@termoshtt termoshtt deleted the linear_operator branch October 13, 2019 18:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking change Non-compatible change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant