def strf2(val):
    """Formate une valeur float avec mantisse de taille raisonnable"""
    if val == 0.0:
        return '0.0'
    elif abs(val) > 1.0:
        strg = '{0:.2f}'.format(val)
    elif abs(val) > 0.01:
        strg = '{0:.4f}'.format(val)
        if strg[-2:] == '00':
            return strg[:-2]
        elif strg[-1:] == '0':
            return strg[:-1]
        else:
            return strg
    else:
        return '{0:.7e}'.format(val)
    if strg[-3:] == '000':
        return strg[:-3]
    elif strg[-2:] == '00':
        return strg[:-2]
    else:
        return strg
