@@ -14,17 +14,17 @@ import Base.Broadcast: BroadcastStyle, Broadcasted, broadcasted
1414
1515import ArrayLayouts: AbstractBandedLayout, AbstractQLayout, AdjQRPackedQLayout, CNoPivot, DenseColumnMajor, FillLayout,
1616 MatLdivVec, MatLmulMat, MatLmulVec, MemoryLayout, QRPackedQLayout, RangeCumsum, TriangularLayout,
17- TridiagonalLayout, __qr, _bidiag_forwardsub!, _factorize, _qr, check_mul_axes, colsupport,
17+ TridiagonalLayout, __qr, _factorize, _qr, check_mul_axes, colsupport,
1818 diagonaldata, ldiv!, lmul!, mul, mulreduce, reflector!, reflectorApply!,
1919 rowsupport, sub_materialize, subdiagonaldata, sublayout, supdiagonaldata, transposelayout,
2020 triangulardata, triangularlayout, zero!, materialize!
2121
2222import BandedMatrices: BandedColumns, BandedMatrix, BandedMatrix, _BandedMatrix, AbstractBandedMatrix,
23- _BandedMatrix, _BandedMatrix, _banded_qr, _banded_qr!, _default_banded_broadcast, banded_chol!,
23+ _BandedMatrix, _BandedMatrix, _banded_qr, _banded_qr!, banded_chol!,
2424 banded_similar, bandedcolumns, bandeddata, bandwidths
2525
2626import BlockArrays: AbstractBlockLayout, BlockLayout, BlockSlice, BlockSlice1, BlockedOneTo,
27- blockcolsupport, sizes_from_blocks, OneToCumsum, AbstractBlockedUnitRange
27+ blockcolsupport, sizes_from_blocks, AbstractBlockedUnitRange
2828
2929import BlockBandedMatrices: AbstractBlockBandedLayout, BlockBandedMatrix, BlockSkylineMatrix,
3030 BlockSkylineSizes, BlockTridiagonal, _BlockBandedMatrix, _BlockSkylineMatrix,
@@ -53,35 +53,20 @@ import MatrixFactorizations: AdjQLPackedQLayout, LayoutQ, QL, QLPackedQ, QLPacke
5353 ul!, ul_layout
5454
5555import SemiseparableMatrices: AbstractAlmostBandedLayout, _almostbanded_qr!
56-
57-
58- LinearAlgebra. _cut_B (x:: AbstractVector , :: InfUnitRange ) = x
59- LinearAlgebra. _cut_B (X:: AbstractMatrix , :: InfUnitRange ) = X
60-
61-
62- if VERSION ≥ v " 1.11.0-DEV.21"
63- using LinearAlgebra: UpperOrLowerTriangular
64- else
65- const UpperOrLowerTriangular{T,S} = Union{LinearAlgebra. UpperTriangular{T,S},
66- LinearAlgebra. UnitUpperTriangular{T,S},
67- LinearAlgebra. LowerTriangular{T,S},
68- LinearAlgebra. UnitLowerTriangular{T,S}}
69- end
70-
56+ import InfiniteArrays: UpperOrLowerTriangular, TridiagonalToeplitzLayout, TriToeplitz, PertTridiagonalToeplitzLayout, PertConstRows,
57+ subdiagonalconstant, diagonalconstant, supdiagonalconstant
7158
7259# BroadcastStyle(::Type{<:BandedMatrix{<:Any,<:Any,<:OneToInf}}) = LazyArrayStyle{2}()
7360
74- function ArrayLayouts. _power_by_squaring (_, :: NTuple{2,InfiniteCardinal{0}} , A:: AbstractMatrix{T} , p:: Integer ) where T
75- if p < 0
76- inv (A)^ (- p)
77- elseif p == 0
78- Eye {T} (∞)
79- elseif p == 1
80- copy (A)
81- else
82- A* A^ (p- 1 )
83- end
84- end
61+ const InfiniteArraysBandedMatricesExt = Base. get_extension (InfiniteArrays, :InfiniteArraysBandedMatricesExt )
62+ const InfiniteArraysBlockArraysExt = Base. get_extension (InfiniteArrays, :InfiniteArraysBlockArraysExt )
63+ const InfBandedMatrix = InfiniteArraysBandedMatricesExt. InfBandedMatrix
64+ const InfToeplitz = InfiniteArraysBandedMatricesExt. InfToeplitz
65+ const PertToeplitzLayout = InfiniteArraysBandedMatricesExt. PertToeplitzLayout
66+ const PertToeplitz = InfiniteArraysBandedMatricesExt. PertToeplitz
67+ const BlockTriPertToeplitz = InfiniteArraysBlockArraysExt. BlockTriPertToeplitz
68+ const BlockTridiagonalToeplitzLayout = InfiniteArraysBlockArraysExt. BlockTridiagonalToeplitzLayout
69+
8570
8671function choplength (c:: AbstractVector , tol)
8772 @inbounds for k = length (c): - 1 : 1
@@ -128,12 +113,10 @@ pad(c::Transpose, ax, bx) = transpose(pad(parent(c), bx, ax))
128113pad (c:: Adjoint , ax, bx) = adjoint (pad (parent (c), bx, ax))
129114pad (c:: BlockVec , ax:: BlockedOneTo{Int,<:InfStepRange} ) = BlockVec (pad (c. args[1 ], size (c. args[1 ],1 ), ∞))
130115
131- export Vcat, Fill, ql, ql!, ∞, ContinuousSpectrumError, BlockTridiagonal
116+ export ∞, ContinuousSpectrumError, BlockTridiagonal
132117
133118include (" banded/hessenbergq.jl" )
134119
135- include (" banded/infbanded.jl" )
136- include (" blockbanded/blockbanded.jl" )
137120include (" banded/infqltoeplitz.jl" )
138121include (" banded/infreversecholeskytoeplitz.jl" )
139122include (" banded/infreversecholeskytridiagonal.jl" )
0 commit comments