@@ -66,7 +66,8 @@ function do_factorization(alg::GenericLUFactorization, A, b, u)
6666end
6767
6868function init_cacheval (alg:: Union{LUFactorization, GenericLUFactorization} , A, b, u, Pl, Pr,
69- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
69+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
70+ assumptions:: OperatorAssumptions )
7071 ArrayInterfaceCore. lu_instance (convert (AbstractMatrix, A))
7172end
7273
@@ -146,19 +147,23 @@ function init_cacheval(alg::GenericFactorization{typeof(lu!)},
146147 ArrayInterfaceCore. lu_instance (A)
147148end
148149function init_cacheval (alg:: GenericFactorization{typeof(lu)} , A:: Diagonal , b, u, Pl, Pr,
149- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
150+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
151+ assumptions:: OperatorAssumptions )
150152 Diagonal (inv .(A. diag))
151153end
152154function init_cacheval (alg:: GenericFactorization{typeof(lu)} , A:: Tridiagonal , b, u, Pl, Pr,
153- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
155+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
156+ assumptions:: OperatorAssumptions )
154157 ArrayInterfaceCore. lu_instance (A)
155158end
156159function init_cacheval (alg:: GenericFactorization{typeof(lu!)} , A:: Diagonal , b, u, Pl, Pr,
157- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
160+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
161+ assumptions:: OperatorAssumptions )
158162 Diagonal (inv .(A. diag))
159163end
160164function init_cacheval (alg:: GenericFactorization{typeof(lu!)} , A:: Tridiagonal , b, u, Pl, Pr,
161- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
165+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
166+ assumptions:: OperatorAssumptions )
162167 ArrayInterfaceCore. lu_instance (A)
163168end
164169
@@ -171,7 +176,8 @@ function init_cacheval(alg::GenericFactorization, A::Tridiagonal, b, u, Pl, Pr,
171176 ArrayInterfaceCore. lu_instance (A)
172177end
173178function init_cacheval (alg:: GenericFactorization , A:: SymTridiagonal{T, V} , b, u, Pl, Pr,
174- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions ) where {T, V}
179+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
180+ assumptions:: OperatorAssumptions ) where {T, V}
175181 LinearAlgebra. LDLt {T, SymTridiagonal{T, V}} (A)
176182end
177183
197203# Fallback, tries to make nonsingular and just factorizes
198204# Try to never use it.
199205function init_cacheval (alg:: Union{QRFactorization, SVDFactorization, GenericFactorization} ,
200- A, b, u, Pl, Pr, maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
206+ A, b, u, Pl, Pr, maxiters:: Int , abstol, reltol, verbose:: Bool ,
207+ assumptions:: OperatorAssumptions )
201208 newA = copy (convert (AbstractMatrix, A))
202209 if newA isa AbstractSparseMatrix
203210 fill! (nonzeros (newA), true )
224231function init_cacheval (alg:: Union {GenericFactorization,
225232 GenericFactorization{typeof (cholesky)},
226233 GenericFactorization{typeof (cholesky!)}}, A, b, u, Pl, Pr,
227- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
234+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
235+ assumptions:: OperatorAssumptions )
228236 newA = copy (convert (AbstractMatrix, A))
229237 do_factorization (alg, newA, b, u)
230238end
@@ -245,7 +253,8 @@ Base.@kwdef struct UMFPACKFactorization <: AbstractFactorization
245253 reuse_symbolic:: Bool = true
246254end
247255
248- function init_cacheval (alg:: UMFPACKFactorization , A, b, u, Pl, Pr, maxiters:: Int , abstol, reltol,
256+ function init_cacheval (alg:: UMFPACKFactorization , A, b, u, Pl, Pr, maxiters:: Int , abstol,
257+ reltol,
249258 verbose)
250259 A = convert (AbstractMatrix, A)
251260 zerobased = SparseArrays. getcolptr (A)[1 ] == 0
@@ -280,7 +289,8 @@ Base.@kwdef struct KLUFactorization <: AbstractFactorization
280289 reuse_symbolic:: Bool = true
281290end
282291
283- function init_cacheval (alg:: KLUFactorization , A, b, u, Pl, Pr, maxiters:: Int , abstol, reltol,
292+ function init_cacheval (alg:: KLUFactorization , A, b, u, Pl, Pr, maxiters:: Int , abstol,
293+ reltol,
284294 verbose:: Bool , assumptions:: OperatorAssumptions )
285295 return KLU. KLUFactorization (convert (AbstractMatrix, A)) # this takes care of the copy internally.
286296end
352362struct FastLUFactorization <: AbstractFactorization end
353363
354364function init_cacheval (:: FastLUFactorization , A, b, u, Pl, Pr,
355- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
365+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
366+ assumptions:: OperatorAssumptions )
356367 ws = LUWs (A)
357368 return WorkspaceAndFactors (ws, LinearAlgebra. LU (LAPACK. getrf! (ws, A)... ))
358369end
@@ -389,24 +400,28 @@ end
389400
390401@static if VERSION < v " 1.7beta"
391402 function init_cacheval (alg:: FastQRFactorization{Val{false}} , A, b, u, Pl, Pr,
392- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
403+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
404+ assumptions:: OperatorAssumptions )
393405 ws = QRWYWs (A; blocksize = alg. blocksize)
394406 return WorkspaceAndFactors (ws, LinearAlgebra. QRCompactWY (LAPACK. geqrt! (ws, A)... ))
395407 end
396408
397409 function init_cacheval (:: FastQRFactorization{Val{true}} , A, b, u, Pl, Pr,
398- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
410+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
411+ assumptions:: OperatorAssumptions )
399412 ws = QRpWs (A)
400413 return WorkspaceAndFactors (ws, LinearAlgebra. QRPivoted (LAPACK. geqp3! (ws, A)... ))
401414 end
402415else
403416 function init_cacheval (alg:: FastQRFactorization{NoPivot} , A, b, u, Pl, Pr,
404- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
417+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
418+ assumptions:: OperatorAssumptions )
405419 ws = QRWYWs (A; blocksize = alg. blocksize)
406420 return WorkspaceAndFactors (ws, LinearAlgebra. QRCompactWY (LAPACK. geqrt! (ws, A)... ))
407421 end
408422 function init_cacheval (:: FastQRFactorization{ColumnNorm} , A, b, u, Pl, Pr,
409- maxiters:: Int , abstol, reltol, verbose:: Bool , assumptions:: OperatorAssumptions )
423+ maxiters:: Int , abstol, reltol, verbose:: Bool ,
424+ assumptions:: OperatorAssumptions )
410425 ws = QRpWs (A)
411426 return WorkspaceAndFactors (ws, LinearAlgebra. QRPivoted (LAPACK. geqp3! (ws, A)... ))
412427 end
0 commit comments