In [1]:
from __future__ import (division, print_function, absolute_import)

In [2]:
%matplotlib inline
import math
import matplotlib.pyplot as plt 
import numpy as np
import healpy as hp
import pyfits as pf
import astropy as ap
import os

In [3]:
#
# The point of this notebook is to precisely define the vectors by the centers of pixels
# for nside=1, nside=2, and nside=4
#

In [4]:
#
# Nside = 1
#
nside = 1
npix = 12*(nside**2) #total number of pixels, npix
ipix = np.arange(npix) # pixel index
print("The total number of pixels is "+str(npix))
print("Pixel index i : [ x, y, z ]")
x, y, z = hp.pix2vec(nside, ipix)
for i in range(npix):
    print("Pixel %d : [ %f, %f, %f ]" % (i, x[i], y[i], z[i]))


The total number of pixels is 12
Pixel index i : [ x, y, z ]
Pixel 0 : [ 0.527046, 0.527046, 0.666667 ]
Pixel 1 : [ -0.527046, 0.527046, 0.666667 ]
Pixel 2 : [ -0.527046, -0.527046, 0.666667 ]
Pixel 3 : [ 0.527046, -0.527046, 0.666667 ]
Pixel 4 : [ 1.000000, 0.000000, 0.000000 ]
Pixel 5 : [ 0.000000, 1.000000, 0.000000 ]
Pixel 6 : [ -1.000000, 0.000000, 0.000000 ]
Pixel 7 : [ -0.000000, -1.000000, 0.000000 ]
Pixel 8 : [ 0.527046, 0.527046, -0.666667 ]
Pixel 9 : [ -0.527046, 0.527046, -0.666667 ]
Pixel 10 : [ -0.527046, -0.527046, -0.666667 ]
Pixel 11 : [ 0.527046, -0.527046, -0.666667 ]

In [5]:
#
# Nside = 2
#
nside = 2
npix = 12*(nside**2) #total number of pixels, npix
ipix = np.arange(npix) # pixel index
print("The total number of pixels is "+str(npix))
print("Pixel index i : [ x, y, z ]")
x, y, z = hp.pix2vec(nside, ipix)
for i in range(npix):
    print("Pixel %d : [ %f, %f, %f ]" % (i, x[i], y[i], z[i]))


The total number of pixels is 48
Pixel index i : [ x, y, z ]
Pixel 0 : [ 0.282597, 0.282597, 0.916667 ]
Pixel 1 : [ -0.282597, 0.282597, 0.916667 ]
Pixel 2 : [ -0.282597, -0.282597, 0.916667 ]
Pixel 3 : [ 0.282597, -0.282597, 0.916667 ]
Pixel 4 : [ 0.688619, 0.285235, 0.666667 ]
Pixel 5 : [ 0.285235, 0.688619, 0.666667 ]
Pixel 6 : [ -0.285235, 0.688619, 0.666667 ]
Pixel 7 : [ -0.688619, 0.285235, 0.666667 ]
Pixel 8 : [ -0.688619, -0.285235, 0.666667 ]
Pixel 9 : [ -0.285235, -0.688619, 0.666667 ]
Pixel 10 : [ 0.285235, -0.688619, 0.666667 ]
Pixel 11 : [ 0.688619, -0.285235, 0.666667 ]
Pixel 12 : [ 0.942809, 0.000000, 0.333333 ]
Pixel 13 : [ 0.666667, 0.666667, 0.333333 ]
Pixel 14 : [ 0.000000, 0.942809, 0.333333 ]
Pixel 15 : [ -0.666667, 0.666667, 0.333333 ]
Pixel 16 : [ -0.942809, 0.000000, 0.333333 ]
Pixel 17 : [ -0.666667, -0.666667, 0.333333 ]
Pixel 18 : [ -0.000000, -0.942809, 0.333333 ]
Pixel 19 : [ 0.666667, -0.666667, 0.333333 ]
Pixel 20 : [ 0.923880, 0.382683, 0.000000 ]
Pixel 21 : [ 0.382683, 0.923880, 0.000000 ]
Pixel 22 : [ -0.382683, 0.923880, 0.000000 ]
Pixel 23 : [ -0.923880, 0.382683, 0.000000 ]
Pixel 24 : [ -0.923880, -0.382683, 0.000000 ]
Pixel 25 : [ -0.382683, -0.923880, 0.000000 ]
Pixel 26 : [ 0.382683, -0.923880, 0.000000 ]
Pixel 27 : [ 0.923880, -0.382683, 0.000000 ]
Pixel 28 : [ 0.942809, 0.000000, -0.333333 ]
Pixel 29 : [ 0.666667, 0.666667, -0.333333 ]
Pixel 30 : [ 0.000000, 0.942809, -0.333333 ]
Pixel 31 : [ -0.666667, 0.666667, -0.333333 ]
Pixel 32 : [ -0.942809, 0.000000, -0.333333 ]
Pixel 33 : [ -0.666667, -0.666667, -0.333333 ]
Pixel 34 : [ -0.000000, -0.942809, -0.333333 ]
Pixel 35 : [ 0.666667, -0.666667, -0.333333 ]
Pixel 36 : [ 0.688619, 0.285235, -0.666667 ]
Pixel 37 : [ 0.285235, 0.688619, -0.666667 ]
Pixel 38 : [ -0.285235, 0.688619, -0.666667 ]
Pixel 39 : [ -0.688619, 0.285235, -0.666667 ]
Pixel 40 : [ -0.688619, -0.285235, -0.666667 ]
Pixel 41 : [ -0.285235, -0.688619, -0.666667 ]
Pixel 42 : [ 0.285235, -0.688619, -0.666667 ]
Pixel 43 : [ 0.688619, -0.285235, -0.666667 ]
Pixel 44 : [ 0.282597, 0.282597, -0.916667 ]
Pixel 45 : [ -0.282597, 0.282597, -0.916667 ]
Pixel 46 : [ -0.282597, -0.282597, -0.916667 ]
Pixel 47 : [ 0.282597, -0.282597, -0.916667 ]

