|
1 |
| -partial(x::TangentBundle, i) = partial(getfield(x, :tangent), i) |
2 |
| -partial(x::ExplicitTangent, i) = getfield(getfield(x, :partials), i) |
3 |
| -partial(x::TaylorTangent, i) = getfield(getfield(x, :coeffs), i) |
4 |
| -partial(x::UniformTangent, i) = getfield(x, :val) |
5 |
| -partial(x::AbstractZero, i) = x |
| 1 | +@inline partial(x::TangentBundle, i) = partial(getfield(x, :tangent), i) |
| 2 | +@inline partial(x::ExplicitTangent, i) = getfield(getfield(x, :partials), i) |
| 3 | +@inline partial(x::TaylorTangent, i) = getfield(getfield(x, :coeffs), i) |
| 4 | +@inline partial(x::UniformTangent, i) = getfield(x, :val) |
| 5 | +@inline partial(x::AbstractZero, i) = x |
6 | 6 |
|
7 | 7 |
|
8 |
| -primal(x::AbstractTangentBundle) = x.primal |
9 |
| -primal(z::ZeroTangent) = ZeroTangent() |
| 8 | +@inline primal(x::AbstractTangentBundle) = x.primal |
| 9 | +@inline primal(z::ZeroTangent) = ZeroTangent() |
10 | 10 |
|
11 |
| -first_partial(x) = partial(x, 1) |
| 11 | +@inline first_partial(x) = partial(x, 1) |
12 | 12 |
|
13 | 13 | shuffle_down(b::UniformBundle{N, B, U}) where {N, B, U} =
|
14 | 14 | UniformBundle{N-1}(UniformBundle{1, B}(b.primal, b.tangent.val),
|
|
0 commit comments