pymc.ode.DifferentialEquation.pushforward#
- DifferentialEquation.pushforward(inputs, outputs, tangents)#
Construct a graph for the Jacobian-vector product (pushforward).
Given a function \(f\) implemented by this Op with inputs \(x\) and outputs \(y = f(x)\), the pushforward computes \(\dot{y} = J \dot{x}\) where \(J\) is the Jacobian \(\frac{\partial f}{\partial x}\) and \(\dot{x}\) are the tangent vectors.
This is the core method for forward-mode automatic differentiation.
If an output is not differentiable with respect to any input, return a variable of type DisconnectedType for that output. Unlike the legacy R_op method, pushforward must never use
Noneto indicate disconnected outputs.- Parameters:
- inputs
Sequence[Variable] The input variables of the Apply node using this Op.
- outputs
Sequence[Variable] The output variables of the Apply node using this Op.
- tangents
Sequence[Variable] The tangent vectors. One per input. A variable of DisconnectedType indicates that the corresponding input is not being differentiated.
- inputs
- Returns:
- output_tangents
listofVariable The tangent vectors w.r.t. each output. One Variable per output.
- output_tangents