code: def _value_and_jacobian_op(fun, x):
      # same as autograd.jacobian, but also returning ans
      vjp, ans = _autograd.differential_operators._make_vjp(fun, x)
      ans_vspace = _autograd.differential_operators.vspace(ans)
      jacobian_shape = (
          ans_vspace.shape
          + _autograd.differential_operators.vspace(x).shape
      )
      grads = map(vjp, ans_vspace.standard_basis())
      return ans, _np.reshape(_np.stack(grads), jacobian_shape)
  
file_path: geomstats/geomstats/_backend/autograd/autodiff.py
imports: import autograd
  import autograd.numpy
  from autograd import jacobian
label_desc: Use image node_id 5 for calling a global function with example usage: _value_and_jacobian_op(fun, x) and returns: ans,  _np