def denorm_sin_cos(norm_sin_cos):
    """ Undo normalization step of `encode_theta_np()`


        This converts values from the range (0, 1) to (-1, 1)
        by subtracting 0.5 and multiplying by 2.0.
        This function does not take any steps to ensure
        the input obeys the law:

            sin ** 2 + cos ** 2 == 1

        Since the values may have been generated by a neural network
        it is important to fix this w.r.t. the provided values.

    # Arguments

        norm_sin2_cos2: normalized sin(2*theta) cos(2*theta)

    # Returns

        return actual sin(theta) cos(theta)
    """
    return (norm_sin_cos - 0.5) * 2.0