@@ -195,10 +195,10 @@ struct JacVec{F,T1,T2,xType}
195195 autodiff:: Bool
196196end
197197
198- function JacVec (f, x:: AbstractArray ; autodiff = true )
198+ function JacVec (f, x:: AbstractArray , tag = DeivVecTag () ; autodiff = true )
199199 if autodiff
200- cache1 = Dual {typeof(ForwardDiff.Tag(DeivVecTag() ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
201- cache2 = Dual {typeof(ForwardDiff.Tag(DeivVecTag() ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
200+ cache1 = Dual {typeof(ForwardDiff.Tag(tag ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
201+ cache2 = Dual {typeof(ForwardDiff.Tag(tag ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
202202 else
203203 cache1 = similar (x)
204204 cache2 = similar (x)
@@ -264,10 +264,10 @@ struct HesVecGrad{G,T1,T2,uType}
264264 autodiff:: Bool
265265end
266266
267- function HesVecGrad (g, x:: AbstractArray ; autodiff = false )
267+ function HesVecGrad (g, x:: AbstractArray , tag = DeivVecTag () ; autodiff = false )
268268 if autodiff
269- cache1 = Dual {typeof(ForwardDiff.Tag(DeivVecTag() ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
270- cache2 = Dual {typeof(ForwardDiff.Tag(DeivVecTag() ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
269+ cache1 = Dual {typeof(ForwardDiff.Tag(tag ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
270+ cache2 = Dual {typeof(ForwardDiff.Tag(tag ,eltype(x))),eltype(x),1} .(x, ForwardDiff. Partials .(tuple .(x)))
271271 else
272272 cache1 = similar (x)
273273 cache2 = similar (x)
0 commit comments