@@ -65,7 +65,7 @@ julia> C.U
6565 ⋅ ⋅ 3.0
6666
6767julia> C.L
68- 3×3 LowerTriangular{Float64, Matrix{Float64}}:
68+ 3×3 LowerTriangular{Float64, Adjoint{Float64, Matrix{Float64} }}:
6969 2.0 ⋅ ⋅
7070 6.0 1.0 ⋅
7171 -8.0 5.0 3.0
@@ -305,7 +305,7 @@ function _cholpivoted!(A::AbstractMatrix, ::Type{UpperTriangular}, tol::Real, ch
305305 rTA = real (eltype (A))
306306 # checks
307307 Base. require_one_based_indexing (A)
308- n = LinearAlgebra . checksquare (A)
308+ n = checksquare (A)
309309 # initialization
310310 piv = collect (1 : n)
311311 dots = zeros (rTA, n)
@@ -354,7 +354,7 @@ function _cholpivoted!(A::AbstractMatrix, ::Type{LowerTriangular}, tol::Real, ch
354354 rTA = real (eltype (A))
355355 # checks
356356 Base. require_one_based_indexing (A)
357- n = LinearAlgebra . checksquare (A)
357+ n = checksquare (A)
358358 # initialization
359359 piv = collect (1 : n)
360360 dots = zeros (rTA, n)
@@ -530,7 +530,7 @@ julia> C.U
530530 ⋅ ⋅ 3.0
531531
532532julia> C.L
533- 3×3 LowerTriangular{Float64, Matrix{Float64}}:
533+ 3×3 LowerTriangular{Float64, Adjoint{Float64, Matrix{Float64} }}:
534534 2.0 ⋅ ⋅
535535 6.0 1.0 ⋅
536536 -8.0 5.0 3.0
@@ -664,30 +664,15 @@ copy(C::CholeskyPivoted) = CholeskyPivoted(copy(C.factors), C.uplo, C.piv, C.ran
664664size (C:: Union{Cholesky, CholeskyPivoted} ) = size (C. factors)
665665size (C:: Union{Cholesky, CholeskyPivoted} , d:: Integer ) = size (C. factors, d)
666666
667- function _choleskyUfactor (Cfactors, Cuplo)
668- if Cuplo === ' U'
669- return UpperTriangular (Cfactors)
670- else
671- return copy (LowerTriangular (Cfactors)' )
672- end
673- end
674- function _choleskyLfactor (Cfactors, Cuplo)
675- if Cuplo === ' L'
676- return LowerTriangular (Cfactors)
677- else
678- return copy (UpperTriangular (Cfactors)' )
679- end
680- end
681-
682667function getproperty (C:: Cholesky , d:: Symbol )
683668 Cfactors = getfield (C, :factors )
684669 Cuplo = getfield (C, :uplo )
685670 if d === :U
686- _choleskyUfactor ( Cfactors, Cuplo )
671+ UpperTriangular (Cuplo == ' U ' ? Cfactors : Cfactors ' )
687672 elseif d === :L
688- _choleskyLfactor ( Cfactors, Cuplo )
673+ LowerTriangular (Cuplo == ' L ' ? Cfactors : Cfactors ' )
689674 elseif d === :UL
690- return (Cuplo === ' U' ? UpperTriangular (Cfactors) : LowerTriangular (Cfactors))
675+ return (Cuplo == ' U' ? UpperTriangular (Cfactors) : LowerTriangular (Cfactors))
691676 else
692677 return getfield (C, d)
693678 end
@@ -704,9 +689,9 @@ function getproperty(C::CholeskyPivoted{T}, d::Symbol) where {T}
704689 Cfactors = getfield (C, :factors )
705690 Cuplo = getfield (C, :uplo )
706691 if d === :U
707- _choleskyUfactor ( Cfactors, Cuplo )
692+ UpperTriangular (Cuplo == ' U ' ? Cfactors : Cfactors ' )
708693 elseif d === :L
709- _choleskyLfactor ( Cfactors, Cuplo )
694+ LowerTriangular (Cuplo == ' L ' ? Cfactors : Cfactors ' )
710695 elseif d === :p
711696 return getfield (C, :piv )
712697 elseif d === :P
@@ -813,7 +798,7 @@ function rdiv!(B::AbstractMatrix, C::Cholesky)
813798 end
814799end
815800
816- function LinearAlgebra . rdiv! (B:: AbstractMatrix , C:: CholeskyPivoted )
801+ function rdiv! (B:: AbstractMatrix , C:: CholeskyPivoted )
817802 n = size (C, 2 )
818803 for i in 1 : size (B, 1 )
819804 permute! (view (B, i, 1 : n), C. piv)
@@ -965,7 +950,7 @@ function lowrankdowndate!(C::Cholesky, v::AbstractVector)
965950 s = conj (v[i]/ Aii)
966951 s2 = abs2 (s)
967952 if s2 > 1
968- throw (LinearAlgebra . PosDefException (i))
953+ throw (PosDefException (i))
969954 end
970955 c = sqrt (1 - abs2 (s))
971956
0 commit comments