Skip to content

Conversation

@stevengj
Copy link
Member

As noted on discourse, we were missing / and \ methods for UpperHessenberg matrices, despite the existence of optimized ldiv! and rdiv! methods, so it was falling back to slow $O(n^3)$ methods.

While I was at it, I also added methods for transpose/adjoint Hessenberg matrices.

@jishnub
Copy link
Member

jishnub commented Apr 30, 2025

Looks good to me. We may also add a check for the upper Hessenberg structure in the generic method to dispatch to the specialized method. Since we are already checking for triangular structure, this should only require checking for one extra band.

@codecov
Copy link

codecov bot commented Apr 30, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 93.74%. Comparing base (c33045c) to head (4844670).
Report is 25 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1322   +/-   ##
=======================================
  Coverage   93.73%   93.74%           
=======================================
  Files          34       34           
  Lines       15746    15762   +16     
=======================================
+ Hits        14760    14776   +16     
  Misses        986      986           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Co-authored-by: Jishnu Bhattacharya <[email protected]>
@jishnub jishnub merged commit 9d26faf into master May 4, 2025
4 checks passed
@jishnub jishnub deleted the hessenberg_div branch May 4, 2025 12:04
@ViralBShah ViralBShah added the backport 1.12 Change should be backported to release-1.12 label May 11, 2025
jishnub added a commit that referenced this pull request May 12, 2025
As noted [on
discourse](https://discourse.julialang.org/t/add-a-upperhessenberg-row-in-linearalgebra-factorize/128530/4?u=stevengj),
we were missing `/` and `\` methods for `UpperHessenberg` matrices,
despite the existence of optimized `ldiv!` and `rdiv!` methods, so it
was falling back to slow $O(n^3)$ methods.

While I was at it, I also added methods for transpose/adjoint Hessenberg
matrices.

---------

Co-authored-by: Jishnu Bhattacharya <[email protected]>
(cherry picked from commit 9d26faf)
@jishnub jishnub mentioned this pull request May 12, 2025
27 tasks
@jishnub jishnub removed the backport 1.12 Change should be backported to release-1.12 label May 12, 2025
jishnub added a commit that referenced this pull request May 12, 2025
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.

3 participants