parameters: (self)
return_statement: return self._gradient_solve
docstring: Parameters to use for the gradient pass when an implicit gradient is computed.
          If `None`, a duplicate of this `Solve` is created for the gradient solve.
  
          In any case, the gradient solve information will be stored in `gradient_solve.result`.
docstring_summary: Parameters to use for the gradient pass when an implicit gradient is computed.
          If `None`, a duplicate of this `Solve` is created for the gradient solve.
docstring_tokens: Parameters to use for the gradient pass when an implicit gradient is computed . If None a duplicate of this Solve is created for the gradient solve .
function: def gradient_solve(self) -> 'Solve[Y, X]':
          """
          Parameters to use for the gradient pass when an implicit gradient is computed.
          If `None`, a duplicate of this `Solve` is created for the gradient solve.
  
          In any case, the gradient solve information will be stored in `gradient_solve.result`.
          """
          if self._gradient_solve is None:
              self._gradient_solve = Solve(self.method, self.relative_tolerance, self.absolute_tolerance, self.max_iterations, None, self.suppress)
          return self._gradient_solve
function_tokens: def gradient_solve ( self ) -> 'Solve[Y, X]' : if self . _gradient_solve is None : self . _gradient_solve = Solve ( self . method , self . relative_tolerance , self . absolute_tolerance , self . max_iterations , None , self . suppress ) return self . _gradient_solve