docs: def eval_jacobian(self, *args, **kwargs):
          """
          :return: The jacobian matrix of the function.
          """
          Ans = variabletuple('Ans', self)
          return Ans(*self.finite_difference(*args, **kwargs))