@@ -15,7 +15,7 @@ import SparseArrays: nnz
15
15
import Serialization: AbstractSerializer, deserialize, serialize
16
16
using Serialization
17
17
18
- import .. increment, .. increment!, .. decrement, .. decrement!, .. AdjType , .. TransType
18
+ import .. increment, .. increment!, .. decrement, .. decrement!, .. AdjointFact , .. TransposeFact
19
19
20
20
using .. LibSuiteSparse
21
21
import .. LibSuiteSparse:
@@ -255,7 +255,7 @@ workspace_W_size(F::UmfpackLU) = workspace_W_size(F, has_refinement(F))
255
255
workspace_W_size (S:: Union{UmfpackLU{<:AbstractFloat}, AbstractSparseMatrixCSC{<:AbstractFloat}} , refinement:: Bool ) = refinement ? 5 * size (S, 2 ) : size (S, 2 )
256
256
workspace_W_size (S:: Union{UmfpackLU{<:Complex}, AbstractSparseMatrixCSC{<:Complex}} , refinement:: Bool ) = refinement ? 10 * size (S, 2 ) : 4 * size (S, 2 )
257
257
258
- const ATLU = Union{TransType {<: Any , <: UmfpackLU }, AdjType {<: Any , <: UmfpackLU }}
258
+ const ATLU = Union{TransposeFact {<: Any , <: UmfpackLU }, AdjointFact {<: Any , <: UmfpackLU }}
259
259
has_refinement (F:: ATLU ) = has_refinement (F. parent)
260
260
has_refinement (F:: UmfpackLU ) = has_refinement (F. control)
261
261
has_refinement (control:: AbstractVector ) = control[JL_UMFPACK_IRSTEP] > 0
@@ -295,8 +295,8 @@ Base.copy(F::T, ws=UmfpackWS(F)) where {T <: ATLU} =
295
295
296
296
if ! isdefined (LinearAlgebra, :AdjointFactorization )
297
297
Base. adjoint (F:: UmfpackLU ) = Adjoint (F)
298
- Base. transpose (F:: UmfpackLU ) = Transpose (F)
299
298
end
299
+ Base. transpose (F:: UmfpackLU ) = TransposeFact (F)
300
300
301
301
function Base. lock (f:: Function , F:: UmfpackLU )
302
302
lock (F)
@@ -938,28 +938,28 @@ import LinearAlgebra.ldiv!
938
938
939
939
ldiv! (lu:: UmfpackLU{T} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
940
940
ldiv! (B, lu, copy (B))
941
- ldiv! (translu:: TransType {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
941
+ ldiv! (translu:: TransposeFact {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
942
942
ldiv! (B, translu, copy (B))
943
- ldiv! (adjlu:: AdjType {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
943
+ ldiv! (adjlu:: AdjointFact {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
944
944
ldiv! (B, adjlu, copy (B))
945
945
ldiv! (lu:: UmfpackLU{Float64} , B:: StridedVecOrMat{<:Complex} ) =
946
946
ldiv! (B, lu, copy (B))
947
- ldiv! (translu:: TransType {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{<:Complex} ) =
947
+ ldiv! (translu:: TransposeFact {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{<:Complex} ) =
948
948
ldiv! (B, translu, copy (B))
949
- ldiv! (adjlu:: AdjType {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{<:Complex} ) =
949
+ ldiv! (adjlu:: AdjointFact {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{<:Complex} ) =
950
950
ldiv! (B, adjlu, copy (B))
951
951
952
952
ldiv! (X:: StridedVecOrMat{T} , lu:: UmfpackLU{T} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
953
953
_Aq_ldiv_B! (X, lu, B, UMFPACK_A)
954
- ldiv! (X:: StridedVecOrMat{T} , translu:: TransType {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
954
+ ldiv! (X:: StridedVecOrMat{T} , translu:: TransposeFact {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
955
955
(lu = translu. parent; _Aq_ldiv_B! (X, lu, B, UMFPACK_Aat))
956
- ldiv! (X:: StridedVecOrMat{T} , adjlu:: AdjType {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
956
+ ldiv! (X:: StridedVecOrMat{T} , adjlu:: AdjointFact {T,<:UmfpackLU{T}} , B:: StridedVecOrMat{T} ) where {T<: UMFVTypes } =
957
957
(lu = adjlu. parent; _Aq_ldiv_B! (X, lu, B, UMFPACK_At))
958
958
ldiv! (X:: StridedVecOrMat{Tb} , lu:: UmfpackLU{Float64} , B:: StridedVecOrMat{Tb} ) where {Tb<: Complex } =
959
959
_Aq_ldiv_B! (X, lu, B, UMFPACK_A)
960
- ldiv! (X:: StridedVecOrMat{Tb} , translu:: TransType {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{Tb} ) where {Tb<: Complex } =
960
+ ldiv! (X:: StridedVecOrMat{Tb} , translu:: TransposeFact {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{Tb} ) where {Tb<: Complex } =
961
961
(lu = translu. parent; _Aq_ldiv_B! (X, lu, B, UMFPACK_Aat))
962
- ldiv! (X:: StridedVecOrMat{Tb} , adjlu:: AdjType {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{Tb} ) where {Tb<: Complex } =
962
+ ldiv! (X:: StridedVecOrMat{Tb} , adjlu:: AdjointFact {Float64,<:UmfpackLU{Float64}} , B:: StridedVecOrMat{Tb} ) where {Tb<: Complex } =
963
963
(lu = adjlu. parent; _Aq_ldiv_B! (X, lu, B, UMFPACK_At))
964
964
965
965
function _Aq_ldiv_B! (X:: StridedVecOrMat , lu:: UmfpackLU , B:: StridedVecOrMat , transposeoptype)
0 commit comments