(quaternion)
return q / numpy.dot(q, q)
Return inverse of quaternion.

    >>> q0 = random_quaternion()
    >>> q1 = quaternion_inverse(q0)
    >>> numpy.allclose(quaternion_multiply(q0, q1), [1, 0, 0, 0])
    True
Return inverse of quaternion.
Return inverse of quaternion .
def quaternion_inverse(quaternion):
    """Return inverse of quaternion.

    >>> q0 = random_quaternion()
    >>> q1 = quaternion_inverse(q0)
    >>> numpy.allclose(quaternion_multiply(q0, q1), [1, 0, 0, 0])
    True

    """
    q = numpy.array(quaternion, dtype=numpy.float64, copy=True)
    numpy.negative(q[1:], q[1:])
    return q / numpy.dot(q, q)
def quaternion_inverse ( quaternion ) : q = numpy . array ( quaternion , dtype = numpy . float64 , copy = True ) numpy . negative ( q [ 1 : ] , q [ 1 : ] ) return q / numpy . dot ( q , q )