Wiki

Clone wiki

vide_public / Preparing & Running

[under construction]

This page will guide you through testing your installation with two example runs, preparing data for void analysis and run the void finder on your own data.

1) Test your installation


To test the installation, we will run an example for a void catalogue based on observations and one based on simulations.

Observation run test

cd python_tools/void_pipeline/datasets/
python3 -m void_pipeline example_observation.py

Simulation run test

Using simulations requires a preliminary step, consisting in using the script vide_prepare_simulation which is installed during the installation procedure. The script generates mock catalog and a default pipeline to handle simulations. An example of the complete procedure is given here-below:

mkdir $HOME/my_vide_test
cp python_tools/void_pipeline/datasets/example_simulation.py $HOME/my_vide_test
mkdir $HOME/my_vide_test/examples
cp examples/example_simulation_z0.0.dat $HOME/my_vide_test/examples
cd $HOME/my_vide_test
vide_prepare_simulation   --all --parm example_simulation.py
python3 -m void_pipeline example_simulation/sim_ss1.0.py

The example copies the required data in a separate directory. Then, we execute the vide_prepare_simulation script to generate the auxiliary pipeline. The void_pipeline is finally executed on this generated script.

The tests above should produce two example void catalogs in the following folders: /vide_public/examples/example_observation

$HOME/my_vide_test/examples/example_simulation

2) Prepare data for void analysis


Simulations

Simulation data needs to be in one of the supported formats: Gadget Type 1, SDF, RAMSES, ASCII.

To run VIDE on your own simulation you will need to modify the example_simulation.py file and rerun the steps above, that is:

vide_prepare_simulation   --all --parm example_simulation.py
python3 -m void_pipeline example_simulation/sim_ss1.0.py
In the file you can describe simulation parameters, directory for outputs, redshift slices, subvolumes, preferred subsampling or HOD mocks, etc. Modifying this file will allow to perform subsampling on input particle files, run the HOD code on input halo catalogs, and/or prepare halo catalogs if required. See the example_simulation.py dataset for more information for all the parameters.

Some notes:

  • If your input particle files are already in the desired format and subsampling level, then you only need to run with the --scripts option (making sure doSubSamplingInPrep=False).

  • Doing subsampling during preparation (see doSubSamplingInPrep=True in dataset file) is only available for SDF and multidark formats. However, subsampling can be done automatically in the void-finding code (in the generateCatalog stage) for any kind of file if doSubSamplingInPrep=False. Subsampling during preparation is faster becuse it only needs to be done once.

  • To analyze a Gadget simulation with no subsampling, set these parameters (these are the defaults):

    • subSamples = [1.0]
    • subSamplingMode = "relative"
    • doSubSamplingInPrep = False
  • While not fully integrated into the pipeline, the fit_hod code in python_tools is able to generate HOD parameters from a given simulation and halo catalog. See the files in that directory for more information.

prepareInputs will produce a pipeline script for each subsampling factor or HOD mock you choose. It will place your pipeline scripts in the directory you chose in the dataset file. Dark matter particle scripts will have ss in them.

If you choose doPecVel = True, there will be two sets of script files: one with and one without peculiar velocities.

If you have multiple redshift particle files, and choose multiple slices and/or subdivisions, they will be packaged in the same pipeline script.

The example simulation file can be run as follows:

python3 -m void_pipeline [name of pipeline script]
The outputs will be located in examples/example_simulation/sim_ss1.0/sample_sim_ss1.0_z0.00_d00/.

Observations

For observations, you skip the vide_prepare_simulation stage and go directly to void finding with your dataset file. Here, you define your data samples directly.

Your galaxy catalogs needs to be in plain ASCII with the following columns:

  • 1: Index
  • 2: Not Used
  • 3: Not Used
  • 4: RA
  • 5: Dec
  • 6: z (in km/sec)
  • 7: Magnitude
  • 8: Not Used

You will also need a survey mask file in HEALPix format. The Python script python_tools/misc_tools/figureOutMask.py can construct a rudimentary mask from a list of galaxy positions in the above format.

Optionally, you can set a radial selection function file with two columns: redshift in km/s and completeness. Otherwise, your sample is assumed to be volume limited. If your sample extends outside the redshift range of your selection function, a default weighting of 1.0 will be applied in those regions.

Void Finding

Run python3 -m void_pipeline example_observation.py. This will run

  • generateMock for building samples and slices
  • zobov for finding voids
  • pruneVoids for cleaning voids near boundaries and building the hierarchy

At the end of it, you should have a void catalog for each redshift, slice, and subdivision.

Check the logfiles (found in your logDir) for any error messages.

Updated