|
46 | 46 |
|
47 | 47 | @testitem "Termination Conditions: Allocations" tags=[:cuda] begin |
48 | 48 | using CUDA, NonlinearSolveBase, Test, LinearAlgebra |
49 | | - CUDA.allowscalar(false) |
50 | | - du = cu(rand(4)) |
51 | | - u = cu(rand(4)) |
52 | | - uprev = cu(rand(4)) |
53 | | - TERMINATION_CONDITIONS = [ |
54 | | - RelTerminationMode, AbsTerminationMode |
55 | | - ] |
56 | | - NORM_TERMINATION_CONDITIONS = [ |
57 | | - AbsNormTerminationMode, RelNormTerminationMode, RelNormSafeTerminationMode, |
58 | | - AbsNormSafeTerminationMode, RelNormSafeBestTerminationMode, AbsNormSafeBestTerminationMode |
59 | | - ] |
60 | 49 |
|
61 | | - @testset begin |
62 | | - @testset "Mode: $(tcond)" for tcond in TERMINATION_CONDITIONS |
63 | | - @test_nowarn NonlinearSolveBase.check_convergence( |
64 | | - tcond(), du, u, uprev, 1e-3, 1e-3) |
65 | | - end |
| 50 | + if CUDA.functional() |
| 51 | + CUDA.allowscalar(false) |
| 52 | + du = cu(rand(4)) |
| 53 | + u = cu(rand(4)) |
| 54 | + uprev = cu(rand(4)) |
| 55 | + TERMINATION_CONDITIONS = [ |
| 56 | + RelTerminationMode, AbsTerminationMode |
| 57 | + ] |
| 58 | + NORM_TERMINATION_CONDITIONS = [ |
| 59 | + AbsNormTerminationMode, RelNormTerminationMode, RelNormSafeTerminationMode, |
| 60 | + AbsNormSafeTerminationMode, RelNormSafeBestTerminationMode, AbsNormSafeBestTerminationMode |
| 61 | + ] |
66 | 62 |
|
67 | | - @testset "Mode: $(tcond)" for tcond in NORM_TERMINATION_CONDITIONS |
68 | | - for nfn in (Base.Fix1(maximum, abs), Base.Fix2(norm, 2), Base.Fix2(norm, Inf)) |
| 63 | + @testset begin |
| 64 | + @testset "Mode: $(tcond)" for tcond in TERMINATION_CONDITIONS |
69 | 65 | @test_nowarn NonlinearSolveBase.check_convergence( |
70 | | - tcond(nfn), du, u, uprev, 1e-3, 1e-3) |
| 66 | + tcond(), du, u, uprev, 1e-3, 1e-3) |
| 67 | + end |
| 68 | + |
| 69 | + @testset "Mode: $(tcond)" for tcond in NORM_TERMINATION_CONDITIONS |
| 70 | + for nfn in (Base.Fix1(maximum, abs), Base.Fix2(norm, 2), Base.Fix2(norm, Inf)) |
| 71 | + @test_nowarn NonlinearSolveBase.check_convergence( |
| 72 | + tcond(nfn), du, u, uprev, 1e-3, 1e-3) |
| 73 | + end |
71 | 74 | end |
72 | 75 | end |
73 | 76 | end |
|
0 commit comments