Example of FLASK's 3D space discretization. Flask is a C++ code, parallelized with OpenMP, used to generate lognormal (or Gaussian) realisations of multiple correlated fields on spherical shells. Its main goal is to generate fast full-sky simulations of cosmological large-scale structure observables such as multiple matter density tracers (galaxies, quasars, dark matter haloes), CMB temperature anisotropies and weak lensing convergence and shear fields. The mutiple fields can be generated tomographically in an arbitrary number of redshift slices and all their statistical properties (including cross-correlations) are determined by the angular power spectra supplied as input and the multivariate lognormal (or Gaussian) distribution assumed for the fields. Effects like redshift space distortions, doppler distortions, magnification biases, evolution and intrinsic aligments can be introduced in the simulations via the input power spectra which must be supplied by the user. Some public codes that can compute them are CAMB sources and CLASS.

The tomographic approach used by FLASK slices the three dimensional space into spherical shells (redshift slices), each one discretized by Healpix maps. After generating the fields, FLASK can apply selection functions and noise to them. The output can be in the form of a source catalogue and/or Healpix maps, among others. We show below a simulation of the WISE survey as an example of a possible output.

Simulation of the WISE survey.


Currently maintained code

Flask is currently maintained and updated by Jayesh Bhatt at UCL, and you can download the code as a zip file or clone the github repository.

Original code

You can download FLASK's original code (last updated on March 2020) here, or clone it from the github repository.


The inner workings of FLASK are described in the Xavier et al. 2016 paper (Monthly Notices of the Royal Astronomical Society, Vol. 459, p. 3693); in case you use FLASK for your publications, please acknowledge it by citing this paper. More information about installing, compiling and using FLASK can be found in the flask manual in the github repository.

Mailing List

To get information about code updates and bugs, send an email to hsxavier@if.usp.br requesting to be added to FLASK's mailing list.


Please report any bugs and direct any questions to Jayesh S. Bhatt at bhatt@physics.org or to Henrique S. Xavier at hsxavier@if.usp.br.