INNER CODE UNIT · Python
jvp
HIPS/autograd · autograd/core.py:115
def jvp(g):
start_node = JVPNode.new_root(g)
end_value, end_node = trace(start_node, fun, x)
if end_node is None:
return end_value, vspace(end_value).zeros()
else:
return end_value, end_node.g
return jvp
class JVPNode(Node):
__slots__ = ["g"]
def __init__(self, value, fun, args, kwargs, parent_argnums, parents):
parent_gs = [parent.g for parent in parents]
try:
jvpmaker = primitive_jvps[fun]