def quartz(piezometer=None):
    """ Data base for quartz piezometers. It returns the material parameter,
    the exponent and a warn with the "average" grain size measure to use.

    Parameter
    ---------
    piezometer : string or None
        the piezometric relation

    References
    ----------
    | Cross et al. (2017) https://doi.org/10.1002/2017GL073836
    | Holyoke and Kronenberg (2010) https://doi.org/10.1016/j.tecto.2010.08.001
    | Shimizu (2008) https://doi.org/10.1016/j.jsg.2008.03.004
    | Stipp and Tullis (2003)  https://doi.org/10.1029/2003GL018444
    | Twiss (1977) https://www.doi.org/10.1007/BF01637105

    Assumptions
    -----------
    - The piezometer relations of Stipp and Tullis (2003), Holyoke and Kronenberg
    (2010) and Cross et al. (2007) requires entering the grain size as the square
    root mean apparent grain size calculated using equivalent circular diameters
    with no stereological correction.

    - The piezometer relation of Shimizu (2008) requires entering the grain size
    as the logarithmic median apparent grain size calculated using equivalent
    circular diameters with no stereological correction.

    - The piezometer of Twiss (1977) requires entering the arithmetic mean apparent
    grain size calculated from equivalent circular diameters (ECD) with no stereological
    correction. The function will convert this value to mean linear intercept (LI)
    grain size using the De Hoff and Rhines (1968) empirical relation and assuming
    that LI was originally multiplied by 1.5 (correction factor). Then the final
    relation is: LI = (1.5 / sqrt(4/pi)) * ECD
    """

    if piezometer is None:
        print('Available piezometers:')
        print("'Cross'")
        print("'Cross_hr'")
        print("'Holyoke'")
        print("'Holyoke_BLG'")
        print("'Shimizu'")
        print("'Stipp_Tullis'")
        print("'Stipp_Tullis_BLG'")
        print("'Twiss'")
        return None

    elif piezometer == 'Stipp_Tullis':
        B, m = 669.0, 0.79
        warn = 'Ensure that you entered the apparent grain size as the root mean square (RMS)'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Stipp_Tullis_BLG':
        B, m = 1264.1, 1.64
        warn = 'Ensure that you entered the apparent grain size as the root mean square (RMS)'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Holyoke':
        B, m = 490.3, 0.79
        warn = 'Ensure that you entered the apparent grain size as the root mean square (RMS)'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Holyoke_BLG':
        B, m = 883.9, 1.85
        warn = 'Ensure that you entered the apparent grain size as the root mean square (RMS)'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Cross':
        B, m = 593.0, 0.71
        warn = 'Ensure that you entered the apparent grain size as the root mean square (RMS)'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Cross_hr':
        B, m = 450.9, 0.63
        warn = 'Ensure that you entered the apparent grain size as the root mean square (RMS)'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Shimizu':
        B, m = 352, 0.8
        warn = 'Ensure that you entered the apparent grain size as the median in log(e) scale'
        linear_interceps = False
        correction_factor = False

    elif piezometer == 'Twiss':
        B, m = 550, 0.68
        warn = 'Ensure that you entered the apparent grain size as the arithmetic mean grain size'
        linear_interceps = True
        correction_factor = 1.5

    else:
        quartz()
        raise ValueError('Piezometer name misspelled. Please choose between valid piezometers')

    return B, m, warn, linear_interceps, correction_factor