pix2xxx,ang2xxx,vec2xxx, nest2ring,ring2nest


The Fortran90 module pix_tools contains some subroutines to convert between pixel number in the HEALPix map and $(\theta,\phi) $ or (x,y,z) coordinates on the sphere. Some of these routines are listed here.

Location in HEALPix directory tree: src/f90/mod/pix_tools.F90 


ARGUMENTS

name & dimensionality kind in/out description
       
nside I4B IN ${N_{\rm side}}$ parameter for the HEALPix map.
ipnest I4B/ I8B -- pixel identification number in NESTED scheme over the range {0, ${N_{\rm pix}}-1$}.
ipring I4B/ I8B -- pixel identification number in RING scheme over the range {0, ${N_{\rm pix}}-1$}.
theta DP -- colatitude in radians measured southward from north pole in {0,$\pi$}.
phi DP -- longitude in radians, measured eastward in $[0,\ 2\pi] $.
vector(3) DP -- three dimensional cartesian position vector (x,y,z). The north pole is (0,0,1). An output vector is normalised to unity.
vertex(3,4) OPTIONAL DP OUT three dimensional cartesian position vectors (x,y,z) (normalised to unity) pointing to the 4 vertices of a given pixel. The four vertices are listed in the order North, West, South, East.

ROUTINES:
call pix2ang_ring(nside, ipring, theta, phi)

    renders theta and phi coordinates of the nominal pixel center given the pixel number ipring and a map resolution parameter nside.  


call pix2vec_ring(nside, ipring, vector [,vertex])

    renders cartesian vector coordinates of the nominal pixel center given the pixel number ipring and a map resolution parameter nside. Optionally renders cartesian vector coordinates of the considered pixel four vertices.  


call ang2pix_ring(nside, theta, phi, ipring)

    renders the pixel number ipring for a pixel which, given the map resolution parameter nside, contains the point on the sphere at angular coordinates theta and phi.  


call vec2pix_ring(nside, vector, ipring)

    renders the pixel number ipring for a pixel which, given the map resolution parameter nside, contains the point on the sphere at cartesian coordinates vector.  


call pix2ang_nest(nside, ipnest, theta, phi)

    renders theta and phi coordinates of the nominal pixel center given the pixel number ipnest and a map resolution parameter nside.  


call pix2vec_nest(nside, ipnest, vector [,vertex])

    renders cartesian vector coordinates of the nominal pixel center given the pixel number ipnest and a map resolution parameter nside. Optionally renders cartesian vector coordinates of the considered pixel four vertices.  


call ang2pix_nest(nside, theta, phi, ipnest)

    renders the pixel number ipnest for a pixel which, given the map resolution parameter nside, contains the point on the sphere at angular coordinates theta and phi.  


call vec2pix_nest(nside, vector, ipnest)

    renders the pixel number ipnest for a pixel which, given the map resolution parameter nside, contains the point on the sphere at cartesian coordinates vector .  


call nest2ring(nside, ipnest, ipring)

    performs conversion from NESTED to RING pixel number.  


call ring2nest(nside, ipring, ipnest)

    performs conversion from RING to NESTED pixel number.  



MODULES & ROUTINES

This section lists the modules and routines used by pix2xxx,ang2xxx,vec2xxx, nest2ring,ring2nest.

mk_pix2xy, mk_xy2pix
routines used in the conversion between pixel values and ``cartesian'' coordinates on the Healpix face.


RELATED ROUTINES

This section lists the routines related to pix2xxx,ang2xxx,vec2xxx, nest2ring,ring2nest

neighbours_nest
find neighbouring pixels.
ang2vec
convert $(\theta,\phi) $ spherical coordinates into (x,y,z) cartesian coordinates.
vec2ang
convert (x,y,z) cartesian coordinates into $(\theta,\phi) $ spherical coordinates.
convert_inplace
in-place conversion between RING and NESTED for integer/real/double maps.
convert_nest2ring
convert from NESTED to RING scheme using a temporary array.
nest2uniq, uniq2nest
conversion of standard pixel index to/from Unique ID number

Version 3.31, 2017-01-06