@@ -424,20 +424,20 @@ const LowerTriangularPlain{T} = Union{
424424 UnitLowerTriangular{T,<: SparseMatrixCSCUnion{T} }}
425425
426426const LowerTriangularWrapped{T} = Union{
427- Adjoint {T,<: UpperTriangular {T,<:SparseMatrixCSCUnion{T}} },
428- Adjoint {T,<: UnitUpperTriangular {T,<:SparseMatrixCSCUnion{T}} },
429- Transpose {T,<: UpperTriangular {T,<:SparseMatrixCSCUnion{T}} },
430- Transpose {T,<: UnitUpperTriangular {T,<:SparseMatrixCSCUnion{T}} }} where T
427+ LowerTriangular {T,<: Adjoint {T,<:SparseMatrixCSCUnion{T}} },
428+ UnitLowerTriangular {T,<: Adjoint {T,<:SparseMatrixCSCUnion{T}} },
429+ LowerTriangular {T,<: Transpose {T,<:SparseMatrixCSCUnion{T}} },
430+ UnitLowerTriangular {T,<: Transpose {T,<:SparseMatrixCSCUnion{T}} }} where T
431431
432432const UpperTriangularPlain{T} = Union{
433433 UpperTriangular{T,<: SparseMatrixCSCUnion{T} },
434434 UnitUpperTriangular{T,<: SparseMatrixCSCUnion{T} }}
435435
436436const UpperTriangularWrapped{T} = Union{
437- Adjoint {T,<: LowerTriangular {T,<:SparseMatrixCSCUnion{T}} },
438- Adjoint {T,<: UnitLowerTriangular {T,<:SparseMatrixCSCUnion{T}} },
439- Transpose {T,<: LowerTriangular {T,<:SparseMatrixCSCUnion{T}} },
440- Transpose {T,<: UnitLowerTriangular {T,<:SparseMatrixCSCUnion{T}} }} where T
437+ UpperTriangular {T,<: Adjoint {T,<:SparseMatrixCSCUnion{T}} },
438+ UnitUpperTriangular {T,<: Adjoint {T,<:SparseMatrixCSCUnion{T}} },
439+ UpperTriangular {T,<: Transpose {T,<:SparseMatrixCSCUnion{T}} },
440+ UnitUpperTriangular {T,<: Transpose {T,<:SparseMatrixCSCUnion{T}} }} where T
441441
442442const UpperTriangularSparse{T} = Union{
443443 UpperTriangularWrapped{T}, UpperTriangularPlain{T}} where T
543543
544544# forward multiplication for adjoint and transpose of LowerTriangular CSC matrices
545545function _lmul! (U:: UpperTriangularWrapped , B:: StridedVecOrMat )
546- A = U . parent. data
547- unit = U. parent isa UnitDiagonalTriangular
548- adj = U isa Adjoint
546+ A = parent ( parent (U))
547+ unit = U isa UnitDiagonalTriangular
548+ adj = parent (U) isa Adjoint
549549
550550 nrowB, ncolB = size (B, 1 ), size (B, 2 )
551551 aa = getnzval (A)
583583
584584# backward multiplication with adjoint and transpose of LowerTriangular CSC matrices
585585function _lmul! (L:: LowerTriangularWrapped , B:: StridedVecOrMat )
586- A = L . parent. data
587- unit = L. parent isa UnitDiagonalTriangular
588- adj = L isa Adjoint
586+ A = parent ( parent (L))
587+ unit = L isa UnitDiagonalTriangular
588+ adj = parent (L) isa Adjoint
589589
590590 nrowB, ncolB = size (B, 1 ), size (B, 2 )
591591 aa = getnzval (A)
718718
719719# forward substitution for adjoint and transpose of UpperTriangular CSC matrices
720720function _ldiv! (L:: LowerTriangularWrapped , B:: StridedVecOrMat )
721- A = L . parent. data
722- unit = L. parent isa UnitDiagonalTriangular
723- adj = L isa Adjoint
721+ A = parent ( parent (L))
722+ unit = L isa UnitDiagonalTriangular
723+ adj = parent (L) isa Adjoint
724724
725725 nrowB, ncolB = size (B, 1 ), size (B, 2 )
726726 aa = getnzval (A)
764764
765765# backward substitution for adjoint and transpose of LowerTriangular CSC matrices
766766function _ldiv! (U:: UpperTriangularWrapped , B:: StridedVecOrMat )
767- A = U . parent. data
768- unit = U. parent isa UnitDiagonalTriangular
769- adj = U isa Adjoint
767+ A = parent ( parent (U))
768+ unit = U isa UnitDiagonalTriangular
769+ adj = parent (U) isa Adjoint
770770
771771 nrowB, ncolB = size (B, 1 ), size (B, 2 )
772772 aa = getnzval (A)
@@ -1582,10 +1582,10 @@ for (xformtype, xformop) in ((:Adjoint, :adjoint), (:Transpose, :transpose))
15821582 if istriu (A)
15831583 return \ (Diagonal (($ xformop .(diag (A)))), B)
15841584 else
1585- return \ ($ xformop ( LowerTriangular (A)), B)
1585+ return \ (UpperTriangular ( $ xformop (A)), B)
15861586 end
15871587 elseif istriu (A)
1588- return \ ($ xformop ( UpperTriangular (A)), B)
1588+ return \ (LowerTriangular ( $ xformop (A)), B)
15891589 end
15901590 if ishermitian (A)
15911591 return \ ($ xformop (Hermitian (A)), B)
0 commit comments