<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 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))