def cross_products(self, vector_i, vector_j):
     cross_products = []
     for axis_i, axis_j in itertools.product(vector_i, vector_j):
         if axis_i is not axis_j:
             axis_cross = cross_product(axis_i, axis_j)
             if rho(axis_cross) > self.error:
                 axis_cross = normalize(axis_cross)
                 cross_products.append(axis_cross)
     return cross_products
 def check_array(self, axis, axis_of_rotations_i):
     for axis_i in axis_of_rotations_i:
         if rho(cross_product(axis, axis_i)) <= self.error:
             return False
     return True