DART-Ray
Functions/Subroutines | Variables
healpix_routines Module Reference

Contains slightly modified subroutines from the Healpix package. More...

Functions/Subroutines

subroutine pix2ang_nest (nside, ipix, theta, phi)
 renders theta and phi coordinates of the nominal pixel center for the pixel number ipix (NESTED scheme) given the map resolution parameter nside More...
 
subroutine mk_pix2xy ()
 constructs the array giving x and y in the face from pixel number for the nested (quad-cube like) ordering of pixels the bits corresponding to x and y are interleaved in the pixel number one breaks up the pixel number by even and odd bits More...
 
integer(kind=int64) function nside2npix (nside)
 given nside, returns npix such that npix = 12*nside^2 nside should be a power of 2 smaller than ns_max if not, -1 is returned. More...
 
character(len=lch) function string_i (arg, format)
 
subroutine ang2pix_nest (nside, theta, phi, ipix)
 renders the pixel number ipix (NESTED scheme) for a pixel which contains a point on a sphere at coordinates theta and phi, given the map resolution parameter nside. More...
 
subroutine mk_xy2pix1 ()
 
subroutine neighbours_nest (nside, ipix, n, nneigh)
 Returns list n(8) of neighbours of pixel ipix (in NESTED scheme) the neighbours are ordered in the following way: First pixel is the one to the south (the one west of the south direction is taken for the pixels which don't have a southern neighbour). From then on the neighbours are ordered in the clockwise direction about the pixel with number ipix. More...
 
subroutine xy2pix_nest (nside, ix_in, iy_in, face_num, ipix)
 
subroutine pix2xy_nest (nside, ipf_in, ix, iy)
 gives the x, y coords in a face from pixel number within the face (NESTED) More...
 
integer(int32) function swaplsbmsb (i)
 Returns i with even and odd bit positions interchanged. More...
 
integer(int32) function invmsb (i)
 Returns i with even (0,2,4,...) bits inverted. More...
 
integer(int32) function invlsb (i)
 Returns i with odd (1,3,5,...) bits inverted. More...
 

Variables

integer(kind=int32), dimension(0:1023), save, private pix2x =0
 
integer(kind=int32), dimension(0:1023), save, private pix2y =0
 
integer(kind=int32), dimension(0:127), save, private x2pix1 =0
 
integer(kind=int32), dimension(0:127), save, private y2pix1 =0
 
character(len=3000) string
 
integer, parameter, private lch =48
 
integer(kind=int32), parameter, private ns_max4 =8192
 
integer(kind=int32), parameter, private ns_max =ns_max4
 
integer(int32), parameter oddbits =89478485
 
integer(int32), parameter evenbits =178956970
 
real(kind=real64), parameter, private halfpi =asin(1.)
 
real(kind=real64), parameter, private pi =2*halfpi
 
real(kind=real64), parameter, private twopi = 2*pi
 
real(kind=real64), parameter, private twothird =2./3.
 

Detailed Description

Contains slightly modified subroutines from the Healpix package.

Function/Subroutine Documentation

subroutine healpix_routines::ang2pix_nest ( integer(kind=int32), intent(in)  nside,
real(kind=real64), intent(in)  theta,
real(kind=real64), intent(in)  phi,
integer(kind=int32), intent(out)  ipix 
)

renders the pixel number ipix (NESTED scheme) for a pixel which contains a point on a sphere at coordinates theta and phi, given the map resolution parameter nside.

Here is the call graph for this function:

Here is the caller graph for this function:

integer(int32) function healpix_routines::invlsb ( integer(int32), intent(in)  i)

Returns i with odd (1,3,5,...) bits inverted.

Here is the caller graph for this function:

integer(int32) function healpix_routines::invmsb ( integer(int32), intent(in)  i)

Returns i with even (0,2,4,...) bits inverted.

Here is the caller graph for this function:

subroutine healpix_routines::mk_pix2xy ( )

constructs the array giving x and y in the face from pixel number for the nested (quad-cube like) ordering of pixels the bits corresponding to x and y are interleaved in the pixel number one breaks up the pixel number by even and odd bits

Here is the caller graph for this function:

subroutine healpix_routines::mk_xy2pix1 ( )

Here is the caller graph for this function:

subroutine healpix_routines::neighbours_nest ( integer(kind=int32), intent(in)  nside,
integer(kind=int32), intent(in)  ipix,
integer(kind=int32), dimension(1:), intent(out)  n,
integer(kind=int32), intent(out)  nneigh 
)

Returns list n(8) of neighbours of pixel ipix (in NESTED scheme) the neighbours are ordered in the following way: First pixel is the one to the south (the one west of the south direction is taken for the pixels which don't have a southern neighbour). From then on the neighbours are ordered in the clockwise direction about the pixel with number ipix.

nneigh is the number of neighbours (mostly 8, 8 pixels have 7 neighbours)

Here is the call graph for this function:

integer(kind=int64) function healpix_routines::nside2npix ( integer(kind=int32), intent(in)  nside)

given nside, returns npix such that npix = 12*nside^2 nside should be a power of 2 smaller than ns_max if not, -1 is returned.

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine healpix_routines::pix2ang_nest ( integer(kind=int32), intent(in)  nside,
integer(kind=int32), intent(in)  ipix,
real(kind=real64), intent(out)  theta,
real(kind=real64), intent(out)  phi 
)

renders theta and phi coordinates of the nominal pixel center for the pixel number ipix (NESTED scheme) given the map resolution parameter nside

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine healpix_routines::pix2xy_nest ( integer(kind=int32), intent(in)  nside,
integer(kind=int32), intent(in)  ipf_in,
integer(kind=int32), intent(out)  ix,
integer(kind=int32), intent(out)  iy 
)

gives the x, y coords in a face from pixel number within the face (NESTED)

Here is the call graph for this function:

Here is the caller graph for this function:

character(len=lch) function healpix_routines::string_i ( integer(int32)  arg,
character(len=*), optional  format 
)

Here is the caller graph for this function:

integer(int32) function healpix_routines::swaplsbmsb ( integer(int32), intent(in)  i)

Returns i with even and odd bit positions interchanged.

Here is the caller graph for this function:

subroutine healpix_routines::xy2pix_nest ( integer(kind=int32), intent(in)  nside,
integer(kind=int32), intent(in)  ix_in,
integer(kind=int32), intent(in)  iy_in,
integer(kind=int32), intent(in)  face_num,
integer(kind=int32), intent(out)  ipix 
)

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

integer(int32), parameter healpix_routines::evenbits =178956970
real(kind=real64), parameter, private healpix_routines::halfpi =asin(1.)
private
integer, parameter, private healpix_routines::lch =48
private
integer(kind=int32), parameter, private healpix_routines::ns_max =ns_max4
private
integer(kind=int32), parameter, private healpix_routines::ns_max4 =8192
private
integer(int32), parameter healpix_routines::oddbits =89478485
real(kind=real64), parameter, private healpix_routines::pi =2*halfpi
private
integer(kind=int32), dimension(0:1023), save, private healpix_routines::pix2x =0
private
integer(kind=int32), dimension(0:1023), save, private healpix_routines::pix2y =0
private
character(len=3000) healpix_routines::string
real(kind=real64), parameter, private healpix_routines::twopi = 2*pi
private
real(kind=real64), parameter, private healpix_routines::twothird =2./3.
private
integer(kind=int32), dimension(0:127), save, private healpix_routines::x2pix1 =0
private
integer(kind=int32), dimension(0:127), save, private healpix_routines::y2pix1 =0
private