Changeset 1498 in Sophya for trunk/ArchTOIPipe/ProcWSophya


Ignore:
Timestamp:
May 17, 2001, 5:43:42 PM (24 years ago)
Author:
ansari
Message:

Commit de la modif toi2map.cc .h par Cecile - Reza 17/5/2001

Location:
trunk/ArchTOIPipe/ProcWSophya
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/ArchTOIPipe/ProcWSophya/toi2map.cc

    r1466 r1498  
    88////////////////////////////////////////////////////////////////////////
    99TOI2Map::TOI2Map(SphereHEALPix<r_8>* sph,SphereHEALPix<r_8>* wsph)
    10   : mSph(sph), mWSph(wsph), mWSphInternal(false), mTypCoor(false), mActualYear(2001.)
     10  : mSph(sph), mWSph(wsph), mWSphInternal(false), mTypCoor(false), fTypCoor(false), mActualYear(2001.)
    1111{
    1212 if(mSph->NbPixels()<1) {
     
    4242void TOI2Map::init() {
    4343  cout << "TOI2Map::init" << endl;
    44   declareInput("AlphaIn");     // input index 0
    45   declareInput("DeltaIn");     // input index 1
     44  declareInput("Coord1In");     // input index 0
     45  declareInput("Coord2In");     // input index 1
    4646  declareInput("BoloIn");      // input index 2
    4747}
     
    5858}
    5959if(!checkInputTOIIndex(0) || !checkInputTOIIndex(1) || !checkInputTOIIndex(2)) {
    60   cout<<"TOI2Map::run() - Input TOI (AlphaIn or DeltaIn or BoloIn) not connected! "<<endl;
    61   throw ParmError("TOI2Map::run() Output TOI (AlphaIn or DeltaIn or BoloIn) not connected!");
     60  cout<<"TOI2Map::run() - Input TOI (Coord1In or Coord2In or BoloIn) not connected! "<<endl;
     61  throw ParmError("TOI2Map::run() Output TOI (Coord1In or Coord2In or BoloIn) not connected!");
    6262}
    6363
     
    7575  double bolo;
    7676
    77   double alpha = getData(0,s); // alpha entre [0,24[ en heures
    78   double delta = getData(1,s); // delta entre [-90,90] en degres
     77  double coord1 = getData(0,s); // gLat ou delta entre [-90,90] en degres
     78  double coord2 = getData(1,s); // gLon entre [0,360[ en degres ou alpha entre [0,24[ en heures
    7979  getData(2,s,bolo,fgbolo);
    8080
    81   if(delta<-90. || delta>90.)  fgbolo=1;
    82   if(alpha<0.   || alpha>=24.) fgbolo=1;
     81  if(coord2<-90. || coord2>90.) fgbolo=1;
     82  if((coord1<0.) || (!mTypCoor && coord1>=24.) || (mTypCoor && coord1>=360.) ) {fgbolo=1;
     83  cout << "!!!!!!!!" <<coord1 << endl;
     84  }
     85 
     86 
     87 
    8388  if(bolo<-32767.) fgbolo=1;   // Bidouille Archeops
    84 
     89 
    8590  if(!fgbolo) {
     91    // sphere phi entre [0,2*Pi] en radians
    8692    // sphere phi entre [0,2*Pi] en radians
    8793    // sphere theta entre [0,Pi] en radians
    8894    double phi,theta;
    89     if(mTypCoor) {
     95    if(fTypCoor && !mTypCoor) { //on a alpha,delta et on veut l,b
    9096      double mjd = MJDfrYear(mActualYear);
    91       EqtoGal(mjd,alpha,delta,&alpha,&delta);
    92       phi   = alpha * M_PI/180.;
    93     } else phi = alpha * M_PI/12.;
    94     theta = (90.-delta)*M_PI/180.;
     97      EqtoGal(mjd,coord1,coord2,&coord1,&coord2);
     98    }
     99
     100    if(!fTypCoor && mTypCoor) { //on a l,b et on veut alpha,delta
     101      double mjd = MJDfrYear(mActualYear);
     102      GaltoEq(mjd,coord1,coord2,&coord1,&coord2);
     103    }
     104   
     105    if(fTypCoor) phi = coord1 * M_PI/180.;
     106    else  phi = coord1 * M_PI/12.;
     107
     108    theta = (90.-coord2)*M_PI/180.;
     109
    95110    int_4 ipix = mSph->PixIndexSph(theta,phi);
    96     (*mSph)(ipix) += bolo;
     111    (*mSph)(ipix) += bolo;   
    97112    ((*mWSph)(ipix))++;
    98113    mNSnFill++;
  • trunk/ArchTOIPipe/ProcWSophya/toi2map.h

    r1463 r1498  
    1515//                         |
    1616//                    -----------
    17 //   toi AlphaIn ---> |         |
    18 //   toi DeltaIn ---> | TOI2Map |
     17//   toi Coord1In ---> |         |
     18//   toi Coord2In ---> | TOI2Map |
    1919//   toi BoloIn  ---> |         |
    2020//                    -----------
     
    2727  virtual void  init(void); 
    2828  virtual void  run(void);
    29   inline  void  SetCoorGal(bool fg=false,double actualyear=2000.)
    30                           {mTypCoor = fg; mActualYear = actualyear;}
     29  inline  void  SetCoorGal(bool mfg=false,bool ffg=false,double actualyear=2000.)
     30                          {mTypCoor = mfg; fTypCoor = ffg; mActualYear = actualyear;}
    3131 
    3232protected:
     
    3535  bool mWSphInternal;
    3636  bool mTypCoor;
     37  bool fTypCoor;
    3738  double mActualYear;
    3839};
Note: See TracChangeset for help on using the changeset viewer.