/[PAMELA software]/DarthVader/OrbitalInfo/src/OrbitalInfoCore.cpp
ViewVC logotype

Diff of /DarthVader/OrbitalInfo/src/OrbitalInfoCore.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.37 by mocchiut, Fri Dec 19 14:00:08 2008 UTC revision 1.38 by mocchiut, Fri Jan 16 15:39:36 2009 UTC
# Line 696  int OrbitalInfoCore(UInt_t run, TFile *f Line 696  int OrbitalInfoCore(UInt_t run, TFile *f
696      //      //
697       //       //
698      for ( re = runinfo->EV_FROM; re < (runinfo->EV_FROM+runinfo->NEVENTS); re++){      for ( re = runinfo->EV_FROM; re < (runinfo->EV_FROM+runinfo->NEVENTS); re++){
       
699        //        //
700        if ( procev%1000 == 0 && procev > 0 && verbose ) printf(" %iK \n",procev/1000);          if ( procev%1000 == 0 && procev > 0 && verbose ) printf(" %iK \n",procev/1000);  
701        if ( debug ) printf(" %i \n",procev);              if ( debug ) printf(" %i \n",procev);      
# Line 807  int OrbitalInfoCore(UInt_t run, TFile *f Line 806  int OrbitalInfoCore(UInt_t run, TFile *f
806            for (Int_t j3 = 0;j3<tmpSize;j3++){            for (Int_t j3 = 0;j3<tmpSize;j3++){
807              if ( debug ) printf(" ik %i j3 %i eh eh eh \n",ik,j3);              if ( debug ) printf(" ik %i j3 %i eh eh eh \n",ik,j3);
808              mcmdrc = (pamela::McmdRecord*)mcmdev->Records->At(j3);              mcmdrc = (pamela::McmdRecord*)mcmdev->Records->At(j3);
809              if ((int)mcmdrc->ID1 == 226){              if ( mcmdrc ){ // missing inclination bug [8RED 090116]
810                L_QQ_Q_l_upper->fill(mcmdrc->McmdData);                if ((int)mcmdrc->ID1 == 226){
811                for (UInt_t ui = 0; ui < 6; ui++){                  L_QQ_Q_l_upper->fill(mcmdrc->McmdData);
812                  if (ui>0){                  for (UInt_t ui = 0; ui < 6; ui++){
813                    if (L_QQ_Q_l_upper->time[ui]>L_QQ_Q_l_upper->time[0]){                    if (ui>0){
814                      if (dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[ui]*1000-DeltaOBT*1000))<atime){                      if (L_QQ_Q_l_upper->time[ui]>L_QQ_Q_l_upper->time[0]){
815                        upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[ui]*1000-DeltaOBT*1000));                        if (dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[ui]*1000-DeltaOBT*1000))<atime){
816                            upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[ui]*1000-DeltaOBT*1000));
817                            orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);
818                            RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[ui][0],L_QQ_Q_l_upper->quat[ui][1],L_QQ_Q_l_upper->quat[ui][2],L_QQ_Q_l_upper->quat[ui][3]);
819                          }else {
820                            lowerqtime = upperqtime;
821                            upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[ui]*1000-DeltaOBT*1000));
822                            orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);
823                            RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[ui][0],L_QQ_Q_l_upper->quat[ui][1],L_QQ_Q_l_upper->quat[ui][2],L_QQ_Q_l_upper->quat[ui][3]);
824                            mcreen = j3;
825                            mctren = ik;
826                            if(fgh==0){
827                              CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);
828                              CopyAng(RYPang_lower,RYPang_upper);
829                            }
830                            oi=ui;
831                            goto closethisloop;
832                          }
833                          fgh++;
834                          CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);
835                          CopyAng(RYPang_lower,RYPang_upper);
836                        }
837                      }else{
838                        if (dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000))<atime){
839                          upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000));
840                        orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);                        orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);
841                        RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[ui][0],L_QQ_Q_l_upper->quat[ui][1],L_QQ_Q_l_upper->quat[ui][2],L_QQ_Q_l_upper->quat[ui][3]);                        RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[0][0],L_QQ_Q_l_upper->quat[0][1],L_QQ_Q_l_upper->quat[0][2],L_QQ_Q_l_upper->quat[0][3]);
842                      }else {                      }
843                        else {
844                        lowerqtime = upperqtime;                        lowerqtime = upperqtime;
845                        upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[ui]*1000-DeltaOBT*1000));                        upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000));
846                        orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);                        orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);
847                        RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[ui][0],L_QQ_Q_l_upper->quat[ui][1],L_QQ_Q_l_upper->quat[ui][2],L_QQ_Q_l_upper->quat[ui][3]);                        RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[0][0],L_QQ_Q_l_upper->quat[0][1],L_QQ_Q_l_upper->quat[0][2],L_QQ_Q_l_upper->quat[0][3]);
848                        mcreen = j3;                        mcreen = j3;
849                        mctren = ik;                        mctren = ik;
850                        if(fgh==0){                        if(fgh==0){
851                          CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);                          CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);
852                          CopyAng(RYPang_lower,RYPang_upper);                          CopyAng(RYPang_lower,RYPang_upper);
853                            lowerqtime = atime-1;
854                        }                        }
855                        oi=ui;                        oi=ui;
856                        goto closethisloop;                        goto closethisloop;
857                          //_0 = true;
858                      }                      }
859                      fgh++;                      fgh++;
860                      CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);                      CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);
861                      CopyAng(RYPang_lower,RYPang_upper);                      CopyAng(RYPang_lower,RYPang_upper);
                   }  
                 }else{  
                   if (dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000))<atime){  
                     upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000));  
                     orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);  
                     RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[0][0],L_QQ_Q_l_upper->quat[0][1],L_QQ_Q_l_upper->quat[0][2],L_QQ_Q_l_upper->quat[0][3]);  
                   }  
                   else {  
                     lowerqtime = upperqtime;  
                     upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000));  
                     orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);  
                     RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[0][0],L_QQ_Q_l_upper->quat[0][1],L_QQ_Q_l_upper->quat[0][2],L_QQ_Q_l_upper->quat[0][3]);  
                     mcreen = j3;  
                     mctren = ik;  
                     if(fgh==0){  
                       CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);  
                       CopyAng(RYPang_lower,RYPang_upper);  
                       lowerqtime = atime-1;  
                     }  
                     oi=ui;  
                     goto closethisloop;  
