code: def derivativeX(self,x,y):
          '''
          Evaluate the first derivative with respect to x of the function at given
          state space points.
  
          Parameters
          ----------
          x : np.array
               First input values.
          y : np.array
               Second input values; should be of same shape as x.
  
          Returns
          -------
          dfdx_out : np.array
              First derivative of function with respect to the first input,
              evaluated at (x,y), of same shape as inputs.
          '''
          xShift = self.lowerBound(y)
          dfdx_out = self.func.derivativeX(x-xShift,y)
          return dfdx_ouf derivativeX(self,x,y):
          '''
          Evaluate the first derivative with respect to x of the function at given
          state space points.
  
          Parameters
          ----------
          x : np.array
               First input values.
          y : np.array
               Second input values; should be of same shape as x.
  
          Returns
          -------
          dfdx_out : np.array
              First derivative of function with respect to the first input,
              evaluated at (x,y), of same shape as inputs.
          '''
          xShift = self.lowerBound(y)
          dfdx_out = self.func.derivativeX(x-xShift,y)
          return dfdx_out
docs: Evaluate the first derivative with respect to x of the function at given
          state space points.
  
          Parameters
          ----------
          x : np.array
               First input values.
          y : np.array
               Second input values; should be of same shape as x.
  
          Returns
          -------
          dfdx_out : np.array
              First derivative of function with respect to the first input,
              evaluated at (x,y), of same shape as inputs.