def predict(gap, data):
    """
    Predict energies and forces for a set of data

    :param gap: (gaptrain.gap.GAP | gaptrain.gap.AdditiveGAP)
    :param data: (gaptrain.data.Data)
    """

    # Run GAP in parallel to predict energies and forces
    predictions = data.copy()
    predictions.name += '_pred'

    predictions.parallel_gap(gap)

    gap.plot_correlation(data, predictions, rel_energies=True)
    predictions.save(override=True)

    return predictions