parameters: (self, right)
return_statement: return Quaternion(self[3] * right[3] - self.vec.dot(right.vec),
                            self[3] * right.vec + right[3] * self.vec +
                            self.vec.cross(right.vec))
docstring: quaternion multiplication
docstring_summary: quaternion multiplication
docstring_tokens: quaternion multiplication
function: def __mul__(self, right):
          """ quaternion multiplication """
          return Quaternion(self[3] * right[3] - self.vec.dot(right.vec),
                            self[3] * right.vec + right[3] * self.vec +
                            self.vec.cross(right.vec))
function_tokens: def __mul__ ( self , right ) : return Quaternion ( self [ 3 ] * right [ 3 ] - self . vec . dot ( right . vec ) , self [ 3 ] * right . vec + right [ 3 ] * self . vec + self . vec . cross ( right . vec ) )