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

parametrize SymTridiagonal on the wrapped vector type #23035

Merged
merged 3 commits into from
Aug 5, 2017

Conversation

fredrikekre
Copy link
Member

SymTridiagonal version of #22718 and #22925.

@fredrikekre fredrikekre added kind:breaking This change will break code domain:linear algebra Linear algebra labels Jul 30, 2017
NEWS.md Outdated
@@ -73,8 +73,10 @@ This section lists changes that do not have deprecation warnings.
longer present. Use `first(R)` and `last(R)` to obtain
start/stop. ([#20974])

* The `Diagonal` type definition has changed from `Diagonal{T}` to
`Diagonal{T,V<:AbstractVector{T}}` ([#22718]).
* The `Diagonal`, `Bidiagonal` and `SymTridiagonal` type definitions have changed from
Copy link
Contributor

Choose a reason for hiding this comment

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

assuming that merges first? I'm still not so sure about that densifying constructor over there


function SymTridiagonal(dv::AbstractVector{Td}, ev::AbstractVector{Te}) where {Td,Te}
T = promote_type(Td,Te)
function SymTridiagonal(dv::AbstractVector{T}, ev::AbstractVector{T}) where T
SymTridiagonal(convert(Vector{T}, dv), convert(Vector{T}, ev))
Copy link
Contributor

Choose a reason for hiding this comment

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

here as well, it seems you wouldn't want to do this any more

Copy link
Member Author

Choose a reason for hiding this comment

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

Could you suggest an alternative promotion pattern to obtain the same type of both vectors? Perhaps over here: #22925 (comment)

@tkelman tkelman added the kind:deprecation This change introduces or involves a deprecation label Aug 1, 2017
@@ -1599,6 +1599,15 @@ end
# issue #6466
# `write` on non-isbits arrays is deprecated in io.jl.

# PR #23035
# also uncomment constructor tests in test/linalg/tridiag.jl
function SymTridiagonal(dv::AbstractVector{T}, ev::AbstractVector{S}) where {T,S}
Copy link
Contributor

@tkelman tkelman Aug 1, 2017

Choose a reason for hiding this comment

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

could also use a deprecation bullet in news (or could add it for both in whichever merges second)

@fredrikekre
Copy link
Member Author

@nanosoldier runbenchmarks("linalg", vs = ":master")

@nanosoldier
Copy link
Collaborator

Your benchmark job has completed - possible performance regressions were detected. A full report can be found here. cc @ararslan

@fredrikekre
Copy link
Member Author

Let's try again
@nanosoldier runbenchmarks("linalg", vs = ":master")

@nanosoldier
Copy link
Collaborator

Your benchmark job has completed - no performance regressions were detected. A full report can be found here. cc @ararslan

Copy link
Contributor

@tkelman tkelman left a comment

Choose a reason for hiding this comment

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

lgtm, travis failures are timeout and arnoldi

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
domain:linear algebra Linear algebra kind:breaking This change will break code kind:deprecation This change introduces or involves a deprecation
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants