def get_colnames(main_colnames=None, error_colnames=None, corr_colnames=None,
                 cartesian=True):
    """
    Utility function for generating standard column names
    """
    if main_colnames is None:
        if cartesian:
            # main_colnames = [el for el in 'XYZUVW']
            main_colnames = ['X', 'Y', 'Z', 'U', 'V', 'W']
        else:       # provide astrometric column names
            main_colnames = [
                'ra', 'dec', 'parallax', 'pmra', 'pmdec', 'radial_velocity',
            ]
    if error_colnames is None:
        error_colnames = [el+'_error' for el in main_colnames]
    if corr_colnames is None:
        corr_colnames = []
        for i, colname1 in enumerate(main_colnames):
            for colname2 in main_colnames[i + 1:]:
                corr_colnames.append('{}_{}_corr'.format(
                        colname1, colname2
                ))
    return main_colnames, error_colnames, corr_colnames