Ignore:
Timestamp:
Oct 3, 2000, 10:19:18 AM (25 years ago)
Author:
ansari
Message:

doc dans les .cc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/SkyMap/spherehealpix.h

    r1196 r1217  
    1616// ***************** CLASSE SphereHEALPix *****************************
    1717
    18 //!  class SphereHEALPix
    19 /*!
    20    Pixelisation Gorski 
    21 
    22 
    23     -----------------------------------------------------------------------
    24      version 0.8.2  Aug97 TAC  Eric Hivon, Kris Gorski
    25     -----------------------------------------------------------------------
    26 
    27     the sphere is split in 12 diamond-faces containing nside**2 pixels each
    28 
    29     the numbering of the pixels (in the nested scheme) is similar to
    30     quad-cube
    31     In each face the first pixel is in the lowest corner of the diamond
    32 
    33     the faces are                    (x,y) coordinate on each face
    34 \verbatim
    35         .   .   .   .   <--- North Pole
    36        / \ / \ / \ / \                          ^        ^     
    37       . 0 . 1 . 2 . 3 . <--- z = 2/3             \      /
    38        \ / \ / \ / \ /                        y   \    /  x 
    39       4 . 5 . 6 . 7 . 4 <--- equator               \  /     
    40        / \ / \ / \ / \                              \/     
    41       . 8 . 9 .10 .11 . <--- z = -2/3              (0,0) : lowest corner
    42        \ / \ / \ / \ /     
    43         .   .   .   .   <--- South Pole
    44 \endverbatim
    45     phi:0               2Pi                                 
    46 
    47    in the ring scheme pixels are numbered along the parallels
    48    the first parallel is the one closest to the north pole and so on 
    49    on each parallel, pixels are numbered starting from the one closest
    50     to phi = 0
    51 
    52     nside MUST be a power of 2 (<= 8192)
    53 
    54 */
     18  /*! Class SphereHEALPix */
    5519
    5620
     
    8145
    8246SphereHEALPix();
    83 /*!   
    84   m is the "nside" of the Gorski algorithm
    85 
    86   The total number of pixels will be Npix =  12*nside**2
    87 
    88   nside MUST be a power of 2 (<= 8192)
    89 */
    9047SphereHEALPix(int_4 m);
    9148SphereHEALPix(const SphereHEALPix<T>& s, bool share);
    9249SphereHEALPix(const SphereHEALPix<T>& s);
    93 //!     Destructor
    9450virtual ~SphereHEALPix();
    9551
    96   // Temporaire?
    9752inline virtual bool   IsTemp(void) const {
    9853
     
    10156    return pixels_.IsTemp();
    10257}
    103 /*! Setting blockdata to temporary (see ndatablock documentation) */
     58
    10459inline virtual void SetTemp(bool temp=false) const
    10560  {
     
    11065// ------------------ Definition of PixelMap abstract methods
    11166
    112 /* Nombre de pixels du decoupage */
    113 /*!    Return number of  pixels of the  splitting */
    11467virtual int_4 NbPixels() const;
    11568
    116 /* Valeur du contenu du pixel d'indice "RING" k  */
    117 /*!    Return value of  pixel with "RING" index k */
    11869virtual T& PixVal(int_4 k);
    11970virtual T const& PixVal(int_4 k) const;
    12071
    121 /* Nombre de tranches en theta */
    122 /*!    Return number of slices in theta direction on the  sphere */
    12372uint_4 NbThetaSlices() const;
    124 /*!   For a theta-slice with index 'index', return :
    125 
    126    the corresponding "theta"
    127 
    128     a vector containing the phi's of the pixels of the slice
    129 
    130     a vector containing the corresponding values of pixels
    131 */
    13273virtual void GetThetaSlice(int_4 index,r_8& theta,TVector<r_8>& phi,TVector<T>& value) const;
    133 /*!   For a theta-slice with index 'index', return :
    134 
    135    the corresponding "theta"
    136 
    137    the corresponding "phi" for first pixel of the slice
    138 
    139     a vector containing indices of the pixels of the slice
    140 
    141    (equally distributed in phi)
    142 
    143     a vector containing the corresponding values of pixels
    144 */
    14574virtual void GetThetaSlice(int_4 sliceIndex,r_8& theta, r_8& phi0, TVector<int_4>& pixelIndices,TVector<T>& value) const ;
    14675
    147 /* Return true if teta,phi in map  */
    14876virtual bool ContainsSph(double theta, double phi) const;
    149 /* Indice "RING" du pixel vers lequel pointe une direction definie par
    150 ses  coordonnees spheriques */                                   
    151 /*!  Return "RING" index of the pixel corresponding to direction (theta, phi).
    152  */
    15377virtual int_4 PixIndexSph(double theta,double phi) const;
    15478
    155 /* Coordonnees spheriques du milieu du pixel d'indice "RING" k   */
    15679virtual void PixThetaPhi(int_4 k,double& theta,double& phi) const;
    15780
    158 /*! Set all pixels to value v */
    15981virtual T SetPixels(T v);
    16082
    161 /* Pixel Solid angle  (steradians) */
    162 /*!    Pixel Solid angle  (steradians)
     83/*! Pixel Solid angle  (steradians)
    16384
    16485    All the pixels have the same solid angle. The dummy argument is
     
    16687   fulfil this requirement.
    16788*/
    168 virtual double PixSolAngle(int_4 dummy=0) const;
     89inline virtual double PixSolAngle(int_4 dummy=0) const {return omeg_;}
    16990
    17091/*  Acces to the DataBlock  */
     
    17495// --------------- Specific methods
    17596
    176 /*!   
    177   m is the "nside" of the Gorski algorithm
    178 
    179   The total number of pixels will be Npix =  12*nside**2
    180 
    181   nside MUST be a power of 2 (<= 8192)
    182 */
    18397virtual void Resize(int_4 m);
    18498
    185 // pour l'instant le tableau est ordonne selon RING, uniquement
     99/*!
     100
     101\return type of storage of the map : RING or NESTED
     102
     103at the moment, always RING
     104*/
    186105inline virtual char* TypeOfMap() const {return "RING";};
    187106
    188107
    189 /* Valeur du contenu du pixel d'indice "NEST" k */
    190 /*!    Return value of  pixel with "NESTED" index k */
    191108virtual T& PixValNest(int_4 k);
    192 /*!    Return value of  pixel with "NESTED" index k */
    193109virtual T const& PixValNest(int_4 k) const;
    194110
    195 /* Indice "NEST" du pixel vers lequel pointe une direction definie par
    196 ses  coordonnees spheriques */                                   
    197 /*! Return "NESTED" index of the pixel corresponding to direction (theta, phi).
    198  */
    199111virtual int_4 PixIndexSphNest(double theta,double phi) const;
    200112
    201 /* Coordonnees spheriques du milieu du pixel d'indice "NEST" k       */
    202 /*!   Return (theta,phi) coordinates of middle of  pixel with "NESTED" index k
    203  */
    204113virtual void PixThetaPhiNest(int_4 k,double& theta,double& phi) const;
    205114
    206 /* algorithme de pixelisation */
    207115void Pixelize(int_4);
    208116
    209 /* convertit index nested en ring  */
    210 /*!    translation from NESTED index  into RING index */
    211117int_4 NestToRing(int_4) const;
    212118
    213 /* convertit index ring en nested" */
    214 /*!    translation from  RING index  into NESTED index */
    215119int_4 RingToNest(int_4) const;
    216120
    217121
    218 /* retourne la valeur du parametre Gorski */
     122/*! \return value of healpix nside */
    219123inline virtual int_4 SizeIndex() const {return(nSide_);}
    220124
    221 /* impression */
    222125void print(ostream& os) const;
    223126
     
    256159
    257160NDataBlock<T> pixels_;
    258 NDataBlock<int_4> sliceBeginIndex_;             // Rationalisation Mac.         D.Y.
     161NDataBlock<int_4> sliceBeginIndex_;         // Rationalisation Mac. D.Y.
    259162NDataBlock<int_4> sliceLenght_;
    260163
Note: See TracChangeset for help on using the changeset viewer.