@@ -34,7 +34,8 @@ const ForwardADs = (
34
34
function select_forward_mode_autodiff (
35
35
prob:: AbstractNonlinearProblem , ad:: AbstractADType ; warn_check_mode:: Bool = true )
36
36
if warn_check_mode && ! (ADTypes. mode (ad) isa ADTypes. ForwardMode) &&
37
- ! (ADTypes. mode (ad) isa ADTypes. ForwardOrReverseMode)
37
+ ! (ADTypes. mode (ad) isa ADTypes. ForwardOrReverseMode) &&
38
+ ! is_finite_differences_backend (ad)
38
39
@warn " The chosen AD backend $(ad) is not a forward mode AD. Use with caution."
39
40
end
40
41
if incompatible_backend_and_problem (prob, ad)
60
61
function select_reverse_mode_autodiff (
61
62
prob:: AbstractNonlinearProblem , ad:: AbstractADType ; warn_check_mode:: Bool = true )
62
63
if warn_check_mode && ! (ADTypes. mode (ad) isa ADTypes. ReverseMode) &&
63
- ! (ADTypes. mode (ad) isa ADTypes. ForwardOrReverseMode)
64
- if ! is_finite_differences_backend (ad)
65
- @warn " The chosen AD backend $(ad) is not a reverse mode AD. Use with caution."
66
- else
67
- @warn " The chosen AD backend $(ad) is a finite differences backend. This might \
68
- be slow and inaccurate. Use with caution."
69
- end
64
+ ! (ADTypes. mode (ad) isa ADTypes. ForwardOrReverseMode) &&
65
+ ! is_finite_differences_backend (ad)
66
+ @warn " The chosen AD backend $(ad) is not a reverse mode AD. Use with caution."
70
67
end
71
68
if incompatible_backend_and_problem (prob, ad)
72
69
adₙ = select_reverse_mode_autodiff (prob, nothing ; warn_check_mode)
0 commit comments