The code that implements the method is iye_et_al_method.cpp. Since the simulation requires substantial computing time, it is written in C.
To compile the code: g++ -o iye_et_al_method iye_et_al_method.cpp
The data used in (Iye et al 2021) is galaxies.csv. That is the exact same 'clean' dataset used in (Iye et al 2021).
To run the code on the data: ./iye_et_al_method galaxies.csv
The program will print the results in the standard output. The program takes several hours to run, and could be more than a day, depends on the processor. To make it run faster you can increase the value of the variable increment, or reduce the number of simulations (line 162) from 2000 to a smaller number.
The output of applying the code to the data is in the file iye_et_al_results.csv
The axis has statistical significance of 2.14 sigma. That is much higher than the 1.29 sigma reported by Iye et al (2021) for the exact same analysis and exact same data.
A simpler and much faster analysis is to separate the data into two hemispheres by the RA of the galaxies. One hemisphere at (70 < RA < 250) and the opposite hemisphere is (70>RA or RA>250). All values are in degrees. Simple binomial distribution will show that the distribution is not random.
The results are summarized in the following table.
>250 U <70
That shows that the sky can be separated into two asymmetric hemispheres. The asymmetry in one of them is statistically significant, even after applying a Bonferonni correction (P=~0.01).
The following code executes a Monte Carlo simulation of the distribution to test the frequency of such distribution or stronger to occur in any possible two opposite hemispheres (separated by RA) when the spin directions of the galaxies are random. distribution_simulation.cpp
Compile: g++ -o distribution_simulation distribution_simulation.cpp
Run: ./distribution_simulation galaxies.csv
In 100,000 runs it will happen about 70 times (P=~0.007).
Important note: The dataset used in (Iye et al., 2021) was taken from (Shamir, 2017, PASA). That paper does not make any attempt to show any kind of axis in that dataset. No claim for an axis in that dataset was made in any of my other papers. All of my papers cited in (Iye et al., 2021) as papers that showed a dipole axis used other datasets, and not the one used in (Iye et al., 2021).
The dataset used in (Shamir, 2017, PASA) is a dataset of bright objects (i<18) and therefore, on average, lower redshift. Previous work showed lower asymmetry in lower redshift ranges. The dataset also uses a minimum of 10 peaks in the radial intensity plot to make an annotation, rather than 30 peaks in the papers showing a dipole axis. Still, the distribution in the dataset is not random, as shown here.