You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
T = ForwardDiff.Tag(OptimizationSparseReverseTag(),eltype(x))
585
-
xduals = [ForwardDiff.Dual{typeof(T),eltype(x),maximum(conshess_colors[i])}.(x, Ref(ForwardDiff.Partials((ones(eltype(x), maximum(conshess_colors[i]))...,)))) for i in1:num_cons]
587
+
xduals = [ForwardDiff.Dual{typeof(T),eltype(x),min(chunksize, maximum(conshess_colors[i]))}.(x, Ref(ForwardDiff.Partials((ones(eltype(x), min(chunksize, maximum(conshess_colors[i])))...,)))) for i in1:num_cons]
586
588
consh_tapes = [ReverseDiff.GradientTape(fncs[i], xduals[i]) for i in1:num_cons]
587
589
conshtapes = ReverseDiff.compile.(consh_tapes)
588
590
functiongrad_cons(res1, θ, htape)
589
591
ReverseDiff.gradient!(res1, htape, θ)
590
592
end
591
593
gs = [(res1, x) ->grad_cons(res1, x, conshtapes[i]) for i in1:num_cons]
592
594
jaccfgs = [ForwardColorJacCache(gs[i], x; tag =typeof(T), colorvec = conshess_colors[i], sparsity = conshess_sparsity[i]) for i in1:num_cons]
T = ForwardDiff.Tag(OptimizationSparseReverseTag(),eltype(cache.u0))
722
-
xduals = [ForwardDiff.Dual{typeof(T),eltype(cache.u0),maximum(conshess_colors[i])}.(cache.u0, Ref(ForwardDiff.Partials((ones(eltype(cache.u0), maximum(conshess_colors[i]))...,)))) for i in1:num_cons]
725
+
xduals = [ForwardDiff.Dual{typeof(T),eltype(cache.u0),min(chunksize, maximum(conshess_colors[i]))}.(cache.u0, Ref(ForwardDiff.Partials((ones(eltype(cache.u0), min(chunksize, maximum(conshess_colors[i])))...,)))) for i in1:num_cons]
723
726
consh_tapes = [ReverseDiff.GradientTape(fncs[i], xduals[i]) for i in1:num_cons]
724
727
conshtapes = ReverseDiff.compile.(consh_tapes)
725
728
functiongrad_cons(res1, θ, htape)
726
729
ReverseDiff.gradient!(res1, htape, θ)
727
730
end
728
731
gs = [(res1, x) ->grad_cons(res1, x, conshtapes[i]) for i in1:num_cons]
729
732
jaccfgs = [ForwardColorJacCache(gs[i], cache.u0; tag =typeof(T), colorvec = conshess_colors[i], sparsity = conshess_sparsity[i]) for i in1:num_cons]
0 commit comments