def _announce_theta(theta):
    """
    Announce theta values to the log.
    """

    c = 299792.458 # km/s
    is_a_redshift = lambda p: p == "z" or p[:2] == "z_"

    for parameter, value in theta.items():
        try:
            value[0]
        except (IndexError, TypeError):
            message = "\t{0}: {1:.3f}".format(parameter, value)
            if is_a_redshift(parameter):
                message += " [{0:.1f} km/s]".format(value * c)
        else:
            # (MAP, u_pos, u_neg)
            message = "\t{0}: {1:.3f} ({2:+.3f}, {3:+.3f})".format(parameter,
                value[0], value[1], value[2])
            if is_a_redshift(parameter):
                message += " [{0:.1f} ({1:+.1f}, {2:+.1f}) km/s]".format(
                    value[0] * c, value[1] * c, value[2] * c)
        logger.info(message)
Announce theta values to the log.