-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[WIP] Optimizing {+,-,*} for structured matrices (#28883)
* added sparse multiplication and division for triangular matrices. Fix #28451 * merge with master * merge with master 2 * fixed symtridiagonal + bidiagonal * improved find diagonal part * refactored to purge name space of SparseArrays * additional test cases and bug fix * specializing some structured matrix operations * added constructors for Triangular(::Diagonal). Removed redundant code from binops of special.jl so that broadcasting takes over. Cleaned up some of the tests for special.jl * fix whitespace * actually fixed whitespace * fixed a typo in Diagonal*Bi/Tridiag. Changed the multiplication methods to more explicit constructors so that matrices with BigFloat dont error * fixed bidiag+/-diag speed regression * fixed +/- regressions for the other structured matrix types (bidiag, tridiag, symtridiag, diag) * Revert "merged with master" This reverts commit 3a58908, reversing changes made to 0facd1d. * Removing the speedups for sparse matrix multiplication and division. These should go in another PR so this one can be merged more quickly. Revert "added sparse multiplication and division for triangular matrices. Fix #28451" This reverts commit 11c1d1d. * Revert "additional test cases and bug fix" This reverts commit 21592db. * reverting sparse changes * removing extra whitespace and comments * fixing BiTriSym*BiTriSym sparse eltype * fixing the cases where we have two structured matrices and the resulting diagonals are of different types. This still fails when the representation is a range and we get a step size of 0 * Fixes the issue where we try to add structured matrices and one has an eltype <: AbstractArray See PR 27289 * remove adjoint and transpose methods that I never changed * fixing tridiagonal constructor to save time/memory * fixing bidiag * diag return type * adding multiplication to binops tests
- Loading branch information
1 parent
5c5489e
commit 469fa36
Showing
5 changed files
with
326 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.