Skip to content

Commit a7e38dd

Browse files
committed
Update ADNLPModelsEnzymeExt.jl
1 parent d2b8dd0 commit a7e38dd

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

ext/ADNLPModelsEnzymeExt.jl

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,9 @@ _dual_objective(f, x_d) = ForwardDiff.partials(f(x_d), 1)
2323
_dual_lagrangian(ℓ, x_d, y, obj_weight, cx_d) = ForwardDiff.partials((x_d, y, obj_weight, cx_d), 1)
2424

2525
function _hvp!(res, f, x, v)
26-
x_d = ForwardDiff.Dual{Nothing}.(x, v)
26+
T = eltype(x)
27+
D = ForwardDiff.Dual{Nothing, T, 1}
28+
x_d = D.(x, v)
2729
dx_d = zero.(x_d)
2830

2931
Enzyme.autodiff(
@@ -54,9 +56,10 @@ function _gradient!(dx, ℓ, x, y, obj_weight, cx)
5456
end
5557

5658
function _hvp!(res, ℓ, x, v, y, obj_weight, cx)
57-
D = ForwardDiff.Dual{Nothing, eltype(x), 1}
59+
T = eltype(x)
60+
D = ForwardDiff.Dual{Nothing, T, 1}
5861

59-
x_d = ForwardDiff.Dual{Nothing}.(x, v)
62+
x_d = D.(x, v)
6063
dx_d = zero.(x_d)
6164

6265
cx_d = fill!(similar(cx, D), zero(D))

0 commit comments

Comments
 (0)