def pdbBoxString(box): # Box vectors u, v, w = box[0:3], box[3:6], box[6:9] # Box vector lengths nu, nv, nw = [math.sqrt(FUNC.norm2(i)) for i in (u, v, w)] # Box vector angles alpha = nv*nw == 0 and 90 or math.acos(FUNC.cos_angle(v, w))/d2r beta = nu*nw == 0 and 90 or math.acos(FUNC.cos_angle(u, w))/d2r gamma = nu*nv == 0 and 90 or math.acos(FUNC.cos_angle(u, v))/d2r return pdbBoxLine % (10*FUNC.norm(u), 10*FUNC.norm(v), 10*FUNC.norm(w), alpha, beta, gamma)