In [6]:
#
# Nside = 4
#
nside = 4
npix = 12*(nside**2) #total number of pixels, npix
ipix = np.arange(npix) # pixel index
print("The total number of pixels is "+str(npix))
print("Pixel index i : [ x, y, z ]")
x, y, z = hp.pix2vec(nside, ipix)
for i in range(npix):
    print("Pixel %d : [ %f, %f, %f ]" % (i, x[i], y[i], z[i]))


The total number of pixels is 192
Pixel index i : [ x, y, z ]
Pixel 0 : [ 0.143584, 0.143584, 0.979167 ]
Pixel 1 : [ -0.143584, 0.143584, 0.979167 ]
Pixel 2 : [ -0.143584, -0.143584, 0.979167 ]
Pixel 3 : [ 0.143584, -0.143584, 0.979167 ]
Pixel 4 : [ 0.369231, 0.152940, 0.916667 ]
Pixel 5 : [ 0.152940, 0.369231, 0.916667 ]
Pixel 6 : [ -0.152940, 0.369231, 0.916667 ]
Pixel 7 : [ -0.369231, 0.152940, 0.916667 ]
Pixel 8 : [ -0.369231, -0.152940, 0.916667 ]
Pixel 9 : [ -0.152940, -0.369231, 0.916667 ]
Pixel 10 : [ 0.152940, -0.369231, 0.916667 ]
Pixel 11 : [ 0.369231, -0.152940, 0.916667 ]
Pixel 12 : [ 0.563097, 0.150881, 0.812500 ]
Pixel 13 : [ 0.412216, 0.412216, 0.812500 ]
Pixel 14 : [ 0.150881, 0.563097, 0.812500 ]
Pixel 15 : [ -0.150881, 0.563097, 0.812500 ]
Pixel 16 : [ -0.412216, 0.412216, 0.812500 ]
Pixel 17 : [ -0.563097, 0.150881, 0.812500 ]
Pixel 18 : [ -0.563097, -0.150881, 0.812500 ]
Pixel 19 : [ -0.412216, -0.412216, 0.812500 ]
Pixel 20 : [ -0.150881, -0.563097, 0.812500 ]
Pixel 21 : [ 0.150881, -0.563097, 0.812500 ]
Pixel 22 : [ 0.412216, -0.412216, 0.812500 ]
Pixel 23 : [ 0.563097, -0.150881, 0.812500 ]
Pixel 24 : [ 0.731034, 0.145412, 0.666667 ]
Pixel 25 : [ 0.619741, 0.414098, 0.666667 ]
Pixel 26 : [ 0.414098, 0.619741, 0.666667 ]
Pixel 27 : [ 0.145412, 0.731034, 0.666667 ]
Pixel 28 : [ -0.145412, 0.731034, 0.666667 ]
Pixel 29 : [ -0.414098, 0.619741, 0.666667 ]
Pixel 30 : [ -0.619741, 0.414098, 0.666667 ]
Pixel 31 : [ -0.731034, 0.145412, 0.666667 ]
Pixel 32 : [ -0.731034, -0.145412, 0.666667 ]
Pixel 33 : [ -0.619741, -0.414098, 0.666667 ]
Pixel 34 : [ -0.414098, -0.619741, 0.666667 ]
Pixel 35 : [ -0.145412, -0.731034, 0.666667 ]
Pixel 36 : [ 0.145412, -0.731034, 0.666667 ]
Pixel 37 : [ 0.414098, -0.619741, 0.666667 ]
Pixel 38 : [ 0.619741, -0.414098, 0.666667 ]
Pixel 39 : [ 0.731034, -0.145412, 0.666667 ]
Pixel 40 : [ 0.866025, 0.000000, 0.500000 ]
Pixel 41 : [ 0.800103, 0.331414, 0.500000 ]
Pixel 42 : [ 0.612372, 0.612372, 0.500000 ]
Pixel 43 : [ 0.331414, 0.800103, 0.500000 ]
Pixel 44 : [ 0.000000, 0.866025, 0.500000 ]
Pixel 45 : [ -0.331414, 0.800103, 0.500000 ]
Pixel 46 : [ -0.612372, 0.612372, 0.500000 ]
Pixel 47 : [ -0.800103, 0.331414, 0.500000 ]
Pixel 48 : [ -0.866025, 0.000000, 0.500000 ]
Pixel 49 : [ -0.800103, -0.331414, 0.500000 ]
Pixel 50 : [ -0.612372, -0.612372, 0.500000 ]
Pixel 51 : [ -0.331414, -0.800103, 0.500000 ]
Pixel 52 : [ -0.000000, -0.866025, 0.500000 ]
Pixel 53 : [ 0.331414, -0.800103, 0.500000 ]
Pixel 54 : [ 0.612372, -0.612372, 0.500000 ]
Pixel 55 : [ 0.800103, -0.331414, 0.500000 ]
Pixel 56 : [ 0.924693, 0.183933, 0.333333 ]
Pixel 57 : [ 0.783917, 0.523797, 0.333333 ]
Pixel 58 : [ 0.523797, 0.783917, 0.333333 ]
Pixel 59 : [ 0.183933, 0.924693, 0.333333 ]
Pixel 60 : [ -0.183933, 0.924693, 0.333333 ]
Pixel 61 : [ -0.523797, 0.783917, 0.333333 ]
Pixel 62 : [ -0.783917, 0.523797, 0.333333 ]
Pixel 63 : [ -0.924693, 0.183933, 0.333333 ]
Pixel 64 : [ -0.924693, -0.183933, 0.333333 ]
Pixel 65 : [ -0.783917, -0.523797, 0.333333 ]
Pixel 66 : [ -0.523797, -0.783917, 0.333333 ]
Pixel 67 : [ -0.183933, -0.924693, 0.333333 ]
Pixel 68 : [ 0.183933, -0.924693, 0.333333 ]
Pixel 69 : [ 0.523797, -0.783917, 0.333333 ]
Pixel 70 : [ 0.783917, -0.523797, 0.333333 ]
Pixel 71 : [ 0.924693, -0.183933, 0.333333 ]
Pixel 72 : [ 0.986013, 0.000000, 0.166667 ]
Pixel 73 : [ 0.910958, 0.377331, 0.166667 ]
Pixel 74 : [ 0.697217, 0.697217, 0.166667 ]
Pixel 75 : [ 0.377331, 0.910958, 0.166667 ]
Pixel 76 : [ 0.000000, 0.986013, 0.166667 ]
Pixel 77 : [ -0.377331, 0.910958, 0.166667 ]
Pixel 78 : [ -0.697217, 0.697217, 0.166667 ]
Pixel 79 : [ -0.910958, 0.377331, 0.166667 ]
Pixel 80 : [ -0.986013, 0.000000, 0.166667 ]
Pixel 81 : [ -0.910958, -0.377331, 0.166667 ]
Pixel 82 : [ -0.697217, -0.697217, 0.166667 ]
Pixel 83 : [ -0.377331, -0.910958, 0.166667 ]
Pixel 84 : [ -0.000000, -0.986013, 0.166667 ]
Pixel 85 : [ 0.377331, -0.910958, 0.166667 ]
Pixel 86 : [ 0.697217, -0.697217, 0.166667 ]
Pixel 87 : [ 0.910958, -0.377331, 0.166667 ]
Pixel 88 : [ 0.980785, 0.195090, 0.000000 ]
Pixel 89 : [ 0.831470, 0.555570, 0.000000 ]
Pixel 90 : [ 0.555570, 0.831470, 0.000000 ]
Pixel 91 : [ 0.195090, 0.980785, 0.000000 ]
Pixel 92 : [ -0.195090, 0.980785, 0.000000 ]
Pixel 93 : [ -0.555570, 0.831470, 0.000000 ]
Pixel 94 : [ -0.831470, 0.555570, 0.000000 ]
Pixel 95 : [ -0.980785, 0.195090, 0.000000 ]
Pixel 96 : [ -0.980785, -0.195090, 0.000000 ]
Pixel 97 : [ -0.831470, -0.555570, 0.000000 ]
Pixel 98 : [ -0.555570, -0.831470, 0.000000 ]
Pixel 99 : [ -0.195090, -0.980785, 0.000000 ]
Pixel 100 : [ 0.195090, -0.980785, 0.000000 ]
Pixel 101 : [ 0.555570, -0.831470, 0.000000 ]
Pixel 102 : [ 0.831470, -0.555570, 0.000000 ]
Pixel 103 : [ 0.980785, -0.195090, 0.000000 ]
Pixel 104 : [ 0.986013, 0.000000, -0.166667 ]
Pixel 105 : [ 0.910958, 0.377331, -0.166667 ]
Pixel 106 : [ 0.697217, 0.697217, -0.166667 ]
Pixel 107 : [ 0.377331, 0.910958, -0.166667 ]
Pixel 108 : [ 0.000000, 0.986013, -0.166667 ]
Pixel 109 : [ -0.377331, 0.910958, -0.166667 ]
Pixel 110 : [ -0.697217, 0.697217, -0.166667 ]
Pixel 111 : [ -0.910958, 0.377331, -0.166667 ]
Pixel 112 : [ -0.986013, 0.000000, -0.166667 ]
Pixel 113 : [ -0.910958, -0.377331, -0.166667 ]
Pixel 114 : [ -0.697217, -0.697217, -0.166667 ]
Pixel 115 : [ -0.377331, -0.910958, -0.166667 ]
Pixel 116 : [ -0.000000, -0.986013, -0.166667 ]
Pixel 117 : [ 0.377331, -0.910958, -0.166667 ]
Pixel 118 : [ 0.697217, -0.697217, -0.166667 ]
Pixel 119 : [ 0.910958, -0.377331, -0.166667 ]
Pixel 120 : [ 0.924693, 0.183933, -0.333333 ]
Pixel 121 : [ 0.783917, 0.523797, -0.333333 ]
Pixel 122 : [ 0.523797, 0.783917, -0.333333 ]
Pixel 123 : [ 0.183933, 0.924693, -0.333333 ]
Pixel 124 : [ -0.183933, 0.924693, -0.333333 ]
Pixel 125 : [ -0.523797, 0.783917, -0.333333 ]
Pixel 126 : [ -0.783917, 0.523797, -0.333333 ]
Pixel 127 : [ -0.924693, 0.183933, -0.333333 ]
Pixel 128 : [ -0.924693, -0.183933, -0.333333 ]
Pixel 129 : [ -0.783917, -0.523797, -0.333333 ]
Pixel 130 : [ -0.523797, -0.783917, -0.333333 ]
Pixel 131 : [ -0.183933, -0.924693, -0.333333 ]
Pixel 132 : [ 0.183933, -0.924693, -0.333333 ]
Pixel 133 : [ 0.523797, -0.783917, -0.333333 ]
Pixel 134 : [ 0.783917, -0.523797, -0.333333 ]
Pixel 135 : [ 0.924693, -0.183933, -0.333333 ]
Pixel 136 : [ 0.866025, 0.000000, -0.500000 ]
Pixel 137 : [ 0.800103, 0.331414, -0.500000 ]
Pixel 138 : [ 0.612372, 0.612372, -0.500000 ]
Pixel 139 : [ 0.331414, 0.800103, -0.500000 ]
Pixel 140 : [ 0.000000, 0.866025, -0.500000 ]
Pixel 141 : [ -0.331414, 0.800103, -0.500000 ]
Pixel 142 : [ -0.612372, 0.612372, -0.500000 ]
Pixel 143 : [ -0.800103, 0.331414, -0.500000 ]
Pixel 144 : [ -0.866025, 0.000000, -0.500000 ]
Pixel 145 : [ -0.800103, -0.331414, -0.500000 ]
Pixel 146 : [ -0.612372, -0.612372, -0.500000 ]
Pixel 147 : [ -0.331414, -0.800103, -0.500000 ]
Pixel 148 : [ -0.000000, -0.866025, -0.500000 ]
Pixel 149 : [ 0.331414, -0.800103, -0.500000 ]
Pixel 150 : [ 0.612372, -0.612372, -0.500000 ]
Pixel 151 : [ 0.800103, -0.331414, -0.500000 ]
Pixel 152 : [ 0.731034, 0.145412, -0.666667 ]
Pixel 153 : [ 0.619741, 0.414098, -0.666667 ]
Pixel 154 : [ 0.414098, 0.619741, -0.666667 ]
Pixel 155 : [ 0.145412, 0.731034, -0.666667 ]
Pixel 156 : [ -0.145412, 0.731034, -0.666667 ]
Pixel 157 : [ -0.414098, 0.619741, -0.666667 ]
Pixel 158 : [ -0.619741, 0.414098, -0.666667 ]
Pixel 159 : [ -0.731034, 0.145412, -0.666667 ]
Pixel 160 : [ -0.731034, -0.145412, -0.666667 ]
Pixel 161 : [ -0.619741, -0.414098, -0.666667 ]
Pixel 162 : [ -0.414098, -0.619741, -0.666667 ]
Pixel 163 : [ -0.145412, -0.731034, -0.666667 ]
Pixel 164 : [ 0.145412, -0.731034, -0.666667 ]
Pixel 165 : [ 0.414098, -0.619741, -0.666667 ]
Pixel 166 : [ 0.619741, -0.414098, -0.666667 ]
Pixel 167 : [ 0.731034, -0.145412, -0.666667 ]
Pixel 168 : [ 0.563097, 0.150881, -0.812500 ]
Pixel 169 : [ 0.412216, 0.412216, -0.812500 ]
Pixel 170 : [ 0.150881, 0.563097, -0.812500 ]
Pixel 171 : [ -0.150881, 0.563097, -0.812500 ]
Pixel 172 : [ -0.412216, 0.412216, -0.812500 ]
Pixel 173 : [ -0.563097, 0.150881, -0.812500 ]
Pixel 174 : [ -0.563097, -0.150881, -0.812500 ]
Pixel 175 : [ -0.412216, -0.412216, -0.812500 ]
Pixel 176 : [ -0.150881, -0.563097, -0.812500 ]
Pixel 177 : [ 0.150881, -0.563097, -0.812500 ]
Pixel 178 : [ 0.412216, -0.412216, -0.812500 ]
Pixel 179 : [ 0.563097, -0.150881, -0.812500 ]
Pixel 180 : [ 0.369231, 0.152940, -0.916667 ]
Pixel 181 : [ 0.152940, 0.369231, -0.916667 ]
Pixel 182 : [ -0.152940, 0.369231, -0.916667 ]
Pixel 183 : [ -0.369231, 0.152940, -0.916667 ]
Pixel 184 : [ -0.369231, -0.152940, -0.916667 ]
Pixel 185 : [ -0.152940, -0.369231, -0.916667 ]
Pixel 186 : [ 0.152940, -0.369231, -0.916667 ]
Pixel 187 : [ 0.369231, -0.152940, -0.916667 ]
Pixel 188 : [ 0.143584, 0.143584, -0.979167 ]
Pixel 189 : [ -0.143584, 0.143584, -0.979167 ]
Pixel 190 : [ -0.143584, -0.143584, -0.979167 ]
Pixel 191 : [ 0.143584, -0.143584, -0.979167 ]

In [ ]:


In [ ]:


In [ ]:


In [ ]: