Program bianchi_sim

program bianchi_sim

        ! Uses
    use s2_types_mod
    use s2_sky_mod, only: S2_SKY_FILE_TYPE_MAP, S2_SKY_FILE_TYPE_SKY
    use bianchi_sky_mod
    use bianchi_error_mod
    use pix_tools, only: nside2npix
    use extension, only: getArgument, nArguments
    use paramfile_io, only: paramfile_handle, parse_init, parse_int,     parse_real, parse_double, parse_lgt, parse_string, concatnl

        ! Calls
    call bianchi_error
    call bianchi_sky_apply_beam
    call bianchi_sky_compute_alm
    call bianchi_sky_compute_map
    call bianchi_sky_free
    call bianchi_sky_param_write
    call bianchi_sky_rotate
    call bianchi_sky_write
    call getArgument

        ! Variables
    character (len=S2_STRING_LEN) :: filename_param
    character (len=S2_STRING_LEN) :: description
    character (len=S2_STRING_LEN) :: line
    type (paramfile_handle) :: handle
    real (kind=s2_dp), parameter :: OMEGA0_LOWER = 0d0
    real (kind=s2_dp), parameter :: OMEGA0_UPPER = 1d0
    real (kind=s2_dp), parameter :: OMEGA0_DEFAULT = 0.5d0
    real (kind=s2_dp), parameter :: X_LOWER = 0.06d0
    real (kind=s2_dp), parameter :: X_UPPER = 10d0
    real (kind=s2_dp), parameter :: X_DEFAULT = 0.55d0
    real (kind=s2_dp), parameter :: ZE_LOWER = 1d2
    real (kind=s2_dp), parameter :: ZE_UPPER = 1d4
    real (kind=s2_dp), parameter :: ZE_DEFAULT = 1d3
    real (kind=s2_dp), parameter :: S12H_DEFAULT = 1d0
    real (kind=s2_dp), parameter :: S13H_DEFAULT = 1d0
    real (kind=s2_sp), parameter :: FWHM_DEFAULT = 330d0
    logical, parameter :: RHAND_DEFAULT = .true.
    character (len=*), parameter :: BIANCHI_SKY_QUAD_DIRECT_STR = 'direct'
    character (len=*), parameter :: BIANCHI_SKY_QUAD_QTRAP_STR = 'qtrap'
    character (len=*), parameter :: BIANCHI_SKY_QUAD_QSIMP_STR = 'qsimp'
    character (len=*), parameter :: INIT_TYPE_REAL = 'real'
    character (len=*), parameter :: INIT_TYPE_ALM = 'alm'
    character (len=*), parameter :: FILE_TYPE_MAP_STR = 'map'
    character (len=*), parameter :: FILE_TYPE_SKY_STR = 'sky'
    character (len=S2_STRING_LEN) :: filename_out
    character (len=S2_STRING_LEN) :: filetype_str = FILE_TYPE_MAP_STR
    integer :: filetype = S2_SKY_FILE_TYPE_MAP
    type (bianchi_sky) :: b
    real (kind=s2_dp) :: omega0
    real (kind=s2_dp) :: x
    real (kind=s2_dp) :: zE
    real (kind=s2_dp) :: s12H
    real (kind=s2_dp) :: s13H
    integer :: nside
    integer :: N
    integer :: quad_AB
    integer :: quad_IAB
    integer :: lmax
    real (kind=s2_sp) :: alpha = 0e0
    real (kind=s2_sp) :: beta = -90e0
    real (kind=s2_sp) :: gamma = 0e0
    logical :: rhand = .true.
    logical :: apply_beam = .false.
    real (kind=s2_sp) :: fwhm = FWHM_DEFAULT
    character (len=S2_STRING_LEN) :: quad_str = BIANCHI_SKY_QUAD_QSIMP_STR
    character (len=S2_STRING_LEN) :: init_type = INIT_TYPE_REAL

end program bianchi_sim
Simulate a Bianchi VII_h model of the CMB.

Author: J. D. McEwen (mcewen@mrao.cam.ac.uk)

Version: 0.1 June 2005


Description of Variables

filename_param

character (len=S2_STRING_LEN) :: filename_param

description

character (len=S2_STRING_LEN) :: description

line

character (len=S2_STRING_LEN) :: line

handle

type (paramfile_handle) :: handle

OMEGA0_LOWER

real (kind=s2_dp), parameter :: OMEGA0_LOWER = 0d0

OMEGA0_UPPER

real (kind=s2_dp), parameter :: OMEGA0_UPPER = 1d0

OMEGA0_DEFAULT

real (kind=s2_dp), parameter :: OMEGA0_DEFAULT = 0.5d0

X_LOWER

real (kind=s2_dp), parameter :: X_LOWER = 0.06d0

X_UPPER

real (kind=s2_dp), parameter :: X_UPPER = 10d0

X_DEFAULT

real (kind=s2_dp), parameter :: X_DEFAULT = 0.55d0

ZE_LOWER

real (kind=s2_dp), parameter :: ZE_LOWER = 1d2

ZE_UPPER

real (kind=s2_dp), parameter :: ZE_UPPER = 1d4

ZE_DEFAULT

real (kind=s2_dp), parameter :: ZE_DEFAULT = 1d3

S12H_DEFAULT

real (kind=s2_dp), parameter :: S12H_DEFAULT = 1d0

S13H_DEFAULT

real (kind=s2_dp), parameter :: S13H_DEFAULT = 1d0

FWHM_DEFAULT

real (kind=s2_sp), parameter :: FWHM_DEFAULT = 330d0

RHAND_DEFAULT

logical, parameter :: RHAND_DEFAULT = .true.

BIANCHI_SKY_QUAD_DIRECT_STR

character (len=*), parameter :: BIANCHI_SKY_QUAD_DIRECT_STR = 'direct'

BIANCHI_SKY_QUAD_QTRAP_STR

character (len=*), parameter :: BIANCHI_SKY_QUAD_QTRAP_STR = 'qtrap'

BIANCHI_SKY_QUAD_QSIMP_STR

character (len=*), parameter :: BIANCHI_SKY_QUAD_QSIMP_STR = 'qsimp'

INIT_TYPE_REAL

character (len=*), parameter :: INIT_TYPE_REAL = 'real'

INIT_TYPE_ALM

character (len=*), parameter :: INIT_TYPE_ALM = 'alm'

FILE_TYPE_MAP_STR

character (len=*), parameter :: FILE_TYPE_MAP_STR = 'map'

FILE_TYPE_SKY_STR

character (len=*), parameter :: FILE_TYPE_SKY_STR = 'sky'

filename_out

character (len=S2_STRING_LEN) :: filename_out

filetype_str

character (len=S2_STRING_LEN) :: filetype_str = FILE_TYPE_MAP_STR

filetype

integer :: filetype = S2_SKY_FILE_TYPE_MAP

b

type (bianchi_sky) :: b

omega0

real (kind=s2_dp) :: omega0

x

real (kind=s2_dp) :: x

zE

real (kind=s2_dp) :: zE

s12H

real (kind=s2_dp) :: s12H

s13H

real (kind=s2_dp) :: s13H

nside

integer :: nside

N

integer :: N

quad_AB

integer :: quad_AB

quad_IAB

integer :: quad_IAB

lmax

integer :: lmax

alpha

real (kind=s2_sp) :: alpha = 0e0

beta

real (kind=s2_sp) :: beta = -90e0

gamma

real (kind=s2_sp) :: gamma = 0e0

rhand

logical :: rhand = .true.

apply_beam

logical :: apply_beam = .false.

fwhm

real (kind=s2_sp) :: fwhm = FWHM_DEFAULT

quad_str

character (len=S2_STRING_LEN) :: quad_str = BIANCHI_SKY_QUAD_QSIMP_STR

init_type

character (len=S2_STRING_LEN) :: init_type = INIT_TYPE_REAL