def METHOD_NAME(self, model, f, f2, stocks, arguments,
                                integration_frame, ts_log, ts_rmse):
    """
    Test the root-mean-square error (RMSE).
    RMSE = SQRT(MEAN((y_i-y(t_0+h*i))^2))
    Integrates the given model with different time steps and checks
    that the RMSE decreases when the time step decreases.
    Parameter
    ---------
    model: pysd.py_backend.model.Model
        The model to integrate.
    f: tuple of functions
        The functions of the analytical solution of each stock.
    f2: tuple of functions
        Not used.
    stocks: tuple of strings
        The name of the stocks.
    arguments: tuple of strings
        The neccessary argument names to evaluate f's and f2's.
        Note that all the functions must take the same arguments
        and in the same order.
    integration_frame: tuple
        Not used.
    ts_log: tuple
        Not used.
    ts_rmse: iterable
        Time step to compute the root mean square error over the
        whole integration. It shopuld be sorted from biggest to
        smallest.
    """
    # Get model values before making any change
    model_values = [model[var] for var in arguments]
    rmse = []
    for h in ts_rmse:
        # Reload model
        model.reload()
        # Run the model from (t0, x0s) to t0+h
        x_euler = model.run(
            time_step=h,
            saveper=h,
            return_columns=stocks
        )
        # Expected values
        expected_values = pd.DataFrame(
            index=x_euler.index,
            data={
                stock: func(x_euler.index, *model_values)
                for stock, func in zip(stocks, f)
            }
        )
        # Compute the RMSE for each stock
        rmse.append(np.sqrt(((x_euler-expected_values)**2).mean()))
    # Assert that the RMSE decreases for all stocks while
    # decreasing the time step
    assert np.all(np.diff(rmse, axis=0) < 0)