INNER CODE UNIT · Python
JVPNode
HIPS/autograd · autograd/core.py:126
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]
except KeyError:
name = getattr(fun, "__name__", fun)
raise NotImplementedError(f"JVP of {name} wrt argnums {parent_argnums} not defined")
self.g = jvpmaker(parent_argnums, parent_gs, value, args, kwargs)
def initialize_root(self, g):
self.g = g
primitive_jvps = {}