Skip to content

Commit 96cf16f

Browse files
oschulzdevmotion
andauthored
Improve _with_ladj_on_mapped and it's rrule
Co-authored-by: David Widmann <[email protected]>
1 parent de037ca commit 96cf16f

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/with_ladj.jl

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,12 +79,14 @@ end
7979
@inline _get_y(y_with_ladj::NTuple{2,Any,}) = y_with_ladj[1]
8080
@inline _get_ladj(y_with_ladj::NTuple{2,Any}) = y_with_ladj[2]
8181

82-
_with_ladj_on_mapped(map_or_bc::Function, y_with_ladj::Tuple{Any,Real}) = y_with_ladj
82+
function _with_ladj_on_mapped(map_or_bc::F, y_with_ladj::Tuple{Any,Real}) where {F<:Union{typeof(map),typeof(broadcast)}}
83+
return y_with_ladj
84+
end
8385

8486
function _with_ladj_on_mapped(map_or_bc::F, y_with_ladj) where {F<:Union{typeof(map),typeof(broadcast)}}
8587
y = map_or_bc(first, y_with_ladj)
8688
ladj = sum(map_or_bc(last, y_with_ladj))
87-
#ladj = sum(_get_ladj, y_with_ladj)
89+
ladj = sum(Broadcast.instantiate(Broadcast.broadcasted(last, y_with_ladj)))
8890
(y, ladj)
8991
end
9092

0 commit comments

Comments
 (0)