In addition, the theta_x and theta_y angles have also been swapped so that the new constraint of
0 <= theta_x <= theta_y <= pi built into the analysis is satisfied.
The higher precision is because the number structures in the distribution is now 20 million rather
than 1 million and the numpy.float128 data averaging has been used. The algorithm for finding
suitable random domain positions within the motional limits has been changed as well by extracting
the theta and phi tilt angles from the random rotation, dropping the torsion angle sigma, and
reconstructing the rotation from just the tilt angles. This increases the speed of the data
generation script by minimally 5 orders of magnitude.