Skip to content

Commit f55639a

Browse files
committed
add tests for iterative and u0
1 parent 9b69358 commit f55639a

File tree

1 file changed

+19
-6
lines changed

1 file changed

+19
-6
lines changed

test/forwarddiff_overloads.jl

Lines changed: 19 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,31 @@ A, b = h([ForwardDiff.Dual(5.0, 1.0, 0.0), ForwardDiff.Dual(5.0, 0.0, 1.0)])
1313

1414
prob = LinearProblem(A, b)
1515
overload_x_p = solve(prob)
16-
original_x_p = A \ b
16+
backslash_x_p = A \ b
17+
krylov_overload_x_p = solve(prob, KrylovJL_GMRES())
18+
@test (overload_x_p, backslash_x_p, rtol = 1e-9)
19+
@test (krylov_overload_x_p, backslash_x_p, rtol = 1e-9)
20+
21+
krylov_prob = LinearProblem(A, b, u0 = rand(3))
22+
krylov_u0_sol = solve(krylov_prob, KrylovJL_GMRES())
23+
24+
@test (krylov_u0_sol, original_x_p, rtol = 1e-9)
1725

18-
@test (overload_x_p, original_x_p, rtol = 1e-9)
1926

2027
A, _ = h([ForwardDiff.Dual(5.0, 1.0, 0.0), ForwardDiff.Dual(5.0, 0.0, 1.0)])
28+
backslash_x_p = A \ [6.0, 10.0, 25.0]
2129
prob = LinearProblem(A, [6.0, 10.0, 25.0])
22-
@test (solve(prob).u, A \ [6.0, 10.0, 25.0], rtol = 1e-9)
30+
31+
@test (solve(prob).u, backslash_x_p, rtol = 1e-9)
32+
@test (solve(prob, KrylovJL_GMRES()).u, backslash_x_p, rtol = 1e-9)
2333

2434
_, b = h([ForwardDiff.Dual(5.0, 1.0, 0.0), ForwardDiff.Dual(5.0, 0.0, 1.0)])
2535
A = [5.0 6.0 125.0; 15.0 10.0 21.0; 25.0 45.0 5.0]
36+
backslash_x_p = A \ b
2637
prob = LinearProblem(A, b)
27-
@test (solve(prob).u, A \ b, rtol = 1e-9)
38+
39+
@test (solve(prob).u, backslash_x_p, rtol = 1e-9)
40+
@test (solve(prob, KrylovJL_GMRES()).u, backslash_x_p, rtol = 1e-9)
2841

2942
A, b = h([ForwardDiff.Dual(10.0, 1.0, 0.0), ForwardDiff.Dual(10.0, 0.0, 1.0)])
3043

@@ -36,6 +49,6 @@ cache.A = new_A
3649
cache.b = new_b
3750

3851
x_p = solve!(cache)
39-
other_x_p = new_A \ new_b
52+
backslash_x_p = new_A \ new_b
4053

41-
@test (x_p, other_x_p, rtol = 1e-9)
54+
@test (x_p, backslash_x_p, rtol = 1e-9)

0 commit comments

Comments
 (0)