@@ -6,10 +6,10 @@ function auto_jacvec!(
66 f,
77 x,
88 v,
9- cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x))))),
9+ cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x))))),
1010 cache2 = similar(cache1),
1111)
12- cache1 .= Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x)))))
12+ cache1 .= Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x)))))
1313 f(cache2, cache1)
1414 vecdy = _vec(dy)
1515 vecdy .= partials.(_vec(cache2), 1 )
@@ -20,7 +20,7 @@ _vec(v::AbstractVector) = v
2020
2121function auto_jacvec(f, x, v)
2222 vv = reshape(v, axes(x))
23- y = ForwardDiff. Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(vv)))
23+ y = ForwardDiff. Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(vv)))
2424 vec(partials.(vec(f(y)), 1 ))
2525end
2626
@@ -127,12 +127,12 @@ function autonum_hesvec!(
127127 f,
128128 x,
129129 v,
130- cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x))))),
131- cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x))))),
130+ cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x))))),
131+ cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x))))),
132132)
133133 cache = FiniteDiff. GradientCache(v[1 ], cache1, Val{:central})
134134 g = (dx, x) -> FiniteDiff. finite_difference_gradient!(dx, f, x, cache)
135- cache1 .= Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x)))))
135+ cache1 .= Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x)))))
136136 g(cache2, cache1)
137137 dy .= partials.(cache2, 1 )
138138end
@@ -169,16 +169,16 @@ function auto_hesvecgrad!(
169169 g,
170170 x,
171171 v,
172- cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x))))),
173- cache3 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x))))),
172+ cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x))))),
173+ cache3 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x))))),
174174)
175- cache2 .= Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x)))))
175+ cache2 .= Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x)))))
176176 g(cache3, cache2)
177177 dy .= partials.(cache3, 1 )
178178end
179179
180180function auto_hesvecgrad(g, x, v)
181- y = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(reshape(v, size(x)))))
181+ y = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(reshape(v, size(x)))))
182182 partials.(g(y), 1 )
183183end
184184
194194
195195function JacVec(f, x:: AbstractArray ; autodiff = true )
196196 if autodiff
197- cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(x)))
198- cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(x)))
197+ cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(x)))
198+ cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(x)))
199199 else
200200 cache1 = similar(x)
201201 cache2 = similar(x)
263263
264264function HesVecGrad(g, x:: AbstractArray ; autodiff = false )
265265 if autodiff
266- cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(x)))
267- cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(Tuple .(x)))
266+ cache1 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(x)))
267+ cache2 = Dual{typeof(ForwardDiff. Tag(DeivVecTag(),eltype(x))),eltype(x),1 }. (x, ForwardDiff. Partials.(tuple .(x)))
268268 else
269269 cache1 = similar(x)
270270 cache2 = similar(x)
0 commit comments