def METHOD_NAME(m=_def_constellation_points, mod_code=_def_mod_code,
                      differential=_def_differential):
    """
    Creates a PSK constellation object.
    """
    k = log(m) / log(2.0)
    if (k != int(k)):
        raise Exception(
            'Number of constellation points must be a power of two.')
    points = [exp(2 * pi * (0 + 1j) * i / m) for i in range(0, m)]
    pre_diff_code, post_diff_code = create_encodings(mod_code, m, differential)
    if post_diff_code is not None:
        inverse_post_diff_code = mod_codes.invert_code(post_diff_code)
        points = [points[x] for x in inverse_post_diff_code]
    constellation = digital_python.constellation_psk(points, pre_diff_code, m)
    return constellation