def METHOD_NAME(name, path=None):
    """
    Process 3D data from a csv file. Assumes
    data is in the form of four columns and
    that all data points lie on a
    regular grid. The first column is assumed to
    be the 'slowest' changing variable and
    the third column the 'fastest' changing
    variable, which is the C convention for
    indexing multidimensional arrays (as opposed
    to the Fortran convention where the 'fastest'
    changing variable comes first).
    Parameters
    ----------
    name : str
        The name to be given to the function
    path : str
        The path to the file where the three
        dimensional data is stored.
    Returns
    -------
    formatted_data: tuple
        A tuple containing the name of the function
        and the data formatted correctly for use
        within three-dimensional interpolants.
    """
    filename, name = _process_name(name, path, ".csv")
    data = np.genfromtxt(filename, delimiter=',',skip_header=1)
    x1 = np.unique(data[:, 0])
    x2 = np.unique(data[:, 1])
    x3 = np.unique(data[:, 2])
    value = data[:, 3]
    x = (x1, x2, x3)
    value_data = value.reshape(len(x1), len(x2), len(x3), order="C")
    formatted_data = (name, (x, value_data))
    return formatted_data