BIANCHI package documentation

Jason McEwen

This package provides functionality to support the simulation of Bianchi Type VIIh induced temperature fluctuations in CMB maps of a universe with shear and rotation. The implementation is based on the solutions to the Bianchi models derived by Barrow et al. (1985), which do not incorporate any dark energy component. Functionality is provided to compute the induced fluctuations on the sphere directly in either real or harmonic space. By default unitless Delta_T / T maps are produced, unless the MILLIK option is specified at compilation, in which case the maps are produced in units of mK.

For a description of the equations implemented to perform the Bianchi simulations see the Appendix of our paper:

J. D. McEwen, M. P. Hobson, A. N. Lasenby. and D. J. Mortlock. Non-Gaussianity detections in the Bianchi VIIh corrected WMAP 1-year data made with directional spherical wavelets. Mon. Not. Roy. Astron. Soc., 369(4):1858-1868, 2006.

The library design is based on object-oriented principles and is implemented in Fortran 90. Generally one must instantiate a class object using the corresponding init routines. The instatiated object should be freed once it is no longer required with the corresponding free routine (this deallocates all memory associated with the object).

For further details see the README.txt file.


Installation

The BIANCHI package requires the S2, HEALPix and CFITSIO packages. Please note that all BIANCHI code is written in Fortran 90 and a suitable Fortran compiler will be required.

Compiling library

Before compiling you may need to edit the makefile to specify your compiler and to link with the appropriate libraries. Once you have set the makefile up for your system then the BIANCHI library may be compilied by running:
>> make lib
By default simulations are produced as unitless Delta_T / T contributions. To produce maps in units of milli Kelvins the preprocessor variable MILLIK must be set in the makefile.

For details on how to use the BIANCHI library code see the documentation below.

Compiling utility programs

The BIANCHI utility programs may be compiled by running:

>> make prog
For details on how to use the BIANCHI utility programs see the documentation
below.

Testing

To test the BIANCHI installation run

>> bin/bianchi_sim param.par
using the param.par file provided. This should create an output sky map that is identical to one of the files in the test directory (which file depends on whether you use Delta_T /T or milli Kelvin units).

Documentation

By default, the BIANCHI code ships with only this single documentation page. The remainder of the documentation is automatically generated from the source code using f90doc. Please ensure that you have f90doc installed in order to generate this documentation. Once f90doc is installed the documentation may be generated by running:

>> make docs

Cleaning up

To clean up your version of the BIANCHI code and return all code to its original state run:
>> make clean
To remove all documentation, except the front page (i.e. this file), run:
>> make cleandocs

Library classes

An overview of the classes that comprise the BIANCHI library is given here. Please click on the link for each class for detailed documentation.

bianchi_sky_mod: Provides functionality to simulate a Bianchi VII_h model of the CMB. Uses the s2_sky module to create healpix sky maps.

bianchi_error_mod: Functionality to handle errors that may occur in the bianchi library. Public bianchi error codes are defined, with corresponding private error comments and default halt execution status.

bianchi_plm1table_mod: Lookup table for associated Legendre function for case where m=1, N_theta_grid=100 and lmax<64.


Utility programs

Utility programs based on the BIANCHI library are listed here. Please click on the link for the program for detailed documentation.

bianchi_sim: Simulate a Bianchi VII_h model of the CMB. This program may be run interactively (by running > bianchi_sim), or with an input parameter file (by running > bianchi_sim parameters.par).


Support

For support or to report any bugs please contact Jason McEwen.

Reference

The BIANCHI package was written originally to determine whether recent evidence for non-Gaussianity in WMAP CMB observations were due to Bianchi contributions. If you use the code to produce published works please reference the download site http://www.jasonmcewen.org and our related paper:
J. D. McEwen, M. P. Hobson, A. N. Lasenby. and D. J. Mortlock. Non-Gaussianity detections in the Bianchi VIIh corrected WMAP 1-year data made with directional spherical wavelets. Mon. Not. Roy. Astron. Soc., 369(4):1858-1868, 2006.

Version

Author: J. D. McEwen

Version: 1.1 - July 2008

Version History


License

Bianchi code to simulate induced temperature fluctuations in CMB maps
Copyright (C) 2005 Jason McEwen

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details (LICENSE.txt).

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


Acknowledgements

JDM would like to thank Daniel Mortlock, Mike Hobson and Anthony Lasenby for discussions on Bianchi models and Daniel Mortlock also for discussions on the implementation of the library.

This documentation has been generated largely by f90doc, with some minor modifications.


Last modified: 1 July 2008