@staticmethod
def _compute_grade(formula, i, Q, cumul, best, acquired):
    """Compute the grade of a sheet according to the formula and the chosen I.
        
        Formula contains both Q and I."""
    i = int(i)
    if i == 0:
        I = cumul
    elif i == 1:
        I = best
    else:
        I = acquired
    Q /= 10
    I /= 100
    formula = '10 * (%s)' % formula
    return round(eval(formula.replace('^', '**')), 2)
