From 8ce128d926b2a12be0d33fb0b24a8fd747029ad4 Mon Sep 17 00:00:00 2001 From: kalmar Date: Wed, 21 Jun 2017 16:38:19 +0200 Subject: [PATCH] fix sparsify for dense matrices --- Orb_AutFN.jl | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/Orb_AutFN.jl b/Orb_AutFN.jl index e14bad2..01a2bd7 100644 --- a/Orb_AutFN.jl +++ b/Orb_AutFN.jl @@ -34,7 +34,7 @@ immutable Settings tol::Float64 end -function sparsify!{T}(U::Array{T}, eps=eps(T)) +function sparsify{T}(U::Array{T}, eps=eps(T)) n = rank(U) W = deepcopy(U) W[abs.(W) .< eps] = zero(T) @@ -42,9 +42,9 @@ function sparsify!{T}(U::Array{T}, eps=eps(T)) warn("Sparsification would decrease the rank!") W = U end - U = sparse(U) - dropzeros!(U) - return U + W = sparse(W) + dropzeros!(W) + return W end function sparsify!{T}(U::SparseMatrixCSC{T}, eps=eps(T)) @@ -53,8 +53,6 @@ function sparsify!{T}(U::SparseMatrixCSC{T}, eps=eps(T)) return U end -sparsify{T}(U::AbstractArray{T}, eps=eps(T)) = sparsify!(deepcopy(U), eps) - small_to_zero!{T}(A::AbstractArray{T}, eps=eps(T)) = A[abs(A) .< eps] = zero(T) function init_model(Uπs)