Skip to content

Commit 36db954

Browse files
handle a few more cases
1 parent c18bcba commit 36db954

File tree

1 file changed

+12
-1
lines changed

1 file changed

+12
-1
lines changed

src/default.jl

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,15 @@ function defaultalg(A, b::GPUArraysCore.AbstractGPUArray, ::OperatorAssumptions{
4646
end
4747
end
4848

49+
function defaultalg(A::SciMLBase.AbstractDiffEqOperator, b, assumptions::OperatorAssumptions)
50+
KrylovJL_GMRES()
51+
end
52+
53+
# Ambiguity handling
54+
function defaultalg(A::SciMLBase.AbstractDiffEqOperator, b, assumptions::OperatorAssumptions{nothing})
55+
KrylovJL_GMRES()
56+
end
57+
4958
# Handle ambiguity
5059
function defaultalg(A::GPUArraysCore.AbstractGPUArray, b::GPUArraysCore.AbstractGPUArray,
5160
::OperatorAssumptions{true})
@@ -70,6 +79,8 @@ function defaultalg(A::GPUArraysCore.AbstractGPUArray, b::GPUArraysCore.Abstract
7079
QRFactorization()
7180
end
7281

82+
83+
7384
# Allows A === nothing as a stand-in for dense matrix
7485
function defaultalg(A, b, ::OperatorAssumptions{true})
7586
# Special case on Arrays: avoid BLAS for RecursiveFactorization.jl when
@@ -119,6 +130,6 @@ end
119130

120131
function init_cacheval(alg::Nothing, A, b, u, Pl, Pr, maxiters::Int, abstol, reltol,
121132
verbose::Bool, assumptions::OperatorAssumptions)
122-
init_cacheval(default_alg(A, b), A, b, u, Pl, Pr, maxiters, abstol, reltol, verbose,
133+
init_cacheval(default_alg(A, b, assumptions), A, b, u, Pl, Pr, maxiters, abstol, reltol, verbose,
123134
assumptions)
124135
end

0 commit comments

Comments
 (0)