-
-
Notifications
You must be signed in to change notification settings - Fork 61
/
Copy pathretcodes.jl
46 lines (43 loc) · 1.13 KB
/
retcodes.jl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using LinearSolve, RecursiveFactorization
alglist = (
LUFactorization,
QRFactorization,
DiagonalFactorization,
DirectLdiv!,
SparspakFactorization,
KLUFactorization,
UMFPACKFactorization,
KrylovJL_GMRES,
GenericLUFactorization,
RFLUFactorization,
LDLtFactorization,
BunchKaufmanFactorization,
CHOLMODFactorization,
SVDFactorization,
CholeskyFactorization,
NormalCholeskyFactorization,
AppleAccelerateLUFactorization,
MKLLUFactorization,
KrylovJL_CRAIGMR,
KrylovJL_LSMR
)
@testset "Success" begin
for alg in alglist
A = [2.0 1.0; -1.0 1.0]
b = [-1.0, 1.0]
prob = LinearProblem(A, b)
linsolve = init(prob, alg)
sol = solve!(linsolve)
@test SciMLBase.successful_retcode(sol.retcode) || sol.retcode == ReturnCode.Default # The latter seems off...
end
end
@testset "Failure" begin
for alg in alglist
A = [1.0 1.0; 1.0 1.0]
b = [-1.0, 1.0]
prob = LinearProblem(A, b)
linsolve = init(prob, alg)
sol = solve!(linsolve)
@test !SciMLBase.successful_retcode(sol.retcode)
end
end