Different quaternion function