Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix \ and .'\ for Symmetric and Hermitian sparse matrices. #19242

Merged
merged 1 commit into from
Nov 16, 2016

Conversation

andreasnoack
Copy link
Member

Apparently, we were not testing \ for Symmetric and Hermitian sparse matrices. We also didn't have a fallback method for A.'\b. See also #19232

@@ -670,3 +671,19 @@ let m = 400, n = 500
@test s.is_super == 0
@test F\b ≈ ones(m + n)
end

# Test that \ and '\ and .'\ work for Symmetric and Hertian. This is just
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hermitian misspelled here

@@ -670,3 +671,19 @@ let m = 400, n = 500
@test s.is_super == 0
@test F\b ≈ ones(m + n)
end

# Test that \ and '\ and .'\ work for Symmetric and Hertian. This is just
# a dispatch excercise so it doesn't matter that the complex matrix have
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

exercise

@@ -57,6 +57,10 @@ for f in (:A_ldiv_B!, :Ac_ldiv_B!, :At_ldiv_B!)
$f(A, copy!(Y, B))
end

# fallback methods for transposed solves
At_ldiv_B{T<:Real}(F::Factorization{T}, B) = Ac_ldiv_B(F, B)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This appears to be the cause of ambiguity errors

@kshyatt
Copy link
Contributor

kshyatt commented Nov 14, 2016

What's the status on this?

@andreasnoack
Copy link
Member Author

There was an ambiguity. I've resolved it so the PR should be ready when the tests complete.

@andreasnoack
Copy link
Member Author

There was actually another problem. conj(::SparseMatrixCSC) had been deprecated in favor of the dot version but I think that is wrong. We hadn't done that for dense arrays and consider conj a matrix operation. Therefore, I've undeprecated conj(::SparseMatrixCSC).

Undeprecate conj for sparse matrices.
@andreasnoack andreasnoack merged commit d9d0fad into master Nov 16, 2016
@andreasnoack andreasnoack deleted the anj/spsyhe branch November 16, 2016 00:56
tkelman pushed a commit that referenced this pull request Feb 22, 2017
fcard pushed a commit to fcard/julia that referenced this pull request Feb 28, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
linear algebra Linear algebra sparse Sparse arrays
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants