docs: def get_rmse(self, data_x=None, data_y=None):
          """
          Get Root Mean Square Error using
          self.bestfit_func
  
          args:
              x_min: scalar, default=min(x)
                  minimum x value of the line
              x_max: scalar, default=max(x)
                  maximum x value of the line
              resolution: int, default=1000
                  how many steps between x_min and x_max
          """
          if data_x is None:
              data_x = np.array(self.args["x"])
          if data_y is None:
              data_y = np.array(self.args["y"])
          if len(data_x) != len(data_y):
              raise ValueError("Lengths of data_x and data_y are different")
          rmse_y = self.bestfit_func(data_x)
          return np.sqrt(np.mean((rmse_y - data_y) ** 2))