862                      //_0 = true;                      //_0 = true;
863                    }                    };
864                    fgh++;                    //cin>>grib;
                   CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);  
                   CopyAng(RYPang_lower,RYPang_upper);  
                   //_0 = true;  
865                  };                  };
                 //cin>>grib;  
866                };                };
867              };              };
868            };            };
# Line 902  int OrbitalInfoCore(UInt_t run, TFile *f Line 903  int OrbitalInfoCore(UInt_t run, TFile *f
903              CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);              CopyQ(L_QQ_Q_l_lower,L_QQ_Q_l_upper);
904              CopyAng(RYPang_lower,RYPang_upper);              CopyAng(RYPang_lower,RYPang_upper);
905              mcmdrc = (pamela::McmdRecord*)mcmdev->Records->At(mcreen);              mcmdrc = (pamela::McmdRecord*)mcmdev->Records->At(mcreen);
906              if ((int)mcmdrc->ID1 == 226){              if ( mcmdrc ){ // missing inclination bug [8RED 090116]
907                L_QQ_Q_l_upper->fill(mcmdrc->McmdData);                if ((int)mcmdrc->ID1 == 226){
908                upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000));                  L_QQ_Q_l_upper->fill(mcmdrc->McmdData);
909                if (upperqtime<lowerqtime){                  upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[0]*1000-DeltaOBT*1000));
910                  upperqtime=runinfo->RUNTRAILER_TIME;                  if (upperqtime<lowerqtime){
911                  CopyQ(L_QQ_Q_l_upper,L_QQ_Q_l_lower);                    upperqtime=runinfo->RUNTRAILER_TIME;
912                  CopyAng(RYPang_upper,RYPang_lower);                    CopyQ(L_QQ_Q_l_upper,L_QQ_Q_l_lower);
913                }else{                    CopyAng(RYPang_upper,RYPang_lower);
914                  orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);                  }else{
915                  RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[0][0],L_QQ_Q_l_upper->quat[0][1],L_QQ_Q_l_upper->quat[0][2],L_QQ_Q_l_upper->quat[0][3]);                    orbits.getPosition((double) (upperqtime - gltle->GetFromTime())/60., &eCi);
916                      RYPang_upper->TransAngle(eCi.getPos().m_x,eCi.getPos().m_y,eCi.getPos().m_z,eCi.getVel().m_x,eCi.getVel().m_y,eCi.getVel().m_z,L_QQ_Q_l_upper->quat[0][0],L_QQ_Q_l_upper->quat[0][1],L_QQ_Q_l_upper->quat[0][2],L_QQ_Q_l_upper->quat[0][3]);
917                    }
918                    //            re--;
919                    gh=true;
920                }                }
921                //              re--;              };
               gh=true;  
             }  
922            }else{            }else{
923              if ((Int_t)L_QQ_Q_l_upper->time[oi]>(Int_t)L_QQ_Q_l_upper->time[0]){              if ((Int_t)L_QQ_Q_l_upper->time[oi]>(Int_t)L_QQ_Q_l_upper->time[0]){
924                upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[oi]*1000-DeltaOBT*1000));                upperqtime = dbtime->DBabsTime((UInt_t)(L_QQ_Q_l_upper->time[oi]*1000-DeltaOBT*1000));

Legend:
Removed from v.1.37  
changed lines
  Added in v.1.38

  ViewVC Help
Powered by ViewVC 1.1.23